Browse Source

Se agregaron las vistas para las demas solicitudes asi como algunas validaciones y tambien se agregaron los servicios para obtener la infomracion del predio

main
mramirezg 8 months ago
parent
commit
b2e724f7e9
12 changed files with 756 additions and 15 deletions
  1. +62
    -0
      src/main/java/mx/gob/jumapacelaya/Services/PredioService.java
  2. +203
    -0
      src/main/java/mx/gob/jumapacelaya/models/Predio.java
  3. +65
    -0
      src/main/java/mx/gob/jumapacelaya/views/EstudioSocioForm.java
  4. +43
    -1
      src/main/java/mx/gob/jumapacelaya/views/HomeView.java
  5. +1
    -1
      src/main/java/mx/gob/jumapacelaya/views/MainLayout.java
  6. +1
    -5
      src/main/java/mx/gob/jumapacelaya/views/ReciboDgtalView.java
  7. +61
    -7
      src/main/java/mx/gob/jumapacelaya/views/SolicitudDescView.java
  8. +106
    -0
      src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/AjusteFacView.java
  9. +2
    -1
      src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/DescEspView.java
  10. +106
    -0
      src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/InfraccionesView.java
  11. +106
    -0
      src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/RecargosView.java
  12. BIN
      src/main/resources/META-INF/resources/images/LOGO_24'27.png

+ 62
- 0
src/main/java/mx/gob/jumapacelaya/Services/PredioService.java View File

