diff --git a/src/main/java/mx/gob/jumapacelaya/services/DatabaseService.java b/src/main/java/mx/gob/jumapacelaya/services/DatabaseService.java new file mode 100644 index 0000000..f16099b --- /dev/null +++ b/src/main/java/mx/gob/jumapacelaya/services/DatabaseService.java @@ -0,0 +1,56 @@ +package mx.gob.jumapacelaya.services; + +import java.sql.*; +import java.util.ArrayList; +import java.util.List; + +public class DatabaseService { + + private final String url = "jdbc:mysql://mhdb.jumapacelaya.gob.mx:33006/Mantenimientos"; + private final String user = "root"; + private final String pass = "mantenimientos"; + + + private Connection getConnection() throws SQLException { + return DriverManager.getConnection(url, user, pass); + } + + // Método para obtener los tipos de mantenimientos + public List getTiposDeMantenimientos() { + List tiposDeMantenimientos = new ArrayList<>(); + String query = "SELECT * FROM TIPOMANT"; + + try (Connection connection = DriverManager.getConnection("jdbc:mysql://mhdb.jumapacelaya.gob.mx:33006/Mantenimientos", "root", "mantenimientos"); + Statement statement = connection.createStatement(); + ResultSet resultSet = statement.executeQuery(query)) { + + while (resultSet.next()) { + tiposDeMantenimientos.add(resultSet.getString("NOMBRE")); + } + } catch (SQLException e) { + e.printStackTrace(); + } + return tiposDeMantenimientos; + } + + // Método para obtener las nomenclaturas + public String getNomenclatura(String tipoMantenimiento ) { + String nomenclatura = ""; + String query = "SELECT nomenclatura FROM TIPOMANT where NOMBRE = ?"; + + try (Connection connection = getConnection(); + PreparedStatement preparedStatement = connection.prepareStatement(query)) { + + preparedStatement.setString(1, tipoMantenimiento); + ResultSet resultSet = preparedStatement.executeQuery(); + + if (resultSet.next()) { + nomenclatura = resultSet.getString("nomenclatura"); + } + + } catch (SQLException e) { + e.printStackTrace(); + } + return nomenclatura; + } +} diff --git a/src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java b/src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java index 46998ba..715d15c 100644 --- a/src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java +++ b/src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java @@ -12,6 +12,9 @@ import com.vaadin.flow.component.textfield.TextField; import com.vaadin.flow.router.PageTitle; import com.vaadin.flow.router.Route; import jakarta.annotation.security.PermitAll; +import mx.gob.jumapacelaya.services.DatabaseService; + +import java.util.List; @PermitAll @@ -20,10 +23,12 @@ import jakarta.annotation.security.PermitAll; public class MantenimientoView extends VerticalLayout { public MantenimientoView() { + DatabaseService databaseService = new DatabaseService(); //Componentes de texto TextField nomenclatura = new TextField("Nomenclatura"); nomenclatura.setReadOnly(true); + TextArea otras = new TextArea("¿Cuales?"); otras.setEnabled(false); @@ -34,12 +39,23 @@ public class MantenimientoView extends VerticalLayout { //ComboBox ComboBox area = new ComboBox("Area o Departamento"); area.setItems("T.I", "Catastro", "Medicion"); //Areas de ejemplo + ComboBox tipoMantt = new ComboBox<>("Tipo de Mantenimiento"); - tipoMantt.setItems("Preventivo","Correctivo"); //Esto a futuro debera traer los tipos de mantenimiento directo de la BD + List tiposDeMantenimiento = databaseService.getTiposDeMantenimientos(); + tipoMantt.setItems(tiposDeMantenimiento); + tipoMantt.addValueChangeListener(event -> { + String tipoSeleccionado = event.getValue(); + if (tipoSeleccionado != null) { + String nomenclaturaValue = databaseService.getNomenclatura(tipoSeleccionado); + nomenclatura.setValue(nomenclaturaValue); + } else { + nomenclatura.clear(); + } + }); + ComboBox usuario = new ComboBox("Usuario"); usuario.setItems("Usuario1", "Usuario2", "Usuario3"); - /*ComboBox tipoEquipo = new ComboBox<>("Tipo de Equipo"); - tipoEquipo.setItems("Laptop", "Escritorio");*/ + //CheckBoxes LIMPIEZA DE EQUIPO CheckboxGroup limpiezaEq = new CheckboxGroup<>(); diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 3cd6d21..395cd04 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -18,9 +18,9 @@ spring.ldap.password=Dr3na%134$4guA #Conexion a la base de datos Mantenimientos -# MySQL Configuration -spring.jpa.hibernate.ddl-auto=update -spring.datasource.url=jdbc:mysql://HOST:PORT/DB_NAME -spring.datasource.username=USERNAME -spring.datasource.password=PASSWORD -spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver +#MySQL Configuration +#spring.jpa.hibernate.ddl-auto=update +#spring.datasource.url=jdbc:mysql://mhdb.jumapacelaya.gob.mx:33006/Mantenimientos +#spring.datasource.username=root +#spring.datasource.password=mantenimientos +#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver