package med.voll.api.domain.direccion;
import jakarta.persistence.Embeddable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
@Embeddable
@Getter
@NoArgsConstructor
@AllArgsConstructor
public class Direccion {
private String calle;
private String distrito;
private String ciudad;
//private String provincia;
//private String codigoPostal;
//private String urbanizacion;
private String numero;
private String complemento;
public Direccion(DatosDireccion direccion) {
this.calle = direccion.calle();
this.distrito = direccion.distrito();
this.ciudad = direccion.ciudad();
this.numero = direccion.numero();
this.complemento = direccion.complemento();
}
public Direccion actualizarDatos(DatosDireccion direccion) {
this.calle = direccion.calle();
this.distrito = direccion.distrito();
this.ciudad = direccion.ciudad();
this.numero = direccion.numero();
this.complemento = direccion.complemento();
return this;
}
public void atualizarInformacion(DatosActualizacionDireccion direccion) {}
}
package med.voll.api.domain.direccion;
import jakarta.validation.constraints.NotBlank;
public record DatosDireccion(
@NotBlank String calle,
@NotBlank String distrito,
@NotBlank String ciudad,
@NotBlank String numero,
@NotBlank String complemento
) {
}
package med.voll.api.domain.direccion;
import jakarta.validation.constraints.NotBlank;
public record DatosActualizacionDireccion(
@NotBlank String calle,
@NotBlank String distrito,
@NotBlank String ciudad,
@NotBlank String numero,
@NotBlank String complemento
) {
}
JSON MEDICO (Registrar)
{
"nombre": "Carlos Becerra",
"email": "c.becerra@voll.med",
"documento": "105498",
"telefono": "67668900",
"especialidad": "ORTOPEDIA",
"direccion": {
"calle": "calle 10",
"distrito": "distrito 3",
"ciudad": "Chone",
"numero": "50",
"complemento": "K"
}
}
JSON PACIENTE (Registrar)
{
"nombre": "Anna Perez",
"email": "a.perez@mail.com",
"documentoIdentidad": "123.456.789-01",
"telefono": "66655512",
"direccion": {
"calle": "las flores",
"urbanización": "Mi Querencia",
"distrito": "centro",
"codigoPostal": "2054",
"ciudad": "Carora",
"numero": "30",
"provincia": "Lara",
"complemento": "A"
}
}
La duda me salta es que el profesor no explica la parte de paciente pero deja planteado como hacerlo y en los video posteriores veo que solo tiene 1 clase de Dirección así que asumi que incluyo todos los campos de ambas entidades en esa clase Dirección