Browse Source

Modificaciones del Marco

master
dbaylonv 11 months ago
parent
commit
b9450b7c83
8 changed files with 175 additions and 21 deletions
  1. +56
    -0
      src/main/java/mx/gob/jumapacelaya/services/DatabaseService.java
  2. +29
    -6
      src/main/java/mx/gob/jumapacelaya/ui/ActDiariaView.java
  3. +10
    -6
      src/main/java/mx/gob/jumapacelaya/ui/MainLayout.java
  4. +19
    -3
      src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java
  5. +55
    -0
      src/main/java/mx/gob/jumapacelaya/ui/PlanAnualView.java
  6. BIN
      src/main/resources/META-INF/resources/images/bckgnd.png
  7. BIN
      src/main/resources/META-INF/resources/images/logocelaya2124.png
  8. +6
    -6
      src/main/resources/application.properties

+ 56
- 0
src/main/java/mx/gob/jumapacelaya/services/DatabaseService.java View File

@ -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<String> getTiposDeMantenimientos() {
List<String> 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;
}
}

+ 29
- 6
src/main/java/mx/gob/jumapacelaya/ui/ActDiariaView.java View File

@ -1,7 +1,11 @@
package mx.gob.jumapacelaya.ui; package mx.gob.jumapacelaya.ui;
import com.vaadin.flow.component.button.Button; import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.button.ButtonVariant;
import com.vaadin.flow.component.grid.ColumnPathRenderer;
import com.vaadin.flow.component.grid.Grid; import com.vaadin.flow.component.grid.Grid;
import com.vaadin.flow.component.html.H2; import com.vaadin.flow.component.html.H2;
import com.vaadin.flow.component.html.H3;
import com.vaadin.flow.component.icon.VaadinIcon;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout; import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout; import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.data.renderer.ComponentRenderer; import com.vaadin.flow.data.renderer.ComponentRenderer;
@ -18,7 +22,7 @@ import java.util.*;
@PermitAll @PermitAll
@PageTitle("Home")
@PageTitle("Actividades Diarias")
@Route(value = "actdiaria", layout = MainLayout.class) @Route(value = "actdiaria", layout = MainLayout.class)
public class ActDiariaView extends VerticalLayout { public class ActDiariaView extends VerticalLayout {
@ -29,6 +33,8 @@ public class ActDiariaView extends VerticalLayout {
H2 titulo = new H2(); H2 titulo = new H2();
Button btnCorrectivo = new Button("Correctivo");
Grid<ActividadDiaria> grdColumnas = new Grid<>(ActividadDiaria.class,false); Grid<ActividadDiaria> grdColumnas = new Grid<>(ActividadDiaria.class,false);
List<ActividadDiaria> people = Arrays.asList( List<ActividadDiaria> people = Arrays.asList(
@ -38,10 +44,15 @@ public class ActDiariaView extends VerticalLayout {
//new ActividadDiaria("Johannes Kepler", 1571)); //new ActividadDiaria("Johannes Kepler", 1571));
public ActDiariaView() { public ActDiariaView() {
titulo.setText("Listado de Actividades");
VerticalLayout headerLayout = new VerticalLayout();
headerLayout.getStyle().set("background-color", "#3e8bea");
headerLayout.add(titulo);
titulo.setText("Listado de Actividades Diarias");
header.setAlignSelf(Alignment.CENTER, titulo); header.setAlignSelf(Alignment.CENTER, titulo);
VerticalLayout gridLayout = new VerticalLayout();
gridLayout.add(grdColumnas);
//Tabla echa con un grid //Tabla echa con un grid
grdColumnas.addColumn(ActividadDiaria::getNumero).setHeader("Numero"); grdColumnas.addColumn(ActividadDiaria::getNumero).setHeader("Numero");
grdColumnas.addColumn(ActividadDiaria::getProyecto).setHeader("Proyecto"); grdColumnas.addColumn(ActividadDiaria::getProyecto).setHeader("Proyecto");
@ -54,11 +65,23 @@ public class ActDiariaView extends VerticalLayout {
grdColumnas.addColumn(date->{ grdColumnas.addColumn(date->{
return formato.format(date.getFechaCierre()); return formato.format(date.getFechaCierre());
}).setHeader("Fecha de cierre"); }).setHeader("Fecha de cierre");
Button btnCorrectivo = new Button("Correctivo");
grdColumnas.setItems(people); grdColumnas.setItems(people);
// grdColumnas.addColumn(
// new ColumnPathRenderer<>(Button::new, (btnCorrectivo, ActividadDiaria) ->{
// btnCorrectivo.addThemeVariants(ButtonVariant.LUMO_ICON,
// ButtonVariant.LUMO_ERROR,
// ButtonVariant.LUMO_TERTIARY);
// btnCorrectivo.setIcon(new Icon(VaadinIcon.TRASH));
// })).setHeader("Prueba");
add(titulo, header, grdColumnas);
// add(titulo, header, grdColumnas);
this.setPadding(false);
this.setMargin(false);
this.setSpacing(false);
add(headerLayout, gridLayout);
} }
}
}

+ 10
- 6
src/main/java/mx/gob/jumapacelaya/ui/MainLayout.java View File

@ -23,6 +23,7 @@ public class MainLayout extends AppLayout {
public MainLayout(SecurityService securityService) { public MainLayout(SecurityService securityService) {
this.securityService = securityService; this.securityService = securityService;
this.getStyle().set("background-image", "url('images/bckgnd.png')");
setPrimarySection(Section.DRAWER); setPrimarySection(Section.DRAWER);
addDrawerContent(); addDrawerContent();
addHeaderContent(); addHeaderContent();
@ -31,6 +32,8 @@ public class MainLayout extends AppLayout {
private void addHeaderContent() { private void addHeaderContent() {
DrawerToggle toggle = new DrawerToggle(); DrawerToggle toggle = new DrawerToggle();
toggle.setAriaLabel("Menu toggle"); toggle.setAriaLabel("Menu toggle");
toggle.getStyle().set("border-radius", "50px");
toggle.getStyle().set("back-color", "red");
viewTitle = new H2(); viewTitle = new H2();
viewTitle.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE); viewTitle.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE);
@ -43,18 +46,18 @@ public class MainLayout extends AppLayout {
securityService.logout(); securityService.logout();
}); });
logoutButton.getStyle().set("margin-right", "50px"); logoutButton.getStyle().set("margin-right", "50px");
logoutButton.addThemeVariants(ButtonVariant.LUMO_ERROR);
logoutButton.addThemeVariants(ButtonVariant.LUMO_PRIMARY ,ButtonVariant.LUMO_ERROR);
HorizontalLayout headerContent = new HorizontalLayout(); HorizontalLayout headerContent = new HorizontalLayout();
headerContent.setDefaultVerticalComponentAlignment(FlexComponent.Alignment.CENTER); headerContent.setDefaultVerticalComponentAlignment(FlexComponent.Alignment.CENTER);
headerContent.setWidthFull(); headerContent.setWidthFull();
headerContent.setHeight("64px");
headerContent.getStyle().set("background-color", "#AA86E0");
headerContent.add(viewTitle); headerContent.add(viewTitle);
headerContent.setFlexGrow(1, viewTitle); headerContent.setFlexGrow(1, viewTitle);
headerContent.add(usrNameLabel, logoutButton); headerContent.add(usrNameLabel, logoutButton);
addToNavbar(false, toggle, headerContent); addToNavbar(false, toggle, headerContent);
} }
private void addDrawerContent() { private void addDrawerContent() {
@ -64,7 +67,7 @@ public class MainLayout extends AppLayout {
headerLayout.setAlignItems(FlexComponent.Alignment.CENTER); headerLayout.setAlignItems(FlexComponent.Alignment.CENTER);
Image imgLogo = new Image("images/1027x160.png", "Logo"); Image imgLogo = new Image("images/1027x160.png", "Logo");
imgLogo.setWidth("300px");
imgLogo.setWidth("250px");
headerLayout.add(imgLogo); headerLayout.add(imgLogo);
@ -76,8 +79,9 @@ public class MainLayout extends AppLayout {
private SideNav createNavigation() { private SideNav createNavigation() {
SideNav nav = new SideNav(); SideNav nav = new SideNav();
nav.addItem(new SideNavItem("Mantenimiento", MantenimientoView.class, VaadinIcon.COGS.create()));
nav.addItem(new SideNavItem("Actividad Diaria", ActDiariaView.class, VaadinIcon.ALARM.create()));
nav.addItem(new SideNavItem("Mantenimiento", MantenimientoView.class, VaadinIcon.WRENCH.create()));
nav.addItem(new SideNavItem("Plan Anual", PlanAnualView.class, VaadinIcon.CALENDAR.create()));
nav.addItem(new SideNavItem("Listado de Actividades", ActDiariaView.class, VaadinIcon.EDIT.create()));
return nav; return nav;
} }


+ 19
- 3
src/main/java/mx/gob/jumapacelaya/ui/MantenimientoView.java View File

@ -12,6 +12,9 @@ import com.vaadin.flow.component.textfield.TextField;
import com.vaadin.flow.router.PageTitle; import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route; import com.vaadin.flow.router.Route;
import jakarta.annotation.security.PermitAll; import jakarta.annotation.security.PermitAll;
import mx.gob.jumapacelaya.services.DatabaseService;
import java.util.List;
@PermitAll @PermitAll
@ -20,10 +23,12 @@ import jakarta.annotation.security.PermitAll;
public class MantenimientoView extends VerticalLayout { public class MantenimientoView extends VerticalLayout {
public MantenimientoView() { public MantenimientoView() {
DatabaseService databaseService = new DatabaseService();
//Componentes de texto //Componentes de texto
TextField nomenclatura = new TextField("Nomenclatura"); TextField nomenclatura = new TextField("Nomenclatura");
nomenclatura.setReadOnly(true); nomenclatura.setReadOnly(true);
TextArea otras = new TextArea("¿Cuales?"); TextArea otras = new TextArea("¿Cuales?");
otras.setEnabled(false); otras.setEnabled(false);
@ -34,12 +39,23 @@ public class MantenimientoView extends VerticalLayout {
//ComboBox //ComboBox
ComboBox<String> area = new ComboBox("Area o Departamento"); ComboBox<String> area = new ComboBox("Area o Departamento");
area.setItems("T.I", "Catastro", "Medicion"); //Areas de ejemplo area.setItems("T.I", "Catastro", "Medicion"); //Areas de ejemplo
ComboBox<String> tipoMantt = new ComboBox<>("Tipo de Mantenimiento"); ComboBox<String> tipoMantt = new ComboBox<>("Tipo de Mantenimiento");
tipoMantt.setItems("Preventivo","Correctivo"); //Esto a futuro debera traer los tipos de mantenimiento directo de la BD
List<String> 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<String> usuario = new ComboBox("Usuario"); ComboBox<String> usuario = new ComboBox("Usuario");
usuario.setItems("Usuario1", "Usuario2", "Usuario3"); usuario.setItems("Usuario1", "Usuario2", "Usuario3");
/*ComboBox<String> tipoEquipo = new ComboBox<>("Tipo de Equipo");
tipoEquipo.setItems("Laptop", "Escritorio");*/
//CheckBoxes LIMPIEZA DE EQUIPO //CheckBoxes LIMPIEZA DE EQUIPO
CheckboxGroup<String> limpiezaEq = new CheckboxGroup<>(); CheckboxGroup<String> limpiezaEq = new CheckboxGroup<>();


+ 55
- 0
src/main/java/mx/gob/jumapacelaya/ui/PlanAnualView.java View File

@ -0,0 +1,55 @@
package mx.gob.jumapacelaya.ui;
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.html.*;
import com.vaadin.flow.component.notification.Notification;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
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.models.ActividadDiaria;
@PermitAll
@PageTitle("Plan Anual de Mantenimiento")
@Route(value = "plananual", layout = MainLayout.class)
public class PlanAnualView extends VerticalLayout {
HorizontalLayout header = new HorizontalLayout();
H3 titulo = new H3();
public PlanAnualView() {
VerticalLayout headerLayout = new VerticalLayout();
headerLayout.getStyle().set("background-color", "#3e8bea");
headerLayout.add(titulo);
titulo.setText("Plan Anual de Mantenimiento Preventivo de Equipo de Computo 2024");
header.setAlignSelf(Alignment.CENTER, titulo);
HorizontalLayout nomenclaturaLayout = new HorizontalLayout();
Image celayaLogo = new Image("images/logocelaya2124.png", "celaya2024");
celayaLogo.setWidth("100px");
celayaLogo.getStyle().set("margin-left", "15px");
celayaLogo.getStyle().set("margin-top", "15px");
TextField nomenclaturaTxt = new TextField();
nomenclaturaTxt.setValue("FR01-PA-7.1.3-02");
nomenclaturaTxt.setReadOnly(true);
nomenclaturaTxt.getStyle().set("margin-right", "15px");
nomenclaturaTxt.getStyle().set("margin-top", "15px");
nomenclaturaLayout.add(celayaLogo);
nomenclaturaLayout.addAndExpand(new HorizontalLayout());
nomenclaturaLayout.add(nomenclaturaTxt);
this.setPadding(false);
this.setMargin(false);
this.setSpacing(false);
add(headerLayout, nomenclaturaLayout);
}
}

BIN
src/main/resources/META-INF/resources/images/bckgnd.png View File

Before After
Width: 1922  |  Height: 1282  |  Size: 81 KiB

BIN
src/main/resources/META-INF/resources/images/logocelaya2124.png View File

Before After
Width: 918  |  Height: 970  |  Size: 63 KiB

+ 6
- 6
src/main/resources/application.properties View File

@ -18,9 +18,9 @@ spring.ldap.password=Dr3na%134$4guA
#Conexion a la base de datos Mantenimientos #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

Loading…
Cancel
Save