From 738c42f160e93477672b5a1d6af9f5ce0851ca50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=20Mu=C3=B1oz?= Date: Thu, 13 Mar 2025 12:45:15 +0100 Subject: [PATCH] =?UTF-8?q?feat(ch=209):=20ex=201=20finished=20-=20Gesti?= =?UTF-8?q?=C3=B3n=20Fabricante?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controlador/ControladorFabricante.java | 29 ++++++++++- .../vista/VentanaGestionFabricante.java | 48 +++++++++++++++++++ 2 files changed, 76 insertions(+), 1 deletion(-) diff --git a/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/controlador/ControladorFabricante.java b/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/controlador/ControladorFabricante.java index d1193e9..ce4bfd5 100644 --- a/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/controlador/ControladorFabricante.java +++ b/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/controlador/ControladorFabricante.java @@ -45,6 +45,7 @@ public class ControladorFabricante { f.setId(rs.getInt("id")); f.setNombre(rs.getString("nombre")); f.setCif(rs.getString("cif")); + rs.getDate("fechaNac") return f; } } @@ -95,7 +96,11 @@ public class ControladorFabricante { return 1; } - + /** + * + * @param f + * @return + */ public static int insertaFabricante(Fabricante f) { try { Connection conn = ConnectionManager.getConnection(); @@ -115,6 +120,28 @@ public class ControladorFabricante { return 0; } + + /** + * + * @param f + * @return + */ + public static int eliminaFabricante(int idFabricante) { + try { + Connection conn = ConnectionManager.getConnection(); + String sql = "delete from fabricante where id = ?"; + + PreparedStatement ps = conn.prepareStatement(sql); + ps.setInt(1, idFabricante); + + return ps.executeUpdate(); + } + catch (Exception ex) { + ex.printStackTrace(); + } + return 0; + } + } diff --git a/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/vista/VentanaGestionFabricante.java b/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/vista/VentanaGestionFabricante.java index 2d8809c..b5c9ba2 100644 --- a/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/vista/VentanaGestionFabricante.java +++ b/src/tutorialJava/capitulo9_AWT_SWING/ejemplos/ejemplo01_Fabricante/vista/VentanaGestionFabricante.java @@ -203,6 +203,11 @@ public class VentanaGestionFabricante extends JFrame { panel_1.add(btnNewButton_5); JButton btnNewButton_6 = new JButton("Eliminar"); + btnNewButton_6.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + eliminar(); + } + }); panel_1.add(btnNewButton_6); @@ -277,6 +282,49 @@ public class VentanaGestionFabricante extends JFrame { this.jtfCif.setText(""); } + + /** + * + */ + private void eliminar() { + String [] opciones ={"Sí","No"}; + int eleccion = JOptionPane.showOptionDialog(null,"¿Desea eliminar el registro?", + "Confirmación", + JOptionPane.YES_NO_OPTION, + JOptionPane.QUESTION_MESSAGE, null, opciones, "No"); + if (eleccion == JOptionPane.YES_OPTION) { + // Realmente elimino + int idFabricante = Integer.parseInt(this.jtfId.getText()); + + if (ControladorFabricante.eliminaFabricante(idFabricante) > 0) { + // Navego al anterior, si existe + Fabricante anterior = + ControladorFabricante.getAnterior(idFabricante); + if (anterior != null) { // Existe un anterior + mostrarFabricanteEnPantalla(anterior); + } + else { // No existe anterior + Fabricante siguiente = + ControladorFabricante.getSiguiente(idFabricante); + if (siguiente != null) { // Existe un siguiente + mostrarFabricanteEnPantalla(siguiente); + } + else { // No existe siguiente ni anterior, no queda na + nuevo(); + } + } + + JOptionPane.showMessageDialog(null, "Registro eliminado"); + + } + else { + JOptionPane.showMessageDialog(null, "Error en la eliminación"); + } + } + + + + } }