Oi Jonathan!
Basta declarar mais um atributo e preenchê-lo:
public record DadosListagemMedico(Long id, String nome, String email, String crm, Especialidade especialidade, DadosEndereco endereco) {
public DadosListagemMedico (Medico medico){
this(medico.getId(), medico.getNome(), medico.getEmail(), medico.getCrm(), medico.getEspecialidade(), new DadosEndereco(medico.getEndereco()));
}
}
public record DadosEndereco(
@NotBlank
String logradouro,
@NotBlank
String bairro,
@NotBlank
@Pattern(regexp = "\\d{8}")
String cep,
@NotBlank
String cidade,
@NotBlank
String uf,
String complemento,
String numero) {
public DadosEndereco(Endereco endereco) {
this(endereco.getLogradouro(), endereco.getBairro(), endereco.getCep(), endereco.getCidade(), endereco.getUf(), endereco.getComplemento(), endereco.getNumero());
}
}