israel7souza
Só vi a resposta agora, já tinha feito funcionar aqui, quando abri o docker-compose eu vi que tinha errado nisso.
Já customizei o app do painel e estou terminando de customizar o app de triagem, mas empaquei na modificação do payload da triagem. Aproveitei que já haviam os campos para envio do nome e documento e consegui fazer o post, mas a resposta vem com erro:
Return value of Novosga\Entity\Cliente::getEndereco() must be an instance of Novosga\Entity\Endereco, null returned
Adicionei um campo de endereço na request (mas não dá pra ficar colocando endereço no autoatendimento), e já tentei enviar de tudo: array vazio, string vazia, objeto vazio, null, mas neste caso ele retorna:
You must define a type for Novosga\Entity\Cliente::$endereco.
Verifiquei no código do novoSGA e em Cliente.orm.yml a entidade Endereço está integrada à Entidade Cliente sem definição de tipo e também não diz se pode ser null:
embedded:
endereco:
class: Novosga\Entity\Endereco
columnPrefix: end_
No arquivo Endereco.orm.yml o tipo é definível como "integrável" e os campos podem ser nulos.
Novosga\Entity\Endereco:
type: embeddable
fields:
pais:
type: string
length: 2
nullable: true
cep:
type: string
length: 25
nullable: true
estado:
type: string
length: 3
nullable: true
cidade:
type: string
length: 30
nullable: true
logradouro:
type: string
length: 60
nullable: true
numero:
type: string
length: 10
nullable: true
complemento:
type: string
length: 15
nullable: true
A questão é: se a API permite a emissão de senhas sem os dados do cliente, por qual motivo ao adicionar o cliente é exigido a inserção de dados do endereço? (que aliás eu não vi em lugar algum do sistema em si)
Enfim, já que estou com esta demanda aqui no meu órgão, estou disposto a colaborar com o desenvolvimento do sistema na medida do possível, porém não tenho tanto conhecimento das regras de negócio como você, por isso busquei ajuda aqui. 😄