Por mais que eu mande o endereço alterado no body do put, o endereço não altera. Não recebo erro na requisição. Conseguem ver algo errado?
MedicoController
@PutMapping
@Transactional
public void atualizar(@RequestBody @Valid DadosUpdateMedico dados){
var medico = repository.getReferenceById(dados.id());
medico.atualizarCadastro(dados);
}
public record DadosUpdateMedico(
@NotNull
Long id,
String nome,
String telefone,
DadosEndereco endereco) {
}
Método atualizar cadastro na entidade Médico
public void atualizarCadastro(DadosUpdateMedico dados) {
if (dados.nome() != null){
this.nome = dados.nome();
}
if (dados.telefone() != null){
this.telefone = dados.telefone();
}
if (dados.endereco() != null){
this.endereco.atualizarEndereco(dados.endereco());
}
}
Método atualizar endereço na classe Endereço
public void atualizarEndereco(DadosEndereco dados) {
if(dados.logradouro() != null){
this.logradouro = dados.logradouro();
}
if(dados.bairro() != null){
this.bairro = dados.bairro();
}
if(dados.cep() != null){
this.cep = dados.cep();
}
if(dados.cidade() != null){
this.cidade = dados.cidade();
}
if(dados.uf() != null){
this.uf = dados.uf();
}
if(dados.complemento() != null){
this.complemento = dados.complemento();
}
if(dados.numero() != null){
this.numero = dados.numero();
}
}