Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Haga lo que hicimos en el aula: registro de pacientes

package med.voll.api.controller;

import jakarta.validation.Valid;
import med.voll.api.dto.PacienteDTO;
import med.voll.api.model.Paciente;
import med.voll.api.repository.PacienteRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/pacientes")
public class PacienteController {

    @Autowired
    PacienteRepository pacienteRepository;

    @PostMapping()
    public void registrarPaciente(@RequestBody @Valid PacienteDTO datosPaciente) {
        pacienteRepository.save(new Paciente(datosPaciente));
    }

}
package med.voll.api.dto;

import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;

public record PacienteDTO(
        @NotBlank
        String nombre,
        @NotBlank
        @Email
        String email,
        @NotBlank
        String telefono,
        @NotBlank
        String documento,
        @NotBlank
        String calle,
        @NotBlank
        String numero,
        @NotBlank
        String comuna,
        @NotBlank
        String ciudad) {
}
package med.voll.api.model;

import jakarta.persistence.*;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import med.voll.api.dto.PacienteDTO;


@Entity(name = "Paciente")
@Table(name = "pacientes")
@Getter
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(of = "id")
public class Paciente {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String nombre;
    private String email;
    private String telefono;
    private String documento;
    private String calle;
    private String numero;
    private String comuna;
    private String ciudad;

    public Paciente(PacienteDTO pacienteDTO) {
        this.nombre = pacienteDTO.nombre();
        this.email = pacienteDTO.email();
        this.telefono = pacienteDTO.telefono();
        this.documento = pacienteDTO.documento();
        this.calle = pacienteDTO.calle();
        this.numero = pacienteDTO.numero();
        this.comuna = pacienteDTO.comuna();
        this.ciudad = pacienteDTO.ciudad();
    }
}
package med.voll.api.repository;

import med.voll.api.model.Paciente;
import org.springframework.data.jpa.repository.JpaRepository;

public interface PacienteRepository extends JpaRepository<Paciente, Long> {
}
1 respuesta

Hola Roberto! ¿Cómo estás?

Gracias por compartir tu código con nosotros. Sigue así y no dudes en volver al foro si tienes alguna pregunta o dificultad.

¡Gracias nuevamente! Saludos,

Por favor, no olvides marcar este post como solucionado. ¡Es de gran ayuda para la comunidad! ✓ Sigue adelante con tus estudios.