@ -9,12 +9,18 @@ import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.component.radiobutton.RadioButtonGroup ;
import com.vaadin.flow.component.radiobutton.RadioGroupVariant ;
import com.vaadin.flow.component.textfield.NumberField ;
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 com.vaadin.flow.server.VaadinSession ;
import de.f0rce.signaturepad.SignaturePad ;
import mx.gob.jumapacelaya.Services.GuardarSolicitudService ;
import mx.gob.jumapacelaya.Services.PredioService ;
import mx.gob.jumapacelaya.models.Predio ;
import mx.gob.jumapacelaya.models.Usuario ;
import oracle.net.aso.f ;
import java.time.LocalDate ;
import java.time.format.DateTimeFormatter ;
@ -26,7 +32,20 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory ;
@PageTitle ( "Estudio Socioeconomico" )
@Route ( value = "cuestionario" , layout = MainLayout . class )
public class CuestionarioView extends VerticalLayout {
public class CuestionarioView extends VerticalLayout implements BeforeEnterObserver {
Usuario usuario ;
@Override
public void beforeEnter ( BeforeEnterEvent event ) {
usuario = ( Usuario ) VaadinSession . getCurrent ( ) . getAttribute ( "usuarioSesion" ) ;
if ( usuario = = null ) {
event . forwardTo ( "/" ) ;
}
else
{
lblFirmaEje . setText ( "Firma [" + usuario . getNombre ( ) + "]" ) ;
}
}
private final PredioService predioService ;
private final GuardarSolicitudService guardarSolicitudService ;
@ -41,7 +60,9 @@ public class CuestionarioView extends VerticalLayout {
private RadioButtonGroup < Integer > opcionesZona = new RadioButtonGroup < > ( ) ;
private RadioButtonGroup < Integer > opcionesEscolar = new RadioButtonGroup < > ( ) ;
private RadioButtonGroup < Integer > opcionesEdad = new RadioButtonGroup < > ( ) ;
VerticalLayout botonLayout = new VerticalLayout ( ) ;
private Button btnGuardar = new Button ( ) ;
H5 lblFirmaEje = new H5 ( ) ;
public CuestionarioView ( PredioService predioService , GuardarSolicitudService guardarSolicitudService ) {
this . setSizeFull ( ) ;
@ -54,7 +75,6 @@ public class CuestionarioView extends VerticalLayout {
vFirmaCuest . setHeight ( "200px" ) ;
vFirmaCuest . setPenColor ( "#000000" ) ;
vFirmaCuest . getElement ( ) . getStyle ( ) . set ( "border" , "1px solid black" ) ;
vFirmaCuest . setVisible ( false ) ;
vFirmaCuest . setReadOnly ( false ) ;
vFirmaCuest . getStyle ( ) . remove ( "pointer-events" ) ;
@ -223,45 +243,45 @@ public class CuestionarioView extends VerticalLayout {
/* Columnas rangos */
/ / Columna Rangos Ingreso
Span rango1 = new Span ( "$6,223.20 en adelante" ) ;
Span rango2 = new Span ( "$ 2,500.01 a $ 6,223.19" ) ;
Span rango3 = new Span ( "$ 2,000.01 a $ 2,500.00" ) ;
Span rango4 = new Span ( "igual o menor a $ 2,000.00" ) ;
Span rango1 = new Span ( "1. $6,223.20 en adelante" ) ;
Span rango2 = new Span ( "2. $ 2,500.01 a $ 6,223.19" ) ;
Span rango3 = new Span ( "3. $ 2,000.01 a $ 2,500.00" ) ;
Span rango4 = new Span ( "4. igual o menor a $ 2,000.00" ) ;
/ / Columna Rangos Enfermedades
Span rangoenf1 = new Span ( "No padece enfermedad o discapacidad" ) ;
Span rangoenf2 = new Span ( "Quien padece, no aporta económicamente" ) ;
Span rangoenf3 = new Span ( "Quien padece, si aporta económicamente" ) ;
Span rangoenf1 = new Span ( "1. No padece enfermedad o discapacidad" ) ;
Span rangoenf2 = new Span ( "2. Quien padece, no aporta económicamente" ) ;
Span rangoenf3 = new Span ( "3. Quien padece, si aporta económicamente" ) ;
/ / Columna Rangos Dependientes
Span rangoDepen1 = new Span ( "No tiene dependientes" ) ;
Span rangoDepen2 = new Span ( "1 a 3" ) ;
Span rangoDepen3 = new Span ( "4 a 6" ) ;
Span rangoDepen4 = new Span ( "7 a 9" ) ;
Span rangoDepen1 = new Span ( "1. No tiene dependientes" ) ;
Span rangoDepen2 = new Span ( "2. 1 a 3" ) ;
Span rangoDepen3 = new Span ( "3. 4 a 6" ) ;
Span rangoDepen4 = new Span ( "4. 7 a 9" ) ;
/ / Columnas Rangos Acceso / Salud
Span rangoSalud1 = new Span ( "Particular" ) ;
Span rangoSalud2 = new Span ( "IMSS o ISSTE" ) ;
Span rangoSalud3 = new Span ( "ISAPEG" ) ;
Span rangoSalud4 = new Span ( "Ninguno" ) ;
Span rangoSalud1 = new Span ( "1. Particular" ) ;
Span rangoSalud2 = new Span ( "2. IMSS o ISSTE" ) ;
Span rangoSalud3 = new Span ( "3. ISAPEG" ) ;
Span rangoSalud4 = new Span ( "4. Ninguno" ) ;
/ / Columnas Rangos Zona habitacional
Span rangoZona1 = new Span ( "Excelente" ) ;
Span rangoZona2 = new Span ( "Buena" ) ;
Span rangoZona3 = new Span ( "Regular" ) ;
Span rangoZona4 = new Span ( "Mala" ) ;
Span rangoZona1 = new Span ( "1. Excelente" ) ;
Span rangoZona2 = new Span ( "2. Buena" ) ;
Span rangoZona3 = new Span ( "3. Regular" ) ;
Span rangoZona4 = new Span ( "4. Mala" ) ;
/ / Columna Rangos Escolaridad
Span rangoEscolar1 = new Span ( "Profesional" ) ;
Span rangoEscolar2 = new Span ( "Preparatoria" ) ;
Span rangoEscolar3 = new Span ( "Secundaria" ) ;
Span rangoEscolar4 = new Span ( "Primaria o menos" ) ;
Span rangoEscolar1 = new Span ( "1. Profesional" ) ;
Span rangoEscolar2 = new Span ( "2. Preparatoria" ) ;
Span rangoEscolar3 = new Span ( "3. Secundaria" ) ;
Span rangoEscolar4 = new Span ( "4. Primaria o menos" ) ;
/ / Columna Rangos Edad
Span rangoEdad1 = new Span ( "18 a 30" ) ;
Span rangoEdas2 = new Span ( "31 a 40" ) ;
Span rangoEdad3 = new Span ( "41 a 60" ) ;
Span rangoEdad4 = new Span ( "A partir de 61" ) ;
Span rangoEdad1 = new Span ( "1. 1 8 a 30" ) ;
Span rangoEdas2 = new Span ( "2. 31 a 40" ) ;
Span rangoEdad3 = new Span ( "3. 41 a 60" ) ;
Span rangoEdad4 = new Span ( "4. A partir de 61" ) ;
/* Columnas puntos */
/ / Columna puntos Ingresos
@ -383,19 +403,16 @@ public class CuestionarioView extends VerticalLayout {
String parentesco = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "txtParentesco" ) ;
String tipoIdentificacion = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "cmbTipoIdentificacion" ) ;
String numIdentificacion = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "numIdentificacion" ) ;
String usuarioId = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "usuarioId" ) ;
String firma = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "firma" ) ;
String email = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "email" ) ;
String estado = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "estado" ) ;
String detdesc = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "detdesc" ) ;
/ / String firmaUsuario = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "firmaUsuario" ) ;
String detCalif = ( String ) UI . getCurrent ( ) . getSession ( ) . getAttribute ( "detCalif" ) ;
logger . info ( "Predio: " + this . predio + " con tipo de solicitud: [" + tipoSolicitud + "] y nombre de Solicitante: " + nombreSolicitante ) ;
/ / Boton para guardar la solicitud
btnGuardar = new Button ( "Guardar" , event - > {
btnGuardar = new Button ( "Guardar Solicitud " , event - > {
boolean vGuardado = false ;
String vDetDesc = "" ;
String vDetCalif = "" ;
@ -419,24 +436,28 @@ public class CuestionarioView extends VerticalLayout {
parentesco , / / String parentesco
tipoIdentificacion , / / String tipoIdentificacion
numIdentificacion , / / String numIdentificacion
usuarioId , / / String usuarioId
usuario . getUsuario Id( ) , / / String usuarioId
firma , / / String firma
email , / / String email
"" , / / boolean vigencia ( ejemplo : true )
"" , / / Date vigencia
vEstado , / / String estado
vDetDesc , / / String detdesc
ejecutivoSignBase64 , / / String firmaUsuario
vDetCalif
) ;
if ( vGuardado )
{
UI . getCurrent ( ) . navigate ( "/" ) ;
}
} ) ;
btnGuardar . addThemeVariants ( ButtonVariant . LUMO_PRIMARY ) ;
btnGuardar . setVisible ( false ) ;
VerticalLayout botonLayout = new VerticalLayout ( ) ;
botonLayout . setAlignItems ( Alignment . CENTER ) ;
botonLayout . setWidthFull ( ) ;
botonLayout . setHeightFull ( ) ;
botonLayout . add ( vFirmaCuest , btnGuardar ) ;
botonLayout . add ( vFirmaCuest , btnGuardar , lblFirmaEje ) ;
botonLayout . setVisible ( false ) ;
/ / HorizontalLayout totalesLayout = new HorizontalLayout ( puntos , descuento , txtAgua , txtDrena , txtTrata ) ;
@ -474,7 +495,8 @@ public class CuestionarioView extends VerticalLayout {
Runnable actualizarVisibilidad = ( ) - > {
boolean todosSelccionados = allRadioButtonsSelected ( ) ;
btnGuardar . setVisible ( todosSelccionados ) ;
vFirmaCuest . setVisible ( todosSelccionados ) ;
if ( todosSelccionados ) {
botonLayout . setVisible ( true ) ;
}
} ;
}