From 7ecee13b94a15c6e1021e0c8dc096e3f39789b86 Mon Sep 17 00:00:00 2001 From: David Date: Sat, 11 May 2024 18:41:20 -0600 Subject: [PATCH] Paciente con Daos --- .../src/main/java/mx/uv/DaoPaciente.java | 118 ++++++++++++++++++ .../src/main/java/mx/uv/IDaoPaciente.java | 12 ++ .../src/main/java/mx/uv/Paciente.java | 55 ++++++++ 3 files changed, 185 insertions(+) create mode 100644 healthmanager_back/src/main/java/mx/uv/DaoPaciente.java create mode 100644 healthmanager_back/src/main/java/mx/uv/IDaoPaciente.java diff --git a/healthmanager_back/src/main/java/mx/uv/DaoPaciente.java b/healthmanager_back/src/main/java/mx/uv/DaoPaciente.java new file mode 100644 index 0000000..2b18706 --- /dev/null +++ b/healthmanager_back/src/main/java/mx/uv/DaoPaciente.java @@ -0,0 +1,118 @@ +package mx.uv; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.ArrayList; +import java.util.List; + +public class DaoPaciente implements IDaoPaciente{ + + private final Conexion con = new Conexion(); + private Connection connection; + private PreparedStatement ps; + private ResultSet rs; + private Statement st; + + public DaoPaciente(){ + //con=new Conexion(); + } + + @Override + public void add(Paciente paciente) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "INSERT INTO Paciente(nombre, edad, peso, contacto,fk_idUsuario) VALUES(?,?,?,?,?)"; + ps = connection.prepareStatement(consulta); + ps.setString(1, paciente.getNombre()); + ps.setInt(2, paciente.getEdad()); + ps.setFloat(3, paciente.getPeso()); + ps.setString(4, paciente.getContacto()); + ps.setInt(5, paciente.getIdUsuario()); + ps.execute(); + connection.close(); + } + + @Override + public void update(int id, Paciente paciente) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "Update Paciente " + + "set nombre = ?, edad = ?, peso = ?, contacto = ?, fk_idUsuario = ? " + + "where idPac = ? ;"; + ps = connection.prepareStatement(consulta); + ps.setString(1, paciente.getNombre()); + ps.setInt(2, paciente.getEdad()); + ps.setFloat(3, paciente.getPeso()); + ps.setString(4, paciente.getContacto()); + ps.setInt(5, paciente.getIdUsuario()); + ps.setInt(6, id); + ps.execute(); + ps = connection.prepareStatement(consulta); + } + + @Override + public void delete(int id) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "Delete FROM Paciente where idPac = ?;"; + ps = connection.prepareStatement(consulta); + ps.setInt(1, id); + ps.execute(); + connection.close(); + } + + @Override + public List getData() throws SQLException { + List pacientes = new ArrayList<>(); + + String consulta = "SELECT * FROM Paciente"; + connection = con.obtenerConexion(); + st = connection.createStatement(); + rs = st.executeQuery(consulta); + + while(rs.next()){ + Paciente aux = new Paciente(); + + int id = rs.getInt("idPac"); + String nombre = rs.getString("nombre"); + int edad = rs.getInt("edad"); + double peso = rs.getDouble("peso"); + String contacto = rs.getString("contacto"); + + //Verificación de obtención de datos + System.out.println(id + " " + nombre + " " + edad + " " + peso + " " + contacto); + + pacientes.add(aux); + } + connection.close(); + return pacientes; + } + + @Override + public List getDataWhere(String condicion) throws SQLException { + List pacientes = new ArrayList<>(); + + String consulta = "SELECT * FROM Paciente WHERE " + condicion; + connection = con.obtenerConexion(); + st = connection.createStatement(); + rs = st.executeQuery(consulta); + + while(rs.next()){ + Paciente aux = new Paciente(); + + int id = rs.getInt("idPac"); + String nombre = rs.getString("nombre"); + int edad = rs.getInt("edad"); + double peso = rs.getDouble("peso"); + String contacto = rs.getString("contacto"); + + //Verificación de obtención de datos + System.out.println(id + " " + nombre + " " + edad + " " + peso + " " + contacto); + + pacientes.add(aux); + } + connection.close(); + return pacientes; + } + +} diff --git a/healthmanager_back/src/main/java/mx/uv/IDaoPaciente.java b/healthmanager_back/src/main/java/mx/uv/IDaoPaciente.java new file mode 100644 index 0000000..5b49680 --- /dev/null +++ b/healthmanager_back/src/main/java/mx/uv/IDaoPaciente.java @@ -0,0 +1,12 @@ +package mx.uv; + +import java.sql.SQLException; +import java.util.List; + +public interface IDaoPaciente { + public void add(Paciente paciente) throws SQLException; + public void update(int id, Paciente paciente) throws SQLException; + public void delete(int id) throws SQLException; + public List getData() throws SQLException; + public List getDataWhere(String condicion) throws SQLException; +} \ No newline at end of file diff --git a/healthmanager_back/src/main/java/mx/uv/Paciente.java b/healthmanager_back/src/main/java/mx/uv/Paciente.java index e1deb54..4158724 100644 --- a/healthmanager_back/src/main/java/mx/uv/Paciente.java +++ b/healthmanager_back/src/main/java/mx/uv/Paciente.java @@ -9,11 +9,54 @@ public class Paciente { private float peso; private String contacto; private Blob fotoPac; + private int idUsuario; public Paciente(){ } + public Paciente(String nombre, int edad, float peso, String contacto, int idUsuario) { + this.nombre = nombre; + this.edad = edad; + this.peso = peso; + this.contacto = contacto; + this.idUsuario = idUsuario; + } + + + + public Paciente(String nombre, int edad, float peso, String contacto, Blob fotoPac, int idUsuario) { + this.nombre = nombre; + this.edad = edad; + this.peso = peso; + this.contacto = contacto; + this.fotoPac = fotoPac; + this.idUsuario = idUsuario; + } + + public Paciente(int idPac, String nombre, int edad, float peso, String contacto, int idUsuario) { + this.idPac = idPac; + this.nombre = nombre; + this.edad = edad; + this.peso = peso; + this.contacto = contacto; + this.idUsuario = idUsuario; + } + + + + public Paciente(int idPac, String nombre, int edad, float peso, String contacto, Blob fotoPac, int idUsuario) { + this.idPac = idPac; + this.nombre = nombre; + this.edad = edad; + this.peso = peso; + this.contacto = contacto; + this.fotoPac = fotoPac; + this.idUsuario = idUsuario; + } + + + public Paciente(int idPac, String nombre, int edad, float peso, String contacto) { this.idPac = idPac; this.nombre = nombre; @@ -98,5 +141,17 @@ public class Paciente { this.fotoPac = fotoPac; } + + + public int getIdUsuario() { + return idUsuario; + } + + + + public void setIdUsuario(int idUsuario) { + this.idUsuario = idUsuario; + } + }