@ -0,0 +1,62 @@
package mx.gob.jumapacelaya.Services;
import mx.gob.jumapacelaya.models.Predio;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class PredioService {
private final JdbcTemplate jdbcTemplate;
public PredioService(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
public List<Predio> getInfoPredio(int predioId) {
List<Predio> infoPredio = new ArrayList<>();
String query = "Select predioid, clienteid, c.nombre nomcliente,\n" +
" fn_getdomicilio(p.direcid) direccion, fn_get_direccion(p.direcid) direccionmostrar, fn_direccionshort(p.direcid) direccioncorta,\n" +
" fn_gettelefono(clienteid) telefono,\n" +
" p.coordx, p.coordy, p.zonafactid, p.serialmed, marcamedid||'-'||ma.descripcion marcamed, (decode(mo.descripcion,null,'Desconocido',modelomedid||'-'||mo.descripcion)) modelomed,\n" +
" edopredioid, e.nombre edopredio, usoid, u.nombre uso, actividadid, a.nombre actividad\n" +
" from predios p\n" +
" left join clientes c using (clienteid)\n" +
" left join estadospredio e using(edopredioid)\n" +
" left join usos u using (usoid)\n" +
" left join actividades a using (usoid, actividadid)\n" +
" left join marcasmedidor ma using(marcamedid)\n" +
" left join modelosmedidor mo using(marcamedid, modelomedid)\n" +
" where predioid=?";
return jdbcTemplate.query(query, new Object[]{predioId}, predioRowMapper());
}
private RowMapper<Predio> predioRowMapper() {
return (rs, rowNum) -> new Predio(
rs.getInt("PREDIOID"),
rs.getInt("CLIENTEID"),
rs.getString("NOMCLIENTE"),
rs.getString("DIRECCION"),
rs.getString("DIRECCIONMOSTRAR"),
rs.getString("DIRECCIONCORTA"),
rs.getString("TELEFONO"),
rs.getString("COORDX"),
rs.getString("COORDY"),
rs.getString("ZONAFACTID"),
rs.getString("SERIALMED"),
rs.getString("MARCAMED"),
rs.getString("MODELOMED"),
rs.getString("EDOPREDIOID"),
rs.getString("EDOPREDIO"),
rs.getString("USOID"),
rs.getString("USO"),
rs.getInt("ACTIVIDADID"),
rs.getString("ACTIVIDAD")
);
}
}

+ 203
- 0
src/main/java/mx/gob/jumapacelaya/models/Predio.java View File

@ -0,0 +1,203 @@
package mx.gob.jumapacelaya.models;
import java.math.BigInteger;
public class Predio {
private int predioid;
private int clienteid;
private String nomcliente;
private String direccion;
private String direcmostrar;
private String direccorta;
private String telefono;
private String coordx;
private String coordy;
private String zonafacid;
private String serialmed;
private String marcamed;
private String modelomed;
private String edopredioid;
private String edopredio;
private String usoid;
private String uso;
private int actividadid;
private String actividad;
public Predio(int predioid, int clienteid, String nomcliente, String direccion, String direcmostrar, String direccorta,
String telefono, String coordx, String coordy, String zonafacid, String serialmed, String marcamed, String modelomed, String edopredioid,
String edopredio, String usoid, String uso, int actividadid, String actividad) {
this.predioid = predioid;
this.clienteid = clienteid;
this.nomcliente = nomcliente;
this.direccion = direccion;
this.direcmostrar = direcmostrar;
this.direccorta = direccorta;
this.telefono = telefono;
this.coordx = coordx;
this.coordy = coordy;
this.zonafacid = zonafacid;
this.serialmed = serialmed;
this.marcamed = marcamed;
this.modelomed = modelomed;
this.edopredioid = edopredioid;
this.edopredio = edopredio;
this.usoid = usoid;
this.uso = uso;
this.actividadid = actividadid;
this.actividad = actividad;
}
public int getPredioid() {
return predioid;
}
public void setPredioid(int predioid) {
this.predioid = predioid;
}
public String getNomcliente() {
return nomcliente;
}
public void setNomcliente(String nomcliente) {
this.nomcliente = nomcliente;
}
public int getClienteid() {
return clienteid;
}
public void setClienteid(int clienteid) {
this.clienteid = clienteid;
}
public String getDireccion() {
return direccion;
}
public void setDireccion(String direccion) {
this.direccion = direccion;
}
public String getDirecmostrar() {
return direcmostrar;
}
public void setDirecmostrar(String direcmostrar) {
this.direcmostrar = direcmostrar;
}
public String getDireccorta() {
return direccorta;
}
public void setDireccorta(String direccorta) {
this.direccorta = direccorta;
}
public String getTelefono() {
return telefono;
}
public void setTelefono(String telefono) {
this.telefono = telefono;
}
public String getCoordx() {
return coordx;
}
public void setCoordx(String coordx) {
this.coordx = coordx;
}
public String getCoordy() {
return coordy;
}
public void setCoordy(String coordy) {
this.coordy = coordy;
}
public String getZonafacid() {
return zonafacid;
}
public void setZonafacid(String zonafacid) {
this.zonafacid = zonafacid;
}
public String getSerialmed() {
return serialmed;
}
public void setSerialmed(String serialmed) {
this.serialmed = serialmed;
}
public String getMarcamed() {
return marcamed;
}
public void setMarcamed(String marcamed) {
this.marcamed = marcamed;
}
public String getModelomed() {
return modelomed;
}
public void setModelomed(String modelomed) {
this.modelomed = modelomed;
}
public String getEdopredioid() {
return edopredioid;
}
public void setEdopredioid(String edopredioid) {
this.edopredioid = edopredioid;
}
public String getEdopredio() {
return edopredio;
}
public void setEdopredio(String edopredio) {
this.edopredio = edopredio;
}
public String getUsoid() {
return usoid;
}
public void setUsoid(String usoid) {
this.usoid = usoid;
}
public String getUso() {
return uso;
}
public void setUso(String uso) {
this.uso = uso;
}
public int getActividadid() {
return actividadid;
}
public void setActividadid(int actividadid) {
this.actividadid = actividadid;
}
public String getActividad() {
return actividad;
}
public void setActividad(String actividad) {
this.actividad = actividad;
}
}

+ 65
- 0
src/main/java/mx/gob/jumapacelaya/views/EstudioSocioForm.java View File

@ -0,0 +1,65 @@
package mx.gob.jumapacelaya.views;
import com.vaadin.flow.component.html.*;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route;
import java.awt.font.TextHitInfo;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@PageTitle("Estudio Socioeconomico")
@Route(value = "estudio", layout = MainLayout.class)
public class EstudioSocioForm extends VerticalLayout {
public EstudioSocioForm() {
this.setSizeFull();
this.setSpacing(false);
cabezera();
titulo();
}
private void cabezera() {
HorizontalLayout encabezadoLayout = new HorizontalLayout();
encabezadoLayout.setWidthFull();
encabezadoLayout.setPadding(true);
// Obtener la fecha actual del sistema
LocalDate fechaSistema = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEEE d 'de' MMMM 'del' yyyy");
String fechaFormateada = fechaSistema.format(formatter);
Span fecha = new Span();
fecha.setText("Celaya, Guanajuato a " + fechaFormateada);
Image logoJmpa = new Image("images/LOGO_24'27.PNG", "JUMAPA logo");
logoJmpa.setWidth("110px");
logoJmpa.setHeight("50px");
encabezadoLayout.add(logoJmpa);
encabezadoLayout.addAndExpand(new HorizontalLayout());
encabezadoLayout.add(fecha);
encabezadoLayout.addAndExpand(new HorizontalLayout());
this.add(encabezadoLayout);
}
private void titulo() {
VerticalLayout tituloLayout = new VerticalLayout();
tituloLayout.setAlignItems(Alignment.CENTER);
H4 lblTitulo = new H4();
lblTitulo.setText("VALORACIÓN DE CONDICIÓN SOCIOECONÓMICA DE USUARIOS DOMÉSTICOS");
tituloLayout.add(lblTitulo);
this.add(tituloLayout);
}
}

+ 43
- 1
src/main/java/mx/gob/jumapacelaya/views/HomeView.java View File

@ -1,11 +1,17 @@
package mx.gob.jumapacelaya.views;
import com.vaadin.flow.component.UI;
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.button.ButtonVariant;
import com.vaadin.flow.component.combobox.ComboBox;
import com.vaadin.flow.component.html.H1;
import com.vaadin.flow.component.html.H3;
import com.vaadin.flow.component.html.Paragraph;
import com.vaadin.flow.component.icon.Icon;
import com.vaadin.flow.component.icon.VaadinIcon;
import com.vaadin.flow.component.notification.Notification;
import com.vaadin.flow.component.notification.NotificationVariant;
import com.vaadin.flow.component.orderedlayout.FlexComponent;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.*;
@ -135,11 +141,47 @@ public class HomeView extends VerticalLayout {
UI.getCurrent().navigate(route + "?usuarioid=" + username);
} else {
Notification.show("Por favor, selecciona un usuario primero.");
notificacion("Por favor, selecciona un usuario primero.");
}
});
card.add(cardTitle, description);
return card;
}
private void notificacion(String message) {
Notification notification = new Notification();
notification.setPosition(Notification.Position.MIDDLE);
notification.addThemeVariants(NotificationVariant.LUMO_WARNING);
notification.setDuration(0);
Icon warningIcon = new Icon(VaadinIcon.WARNING);
warningIcon.setSize("48px");
warningIcon.getStyle().set("margin-bottom", "10px");
Paragraph messajeTexto = new Paragraph(message);
messajeTexto.getStyle().set("margin", "0").set("text-align", "center");
Button closeButton = new Button("OK", event -> notification.close());
closeButton.addThemeVariants(ButtonVariant.LUMO_TERTIARY_INLINE);
closeButton.getElement().setAttribute("arial-label", "Cerrar");
VerticalLayout buttonsLayout = new VerticalLayout(warningIcon, messajeTexto, closeButton);
buttonsLayout.setAlignItems(Alignment.CENTER);
buttonsLayout.setSpacing(false);
buttonsLayout.setPadding(false);
buttonsLayout.setWidthFull();
VerticalLayout wrapper = new VerticalLayout(buttonsLayout);
wrapper.setPadding(true);
wrapper.setSpacing(false);
wrapper.getStyle().set("position", "relative");
wrapper.getStyle().set("padding", "10px");
wrapper.setWidth("100%");
notification.add(wrapper);
notification.open();
}
}

