From e541274e8a1b20fcc3dc77964b11f4e2ee6aeef7 Mon Sep 17 00:00:00 2001 From: David Date: Tue, 7 May 2024 19:02:25 -0600 Subject: [PATCH] Usuario Dao --- .../src/main/java/mx/uv/DaoUsuario.java | 107 ++++++++++++++++++ .../src/main/java/mx/uv/IDaoUsuario.java | 12 ++ .../src/main/java/mx/uv/Usuario.java | 2 +- 3 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 healthmanager_back/src/main/java/mx/uv/DaoUsuario.java create mode 100644 healthmanager_back/src/main/java/mx/uv/IDaoUsuario.java diff --git a/healthmanager_back/src/main/java/mx/uv/DaoUsuario.java b/healthmanager_back/src/main/java/mx/uv/DaoUsuario.java new file mode 100644 index 0000000..1f5cee2 --- /dev/null +++ b/healthmanager_back/src/main/java/mx/uv/DaoUsuario.java @@ -0,0 +1,107 @@ +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 DaoUsuario implements IDaoUsuario{ + private final Conexion con = new Conexion(); + private Connection connection; + private PreparedStatement ps; + private ResultSet rs; + private Statement st; + + @Override + public void add(Usuario usuario) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "INSERT INTO Usuario(correo, contrasena, esMedico) VALUES(?,?,?)"; + ps = connection.prepareStatement(consulta); + ps.setString(1, usuario.getCorreo()); + ps.setString(2, usuario.getContraseña()); + ps.setBoolean(3, usuario.esMedico()); + ps.execute(); + connection.close(); + } + + @Override + public void update(int id, Usuario usuarioNu) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "Update Usuario " + + "set correo = ?, contrasena = ?, esMedico = ? " + + "where idUsuario = ? ;"; + ps = connection.prepareStatement(consulta); + ps.setString(1, usuarioNu.getCorreo()); + ps.setString(2, usuarioNu.getContraseña()); + ps.setBoolean(3, usuarioNu.esMedico()); + ps.setInt(4, id); + ps.execute(); + connection.close(); + } + + @Override + public void delete(int id) throws SQLException { + connection = con.obtenerConexion(); + String consulta = "Delete FROM Usuario where idUsuario = ?;"; + ps = connection.prepareStatement(consulta); + ps.setInt(1, id); + ps.execute(); + connection.close(); + } + + @Override + public List getData() throws SQLException { + List usuarios = new ArrayList<>(); + + String consulta = "SELECT * FROM Usuario"; + connection = con.obtenerConexion(); + st = connection.createStatement(); + rs = st.executeQuery(consulta); + + while(rs.next()){ + + //Usuario (idUsuario, correo, contraseña, esMedico) + int id = rs.getInt("idUsuario"); + String correo = rs.getString("correo"); + String contraseña = rs.getString("contrasena"); + Boolean esMedico = rs.getBoolean("esMedico"); + + //Verificación de obtención de datos + System.out.println(id + " " + correo + " " + contraseña + " " + esMedico); + + usuarios.add(new Usuario(id, correo, contraseña, esMedico)); + } + connection.close(); + return usuarios; + } + + @Override + public List getDataWhere(String condicion) throws SQLException { + List usuarios = new ArrayList<>(); + + String consulta = "SELECT * FROM Usuario WHERE " + condicion; + connection = con.obtenerConexion(); + st = connection.createStatement(); + rs = st.executeQuery(consulta); + + while(rs.next()){ + + //Usuario (idUsuario, correo, contraseña, esMedico) + int id = rs.getInt("idUsuario"); + String correo = rs.getString("correo"); + String contraseña = rs.getString("contrasena"); + Boolean esMedico = rs.getBoolean("esMedico"); + + //Verificación de obtención de datos + System.out.println(id + " " + correo + " " + contraseña + " " + esMedico); + + usuarios.add(new Usuario(id, correo, contraseña, esMedico)); + } + connection.close(); + return usuarios; + } + +} diff --git a/healthmanager_back/src/main/java/mx/uv/IDaoUsuario.java b/healthmanager_back/src/main/java/mx/uv/IDaoUsuario.java new file mode 100644 index 0000000..8be34a4 --- /dev/null +++ b/healthmanager_back/src/main/java/mx/uv/IDaoUsuario.java @@ -0,0 +1,12 @@ +package mx.uv; + +import java.sql.SQLException; +import java.util.List; + +public interface IDaoUsuario { + public void add(Usuario usuario) throws SQLException; + public void update(int id, Usuario usuarioNu) throws SQLException; + public void delete(int id) throws SQLException; + public List getData() throws SQLException; + public List getDataWhere(String condicion) throws SQLException; +} diff --git a/healthmanager_back/src/main/java/mx/uv/Usuario.java b/healthmanager_back/src/main/java/mx/uv/Usuario.java index d9965c7..56893c4 100644 --- a/healthmanager_back/src/main/java/mx/uv/Usuario.java +++ b/healthmanager_back/src/main/java/mx/uv/Usuario.java @@ -35,7 +35,7 @@ public class Usuario { public void setContraseña(String contraseña) { this.contraseña = contraseña; } - public boolean isEsMedico() { + public boolean esMedico() { return esMedico; } public void setEsMedico(boolean esMedico) {