+ 1
- 1
src/main/java/mx/gob/jumapacelaya/views/MainLayout.java View File

@ -13,6 +13,7 @@ import com.vaadin.flow.router.Layout;
import com.vaadin.flow.server.auth.AnonymousAllowed;
import com.vaadin.flow.server.menu.MenuConfiguration;
import com.vaadin.flow.theme.lumo.LumoUtility;
import mx.gob.jumapacelaya.views.tiposSolicitud.DescEspView;
import org.vaadin.lineawesome.LineAwesomeIcon;
/**
@ -59,7 +60,6 @@ public class MainLayout extends AppLayout {
nav.addItem(new SideNavItem("Recibo Digital", ReciboDgtalView.class, LineAwesomeIcon.FILE_ALT.create()));
nav.addItem(new SideNavItem("Verificacion", VerificacionView.class, LineAwesomeIcon.CHECK_CIRCLE_SOLID.create()));
nav.addItem(new SideNavItem("PGO y Tomas independientes", PgoTomasView.class, LineAwesomeIcon.TINT_SOLID.create()));
nav.addItem(new SideNavItem("Descuento Especial", DescEspView.class, LineAwesomeIcon.MONEY_BILL_ALT.create()));
return nav;
}


+ 1
- 5
src/main/java/mx/gob/jumapacelaya/views/ReciboDgtalView.java View File

@ -84,9 +84,6 @@ public class ReciboDgtalView extends VerticalLayout implements BeforeEnterObserv
labelTexto.setText("Prepara la solicitud:");
CheckboxGroup<String> tipoSolicitudGroup = new CheckboxGroup<>("Elige el tipo de Solicitud:");
tipoSolicitudGroup.setItems("Recargos", "Infracciones", "Ajuste de Facturas");
NumberField predio = new NumberField("Predio:");
@ -115,8 +112,7 @@ public class ReciboDgtalView extends VerticalLayout implements BeforeEnterObserv
identificacionLayout.add(cmbTipoIdentificacion, numIdentificacion);
formularioLayout.add(label, labelTexto,
tipoSolicitudGroup, predio,
formularioLayout.add(label, labelTexto, predio,
solicitante, identificacionTexto,
identificacionLayout, txtParentesco);
formularioLayout.setSpacing(false);


+ 61
- 7
src/main/java/mx/gob/jumapacelaya/views/SolicitudDescView.java View File

@ -1,13 +1,12 @@
package mx.gob.jumapacelaya.views;
import com.vaadin.flow.component.UI;
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.button.ButtonVariant;
import com.vaadin.flow.component.checkbox.CheckboxGroup;
import com.vaadin.flow.component.combobox.ComboBox;
import com.vaadin.flow.component.html.H1;
import com.vaadin.flow.component.html.H2;
import com.vaadin.flow.component.html.H3;
import com.vaadin.flow.component.html.Span;
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.radiobutton.RadioButtonGroup;
@ -17,7 +16,12 @@ import com.vaadin.flow.router.BeforeEnterEvent;
import com.vaadin.flow.router.BeforeEnterObserver;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route;
import mx.gob.jumapacelaya.Services.PredioService;
import mx.gob.jumapacelaya.models.Predio;
import mx.gob.jumapacelaya.views.tiposSolicitud.InfraccionesView;
import org.aspectj.weaver.ast.Not;
import org.hibernate.annotations.DialectOverride;
import org.springframework.beans.factory.annotation.Autowired;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@ -29,9 +33,12 @@ import java.util.List;
public class SolicitudDescView extends VerticalLayout implements BeforeEnterObserver {
private H3 label;
private final PredioService predioService;
public SolicitudDescView() {
@Autowired
public SolicitudDescView(PredioService predioService) {
this.setSizeFull();
this.predioService = predioService;
cabezera();
titulo();
@ -95,7 +102,7 @@ public class SolicitudDescView extends VerticalLayout implements BeforeEnterObse
tipoSolicitudGroup.setItems("Recargos", "Infracciones", "Ajuste de Facturas", "Descuento Especial Pago Anual");
NumberField predio = new NumberField("Predio:");
NumberField predioTxt = new NumberField("Predio:");
TextField solicitante = new TextField("Solicitante:");
solicitante.setWidth("30em");
@ -120,10 +127,57 @@ public class SolicitudDescView extends VerticalLayout implements BeforeEnterObse
btnVerSolicitud.addThemeVariants(ButtonVariant.LUMO_PRIMARY);
btnVerSolicitud.addThemeVariants(ButtonVariant.LUMO_LARGE);
btnVerSolicitud.addClickListener(event -> {
String tipoSolicitud = tipoSolicitudGroup.getValue();
if (predioTxt.getValue() != null) {
int predioId = predioTxt.getValue().intValue();
List<Predio> predios = predioService.getInfoPredio(predioId);
if (!predios.isEmpty()) {
Predio resultado = predios.get(0);
System.out.println(resultado.getPredioid());
System.out.println(resultado.getNomcliente());
System.out.println(resultado.getDireccorta());
System.out.println(resultado.getTelefono());
System.out.println(resultado.getUso());
System.out.println(resultado.getActividad());
} else {
Notification.show("No se encontro informacion del predio", 3000, Notification.Position.MIDDLE);
}
} else {
Notification.show("Ingresa un numero de predio", 3000, Notification.Position.MIDDLE);
}
if (tipoSolicitud != null) {
switch (tipoSolicitud) {
case "Recargos":
UI.getCurrent().navigate("recargos");
break;
case "Infracciones":
UI.getCurrent().navigate("infracciones");
break;
case "Ajuste de Facturas":
UI.getCurrent().navigate("ajustefacturas");
break;
case "Descuento Especial Pago Anual":
UI.getCurrent().navigate("descesp");
break;
default:
Notification.show("Selecciona un tipo de solicitud", 3000, Notification.Position.MIDDLE);
}
} else {
Notification.show("Selecciona una opcion", 3000, Notification.Position.MIDDLE);
}
});
identificacionLayout.add(cmbTipoIdentificacion, numIdentificacion);
formularioLayout.add(label, labelTexto,
tipoSolicitudGroup, predio,
tipoSolicitudGroup, predioTxt,
solicitante, identificacionTexto,
identificacionLayout, txtParentesco);
formularioLayout.setSpacing(false);


+ 106
- 0
src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/AjusteFacView.java View File

@ -0,0 +1,106 @@
package mx.gob.jumapacelaya.views.tiposSolicitud;
import com.vaadin.flow.component.html.*;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route;
import de.f0rce.signaturepad.SignaturePad;
import mx.gob.jumapacelaya.views.MainLayout;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@PageTitle("Ajuste de Facturas")
@Route(value = "ajustefacturas", layout = MainLayout.class)
public class AjusteFacView extends VerticalLayout {
public AjusteFacView() {
cabezera();
titulo();
body();
sign();
}
private void cabezera() {
HorizontalLayout encabezadoLayout = new HorizontalLayout();
encabezadoLayout.setWidthFull();
encabezadoLayout.setPadding(true);
// Obtener la fecha actual del sistema
LocalDate fechaSistema = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEEE d 'de' MMMM 'del' yyyy");
String fechaFormateada = fechaSistema.format(formatter);
Span fecha = new Span();
fecha.setText("Celaya, Guanajuato a " + fechaFormateada);
H2 presolicitud = new H2();
presolicitud.setText("Firma Solicitud");
encabezadoLayout.add(fecha);
encabezadoLayout.addAndExpand(new HorizontalLayout());
encabezadoLayout.add(presolicitud);
this.add(encabezadoLayout);
}
private void titulo() {
VerticalLayout tituloLayout = new VerticalLayout();
H2 lblTitulo = new H2();
lblTitulo.setText("JUNTA MUNICIPAL DE AGUA POTABLE Y ALCANTARILLADO DE CELAYA, GTO");
H3 lblSubtitulo = new H3();
lblSubtitulo.setText("A QUIEN CORRESPONDA");
tituloLayout.add(lblTitulo, lblSubtitulo);
this.add(tituloLayout);
}
private void body() {
VerticalLayout bodyLayout = new VerticalLayout();
H4 lblPresente = new H4();
lblPresente.setText("PRESENTE:");
H4 lblAtt = new H4();
lblAtt.setText("ATENTAMENTE:");
Paragraph parrafo1 = new Paragraph();
parrafo1.setText(
"Sirva este medio para solicitar de la manera más atenta, se me pueda otorgar facilidades para regularizar " +
"la cuenta del predio PREDIOID, ubicado en DIRECCION, Rfcia: , a nombre de NOMBRE realizado alguna " +
"consideracion al adeudo para poder pagarlo de acuerdo a mis posibilidades económicas."
);
bodyLayout.add(lblPresente, parrafo1, lblAtt);
this.add(bodyLayout);
}
private void sign() {
VerticalLayout signLayout = new VerticalLayout();
SignaturePad userPad = new SignaturePad();
//userPad.setBackgroundColor("#FFFFFF");
userPad.setHeight("200px");
userPad.setPenColor("#000000");
userPad.getElement().getStyle().set("border", "1px solid black");
Span nombreCliente = new Span("Nombre del Solicitante");
Span predioCliente = new Span("Predio: ");
Span contratoCliente = new Span("Contrato: ");
signLayout.add(userPad, nombreCliente, predioCliente, contratoCliente);
signLayout.setSpacing(false);
signLayout.setAlignItems(Alignment.CENTER);
this.setSpacing(false);
this.add(signLayout);
}
}

src/main/java/mx/gob/jumapacelaya/views/DescEspView.java → src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/DescEspView.java View File


+ 106
- 0
src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/InfraccionesView.java View File

@ -0,0 +1,106 @@
package mx.gob.jumapacelaya.views.tiposSolicitud;
import com.vaadin.flow.component.html.*;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route;
import de.f0rce.signaturepad.SignaturePad;
import mx.gob.jumapacelaya.views.MainLayout;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@PageTitle("Infracciones")
@Route(value = "infracciones", layout = MainLayout.class)
public class InfraccionesView extends VerticalLayout {
public InfraccionesView() {
cabezera();
titulo();
body();
sign();
}
private void cabezera() {
HorizontalLayout encabezadoLayout = new HorizontalLayout();
encabezadoLayout.setWidthFull();
encabezadoLayout.setPadding(true);
// Obtener la fecha actual del sistema
LocalDate fechaSistema = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEEE d 'de' MMMM 'del' yyyy");
String fechaFormateada = fechaSistema.format(formatter);
Span fecha = new Span();
fecha.setText("Celaya, Guanajuato a " + fechaFormateada);
H2 presolicitud = new H2();
presolicitud.setText("Firma Solicitud");
encabezadoLayout.add(fecha);
encabezadoLayout.addAndExpand(new HorizontalLayout());
encabezadoLayout.add(presolicitud);
this.add(encabezadoLayout);
}
private void titulo() {
VerticalLayout tituloLayout = new VerticalLayout();
H2 lblTitulo = new H2();
lblTitulo.setText("JUNTA MUNICIPAL DE AGUA POTABLE Y ALCANTARILLADO DE CELAYA, GTO");
H3 lblSubtitulo = new H3();
lblSubtitulo.setText("A QUIEN CORRESPONDA");
tituloLayout.add(lblTitulo, lblSubtitulo);
this.add(tituloLayout);
}
private void body() {
VerticalLayout bodyLayout = new VerticalLayout();
H4 lblPresente = new H4();
lblPresente.setText("PRESENTE:");
H4 lblAtt = new H4();
lblAtt.setText("ATENTAMENTE:");
Paragraph parrafo1 = new Paragraph();
parrafo1.setText(
"Sirva este medio para solicitar de la manera más atenta, se me pueda otorgar facilidades para regularizar " +
"la cuenta del predio PREDIOID, ubicado en DIRECCION, Rfcia: , a nombre de NOMBRE realizado alguna " +
"consideracion al adeudo para poder pagarlo de acuerdo a mis posibilidades económicas."
);
bodyLayout.add(lblPresente, parrafo1, lblAtt);
this.add(bodyLayout);
}
private void sign() {
VerticalLayout signLayout = new VerticalLayout();
SignaturePad userPad = new SignaturePad();
//userPad.setBackgroundColor("#FFFFFF");
userPad.setHeight("200px");
userPad.setPenColor("#000000");
userPad.getElement().getStyle().set("border", "1px solid black");
Span nombreCliente = new Span("Nombre del Solicitante");
Span predioCliente = new Span("Predio: ");
Span contratoCliente = new Span("Contrato: ");
signLayout.add(userPad, nombreCliente, predioCliente, contratoCliente);
signLayout.setSpacing(false);
signLayout.setAlignItems(Alignment.CENTER);
this.setSpacing(false);
this.add(signLayout);
}
}

+ 106
- 0
src/main/java/mx/gob/jumapacelaya/views/tiposSolicitud/RecargosView.java View File

@ -0,0 +1,106 @@
package mx.gob.jumapacelaya.views.tiposSolicitud;
import com.vaadin.flow.component.html.*;
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.router.Route;
import de.f0rce.signaturepad.SignaturePad;
import mx.gob.jumapacelaya.views.MainLayout;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@PageTitle("Recargos")
@Route(value = "recargos", layout = MainLayout.class)
public class RecargosView extends VerticalLayout {
public RecargosView() {
cabezera();
titulo();
body();
sign();
}
private void cabezera() {
HorizontalLayout encabezadoLayout = new HorizontalLayout();
encabezadoLayout.setWidthFull();
encabezadoLayout.setPadding(true);
// Obtener la fecha actual del sistema
LocalDate fechaSistema = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEEE d 'de' MMMM 'del' yyyy");
String fechaFormateada = fechaSistema.format(formatter);
Span fecha = new Span();
fecha.setText("Celaya, Guanajuato a " + fechaFormateada);
H2 presolicitud = new H2();
presolicitud.setText("Firma Solicitud");
encabezadoLayout.add(fecha);
encabezadoLayout.addAndExpand(new HorizontalLayout());
encabezadoLayout.add(presolicitud);
this.add(encabezadoLayout);
}
private void titulo() {
VerticalLayout tituloLayout = new VerticalLayout();
H2 lblTitulo = new H2();
lblTitulo.setText("JUNTA MUNICIPAL DE AGUA POTABLE Y ALCANTARILLADO DE CELAYA, GTO");
H3 lblSubtitulo = new H3();
lblSubtitulo.setText("A QUIEN CORRESPONDA");
tituloLayout.add(lblTitulo, lblSubtitulo);
this.add(tituloLayout);
}
private void body() {
VerticalLayout bodyLayout = new VerticalLayout();
H4 lblPresente = new H4();
lblPresente.setText("PRESENTE:");
H4 lblAtt = new H4();
lblAtt.setText("ATENTAMENTE:");
Paragraph parrafo1 = new Paragraph();
parrafo1.setText(
"Sirva este medio para solicitar de la manera más atenta, se me pueda otorgar facilidades para regularizar " +
"la cuenta del predio: PREDIOID, ubicado en: DOMCILIO, Rfcia: , a nombre de NOMBRE realizando alguna " +
"consideracion al adeudo para poder pagarlo de acuerdo a mis posibilidades económicas."
);
bodyLayout.add(lblPresente, parrafo1, lblAtt);
this.add(bodyLayout);
}
private void sign() {
VerticalLayout signLayout = new VerticalLayout();
SignaturePad userPad = new SignaturePad();
//userPad.setBackgroundColor("#FFFFFF");
userPad.setHeight("200px");
userPad.setPenColor("#000000");
userPad.getElement().getStyle().set("border", "1px solid black");
Span nombreCliente = new Span("Nombre del Solicitante");
Span predioCliente = new Span("Predio: ");
Span contratoCliente = new Span("Contrato: ");
signLayout.add(userPad, nombreCliente, predioCliente, contratoCliente);
signLayout.setSpacing(false);
signLayout.setAlignItems(Alignment.CENTER);
this.setSpacing(false);
this.add(signLayout);
}
}

BIN
src/main/resources/META-INF/resources/images/LOGO_24'27.png View File

Before After
Width: 861  |  Height: 424  |  Size: 60 KiB

Loading…
Cancel
Save