Commit 3c50f2e1 by Juan José Rojas Rojas
parents 2ce7e33e 4e50e26f
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="f1229581-2498-4c33-b7b4-f715a5fbe428" name="Default Changelist" comment="" /> <list default="true" id="f1229581-2498-4c33-b7b4-f715a5fbe428" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/web/js/pages/bandejaPresidencia.js" beforeDir="false" afterPath="$PROJECT_DIR$/web/js/pages/bandejaPresidencia.js" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/.tmp/" /> <ignored path="$PROJECT_DIR$/.tmp/" />
<ignored path="$PROJECT_DIR$/temp/" /> <ignored path="$PROJECT_DIR$/temp/" />
<ignored path="$PROJECT_DIR$/tmp/" /> <ignored path="$PROJECT_DIR$/tmp/" />
...@@ -15,10 +18,11 @@ ...@@ -15,10 +18,11 @@
<session id="1890756217"> <session id="1890756217">
<usages-collector id="statistics.lifecycle.project"> <usages-collector id="statistics.lifecycle.project">
<counts> <counts>
<entry key="project.closed" value="2" /> <entry key="project.closed" value="4" />
<entry key="project.open.time.0" value="1" /> <entry key="project.open.time.0" value="1" />
<entry key="project.open.time.12" value="1" /> <entry key="project.open.time.12" value="1" />
<entry key="project.opened" value="2" /> <entry key="project.open.time.2" value="1" />
<entry key="project.opened" value="3" />
</counts> </counts>
</usages-collector> </usages-collector>
<usages-collector id="statistics.file.extensions.edit"> <usages-collector id="statistics.file.extensions.edit">
...@@ -117,12 +121,13 @@ ...@@ -117,12 +121,13 @@
<workItem from="1541626388621" duration="785000" /> <workItem from="1541626388621" duration="785000" />
<workItem from="1541776350897" duration="159000" /> <workItem from="1541776350897" duration="159000" />
<workItem from="1541776578549" duration="539000" /> <workItem from="1541776578549" duration="539000" />
<workItem from="1542033991862" duration="249000" /> <workItem from="1542033991862" duration="854000" />
<workItem from="1542041168541" duration="651000" />
</task> </task>
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="3471000" /> <option name="totallyTimeSpent" value="4727000" />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" /> <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
......
...@@ -30,26 +30,29 @@ public class DetalleLoteFichaDocenteMysqlDAO implements DetalleLoteFichaDocenteD ...@@ -30,26 +30,29 @@ public class DetalleLoteFichaDocenteMysqlDAO implements DetalleLoteFichaDocenteD
= "select " = "select "
+ "persona.codigo_persona codigoPersona, " + "persona.codigo_persona codigoPersona, "
+ "ficha.codigo_ficha codigoFicha, " + "ficha.codigo_ficha codigoFicha, "
+ "persona.apellido_paterno apellidoPaterno, " + "personal.apellidoPaterno apellidoPaterno, "
+ "persona.apellido_materno apellidoMaterno, " + "personal.apellidoMaterno apellidoMaterno, "
+ "persona.nombre nombre, " + "personal.nombre nombre, "
+ "persona.numero_documento numeroDocumento, " + "personal.dni numeroDocumento, "
+ "tipo_documento.descripcion_corta tipodocumento, " + "tipo_documento.descripcion_corta tipodocumento, "
+ "format(ficha_laboral.fecha_ingreso,'dd/MM/yyyy') fechaInicio, " + "date_format(ficha_laboral.fecha_ingreso,'%d/%m/%Y') fechaInicio, "
+ "upper(datename(mm, ficha_laboral.fecha_ingreso)) mes, " + "upper(monthname(ficha_laboral.fecha_ingreso)) mes, "
+ "sueldo_docente.codigo_area_cargo_tipo_pago as tipoPago, " + "sueldo_docente.codigo_area_cargo_tipo_pago as tipoPago, "
+ "isnull(sueldo_docente.costo_a,'') costoADocente, " + "ifnull(sueldo_docente.costo_a,'') costoADocente, "
+ "isnull(sueldo_docente.costo_b,'') costoBDocente, " + "ifnull(sueldo_docente.costo_b,'') costoBDocente, "
+ "isnull(sueldo_docente.costo_c,'') costoCDocente, " + "ifnull(sueldo_docente.costo_c,'') costoCDocente, "
+ "isnull(sueldo_docente.costo_mensual,'') costoMensualDocente " + "ifnull(sueldo_docente.costo_mensual,'') costoMensualDocente, "
+ "FROM detalle_ficha_lote " + "ifnull(sueldo_administrativo.costo_mensual,'') costoMensualDocente "
+ "inner join ficha_laboral ON ficha_laboral.codigo_ficha = detalle_ficha_lote.codigo_ficha " + "FROM ficha_laboral "
+ "inner join ficha ON ficha.codigo_ficha = ficha_laboral.codigo_ficha " + "inner join ficha ON ficha.codigo_ficha = ficha_laboral.codigo_ficha "
+ "inner join persona ON persona.codigo_persona = ficha.codigo_persona " + "inner join estado_ficha on estado_ficha.codigo_ficha = ficha.codigo_ficha "
+ "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = persona.codigo_tipo_documento " + "inner join personal ON personal.codper = ficha.codigo_persona "
+ "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = personal.codigo_tipo_documento "
+ "left join sueldo_docente ON sueldo_docente.codigo_ficha = ficha_laboral.codigo_ficha " + "left join sueldo_docente ON sueldo_docente.codigo_ficha = ficha_laboral.codigo_ficha "
+ "where detalle_ficha_lote.estado_registro = 1 " + "left join sueldo_administrativo ON sueldo_administrativo.codigo_ficha = ficha_laboral.codigo_ficha "
+ "and detalle_ficha_lote.codigo_ficha_lote = ?"; + "where estado_ficha.estado_registro = 1 "
+ "and estado_ficha.codigo_tipo_estado_ficha = 4 "
+ "and sueldo_docente.estado_registro = 1 ";
cnx = MysqlDAOFactory.obtenerConexion(Variables.MYSQL_NUEVO_BD_NAME); cnx = MysqlDAOFactory.obtenerConexion(Variables.MYSQL_NUEVO_BD_NAME);
ps = cnx.prepareStatement(sql); ps = cnx.prepareStatement(sql);
ps.setInt(1, loteFicha.getCodigoFichaLote()); ps.setInt(1, loteFicha.getCodigoFichaLote());
...@@ -330,27 +333,27 @@ public class DetalleLoteFichaDocenteMysqlDAO implements DetalleLoteFichaDocenteD ...@@ -330,27 +333,27 @@ public class DetalleLoteFichaDocenteMysqlDAO implements DetalleLoteFichaDocenteD
cnx = MysqlDAOFactory.obtenerConexion(Variables.MYSQL_NUEVO_BD_NAME); cnx = MysqlDAOFactory.obtenerConexion(Variables.MYSQL_NUEVO_BD_NAME);
sql = "" sql = ""
+ "select " + "select "
+ "persona.codigo_persona codigoPersona, " + "personal.codper codigoPersona, "
+ "ficha.codigo_ficha codigoFicha, " + "ficha.codigo_ficha codigoFicha, "
+ "persona.apellido_paterno apellidoPaterno, " + "personal.apellidoPaterno apellidoPaterno, "
+ "persona.apellido_materno apellidoMaterno, " + "personal.apellidoMaterno apellidoMaterno, "
+ "persona.nombre nombre, " + "personal.nombre nombre, "
+ "persona.numero_documento numeroDocumento, " + "personal.dni numeroDocumento, "
+ "sueldo_administrativo.sueldo_escalafon escalafon, " + "sueldo_administrativo.sueldo_escalafon escalafon, "
+ "sueldo_administrativo.sueldo_mensual costoMensual, " + "sueldo_administrativo.sueldo_mensual costoMensual, "
+ "tipo_documento.descripcion_corta tipodocumento, " + "tipo_documento.descripcion_corta tipodocumento, "
+ "format(ficha_laboral.fecha_ingreso,'dd/MM/yyyy') fechaInicio, " + "date_format(ficha_laboral.fecha_ingreso,'%d/%m/%Y') fechaInicio, "
+ "upper(datename(mm, ficha_laboral.fecha_ingreso)) mes, " + "upper(monthname(ficha_laboral.fecha_ingreso)) mes, "
+ "sueldo_administrativo.codigo_area_cargo_tipo_pago codigoAreaCargoTipoPago " + "sueldo_administrativo.codigo_area_cargo_tipo_pago codigoAreaCargoTipoPago "
+ "FROM detalle_ficha_lote " + "FROM ficha_laboral "
+ "inner join ficha_laboral ON ficha_laboral.codigo_ficha = detalle_ficha_lote.codigo_ficha "
+ "inner join ficha ON ficha.codigo_ficha = ficha_laboral.codigo_ficha " + "inner join ficha ON ficha.codigo_ficha = ficha_laboral.codigo_ficha "
+ "inner join persona ON persona.codigo_persona = ficha.codigo_persona " + "inner join estado_ficha on estado_ficha.codigo_ficha = ficha.codigo_ficha "
+ "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = persona.codigo_tipo_documento " + "inner join personal ON personal.codper = ficha.codigo_persona "
+ "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = personal.codigo_tipo_documento "
+ "left join sueldo_administrativo ON sueldo_administrativo.codigo_ficha = ficha_laboral.codigo_ficha " + "left join sueldo_administrativo ON sueldo_administrativo.codigo_ficha = ficha_laboral.codigo_ficha "
+ "where detalle_ficha_lote.estado_registro = 1 " + "where estado_ficha.estado_registro = 1 "
+ "and detalle_ficha_lote.codigo_ficha_lote = ? " + "and estado_ficha.codigo_tipo_estado_ficha = 4 "
+ "and sueldo_administrativo.estado_registro = 1;"; + "and sueldo_administrativo.estado_registro = 1 ";
ps = cnx.prepareStatement(sql); ps = cnx.prepareStatement(sql);
ps.setString(1, data.getString("codigoFichaLote")); ps.setString(1, data.getString("codigoFichaLote"));
rs = ps.executeQuery(); rs = ps.executeQuery();
......
...@@ -891,7 +891,7 @@ public class FichaMysqlDAO implements FichaDAO { ...@@ -891,7 +891,7 @@ public class FichaMysqlDAO implements FichaDAO {
} }
// OBTENER ULTIMO ESTADO DE FICHA ACTIVO // OBTENER ULTIMO ESTADO DE FICHA ACTIVO
sql = "SELECT " sql = "SELECT "
+ " codigo_estado_ficha codigoEstadoFicha " + " codigo_estado_ficha codigoEstadoFicha "
+ "FROM " + "FROM "
...@@ -1640,52 +1640,52 @@ public class FichaMysqlDAO implements FichaDAO { ...@@ -1640,52 +1640,52 @@ public class FichaMysqlDAO implements FichaDAO {
JOdatosAdministrativos.put("tipoPago", da.getTipoPago()); JOdatosAdministrativos.put("tipoPago", da.getTipoPago());
JOdatosAdministrativos.put("tipoFicha", da.getTipoFicha()); JOdatosAdministrativos.put("tipoFicha", da.getTipoFicha());
if (da.getTipoFicha().equals("ADMINISTRATIVO")) { if (da.getTipoFicha().equals("ADMINISTRATIVO")) {
sql = "" sql = ""
+ "select " + "select "
+ "sueldo_administrativo.sueldo_escalafon sueldoEscalafon, " + "sueldo_administrativo.sueldo_escalafon sueldoEscalafon, "
+ "sueldo_administrativo.sueldo_mensual sueldoMensual, " + "sueldo_administrativo.sueldo_mensual sueldoMensual, "
+ "isnull(sueldo_administrativo.sueldo_presidencia, 0.00) sueldoPresidencia, " + "ifnull(sueldo_administrativo.sueldo_presidencia, 0.00) sueldoPresidencia, "
+ "sueldo_administrativo.observacion, " + "sueldo_administrativo.observacion, "
+ "case " + "case "
+ " when sueldo_administrativo.estado_registro = 1 then 'COSTOS MODIFICADOS POR PRESIDENCIA' " + " when sueldo_administrativo.estado_registro = 1 then 'COSTOS MODIFICADOS POR PRESIDENCIA' "
+ " when sueldo_administrativo.estado_registro = 0 then 'COSTOS ANTERIORES' " + " when sueldo_administrativo.estado_registro = 0 then 'COSTOS ANTERIORES' "
+ "end descripcionEstado, " + "end descripcionEstado, "
+ "sueldo_administrativo.estado_registro estado , " + "sueldo_administrativo.estado_registro estado , "
+ "format(sueldo_administrativo.fecha_registro, 'dd/MM/yyyy') + ' ' + stuff(replace(right(convert(varchar(19), sueldo_administrativo.fecha_registro, 0), 7), ' ', '0'), 6, 0, ' ') fechaRegistro " + "format(sueldo_administrativo.fecha_registro, 'dd/MM/yyyy') + ' ' + stuff(replace(right(convert(varchar(19), sueldo_administrativo.fecha_registro, 0), 7), ' ', '0'), 6, 0, ' ') fechaRegistro "
+ "from sueldo_administrativo " + "from sueldo_administrativo "
+ "where sueldo_administrativo.codigo_ficha = ?"; + "where sueldo_administrativo.codigo_ficha = ?";
psCostos = conexion.prepareStatement(sql); psCostos = conexion.prepareStatement(sql);
psCostos.setInt(1, f.getCodigoFicha()); psCostos.setInt(1, f.getCodigoFicha());
rsCostos = psCostos.executeQuery(); rsCostos = psCostos.executeQuery();
while (rsCostos.next()) { while (rsCostos.next()) {
da.setSueldoEscalafon(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoEscalafon"))); da.setSueldoEscalafon(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoEscalafon")));
da.setSueldoMensual(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoMensual"))); da.setSueldoMensual(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoMensual")));
da.setSueldoPresidencia(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoPresidencia"))); da.setSueldoPresidencia(CurrencyFormat.getCustomCurrency(rsCostos.getDouble("sueldoPresidencia")));
da.setObservacionAdministrativo(rsCostos.getString("observacion")); da.setObservacionAdministrativo(rsCostos.getString("observacion"));
da.setDescripcionEstadoAdministrativo(rsCostos.getString("descripcionEstado")); da.setDescripcionEstadoAdministrativo(rsCostos.getString("descripcionEstado"));
da.setEstadoAdministrativo(rsCostos.getString("estado")); da.setEstadoAdministrativo(rsCostos.getString("estado"));
da.setFechaRegistroAdministrativo(rsCostos.getString("fechaRegistro")); da.setFechaRegistroAdministrativo(rsCostos.getString("fechaRegistro"));
JSONObject objCostosAdministrativo = new JSONObject(da); JSONObject objCostosAdministrativo = new JSONObject(da);
JAlistarDatosAdministrativos.put(objCostosAdministrativo); JAlistarDatosAdministrativos.put(objCostosAdministrativo);
} }
} else if (da.getTipoFicha().equals("DOCENTE")) { } else if (da.getTipoFicha().equals("DOCENTE")) {
sql = "" sql = ""
+ "select " + "select "
+ "isnull(sueldo_docente.costo_mensual, 0.00) costoMensual, " + "ifnull(sueldo_docente.costo_mensual, 0.00) costoMensual, "
+ "isnull(sueldo_docente.costo_a, 0.00) costoA, " + "ifnull(sueldo_docente.costo_a, 0.00) costoA, "
+ "isnull(sueldo_docente.costo_b, 0.00) costoB, " + "ifnull(sueldo_docente.costo_b, 0.00) costoB, "
+ "isnull(sueldo_docente.costo_c, 0.00) costoC, " + "ifnull(sueldo_docente.costo_c, 0.00) costoC, "
+ "sueldo_docente.observacion, " + "sueldo_docente.observacion, "
+ "case " + "case "
+ " when sueldo_docente.estado_registro = 1 then 'COSTOS MODIFICADOS POR PRESIDENCIA' " + " when sueldo_docente.estado_registro = 1 then 'COSTOS MODIFICADOS POR PRESIDENCIA' "
+ " when sueldo_docente.estado_registro = 0 then 'COSTOS ANTERIORES' " + " when sueldo_docente.estado_registro = 0 then 'COSTOS ANTERIORES' "
+ "end descripcionEstado, " + "end descripcionEstado, "
+ "sueldo_docente.estado_registro estado ," + "sueldo_docente.estado_registro estado ,"
+ "format(sueldo_docente.fecha_registro, 'dd/MM/yyyy') + ' ' + stuff(replace(right(convert(varchar(19), sueldo_docente.fecha_registro, 0), 7), ' ', '0'), 6, 0, ' ') fechaRegistro " + "format(sueldo_docente.fecha_registro, 'dd/MM/yyyy') + ' ' + stuff(replace(right(convert(varchar(19), sueldo_docente.fecha_registro, 0), 7), ' ', '0'), 6, 0, ' ') fechaRegistro "
+ "from sueldo_docente " + "from sueldo_docente "
+ "where sueldo_docente.codigo_ficha = ?"; + "where sueldo_docente.codigo_ficha = ?";
psCostos = conexion.prepareStatement(sql); psCostos = conexion.prepareStatement(sql);
psCostos.setInt(1, f.getCodigoFicha()); psCostos.setInt(1, f.getCodigoFicha());
......
...@@ -44,7 +44,7 @@ public class LoteFichaMysqlDAO implements LoteFichaDAO { ...@@ -44,7 +44,7 @@ public class LoteFichaMysqlDAO implements LoteFichaDAO {
+ "cargo.nombre nombreCargo, " + "cargo.nombre nombreCargo, "
+ "sueldo_administrativo.sueldo_escalafon sueldoEscalafonAdministrativo, " + "sueldo_administrativo.sueldo_escalafon sueldoEscalafonAdministrativo, "
+ "sueldo_administrativo.sueldo_mensual sueldoMensualAdministrativo, " + "sueldo_administrativo.sueldo_mensual sueldoMensualAdministrativo, "
+ "isnull(sueldo_administrativo.observacion,'') observacionAdministrativo, " + "ifnull(sueldo_administrativo.observacion,'') observacionAdministrativo, "
+ "sueldo_docente.costo_mensual costoMensualDocente, " + "sueldo_docente.costo_mensual costoMensualDocente, "
+ "sueldo_docente.costo_a costoADocente, " + "sueldo_docente.costo_a costoADocente, "
+ "sueldo_docente.costo_b costoBDocente, " + "sueldo_docente.costo_b costoBDocente, "
...@@ -163,7 +163,7 @@ public class LoteFichaMysqlDAO implements LoteFichaDAO { ...@@ -163,7 +163,7 @@ public class LoteFichaMysqlDAO implements LoteFichaDAO {
+ " 1 DESC " + " 1 DESC "
+ "LIMIT " + length; + "LIMIT " + length;
ps = cnx.prepareStatement(sql); ps = cnx.prepareStatement(sql);
rs = ps.executeQuery(); rs = ps.executeQuery();
while (rs.next()) { while (rs.next()) {
......
...@@ -302,35 +302,35 @@ public class ReportePersonalMysqlDAO implements ReportePersonalDAO { ...@@ -302,35 +302,35 @@ public class ReportePersonalMysqlDAO implements ReportePersonalDAO {
String sql = "" String sql = ""
+ "select " + "select "
+ "persona.codigo_persona codigoPersona, " + "persona.codigo_persona codigoPersona, "
+ "isnull(persona.apellido_paterno, '-') apellidoPaterno, " + "ifnull(persona.apellido_paterno, '-') apellidoPaterno, "
+ "isnull(persona.apellido_materno, '-') apellidoMaterno, " + "ifnull(persona.apellido_materno, '-') apellidoMaterno, "
+ "isnull(persona.nombre, '-') nombre, " + "ifnull(persona.nombre, '-') nombre, "
+ "isnull(tipo_documento.descripcion_corta, '-') tipoDocumento, " + "ifnull(tipo_documento.descripcion_corta, '-') tipoDocumento, "
+ "isnull(persona.numero_documento, '-') numeroDocumento, " + "ifnull(persona.numero_documento, '-') numeroDocumento, "
+ "isnull(persona.sexo, '-') sexo, " + "ifnull(persona.sexo, '-') sexo, "
+ "isnull(estado_civil.nombre, '-') estadoCivil, " + "ifnull(estado_civil.nombre, '-') estadoCivil, "
+ "isnull(convert(varchar, persona.fecha_nacimiento, 103), '-') fechaNacimiento, " + "ifnull(convert(varchar, persona.fecha_nacimiento, 103), '-') fechaNacimiento, "
+ "isnull(nacionalidad.pais, '-') nacionalidad, " + "ifnull(nacionalidad.pais, '-') nacionalidad, "
+ "case when persona.codigo_nacionalidad = 144 then (select ubigeo.nombre_departamento + ' - ' + ubigeo.nombre_provincia + ' - ' + ubigeo.nombre_distrito from ubigeo where ubigeo.codigo_ubigeo = persona.codigo_ubigeo_nacimiento) else '-' end ubigeoNacimiento, " + "case when persona.codigo_nacionalidad = 144 then (select ubigeo.nombre_departamento + ' - ' + ubigeo.nombre_provincia + ' - ' + ubigeo.nombre_distrito from ubigeo where ubigeo.codigo_ubigeo = persona.codigo_ubigeo_nacimiento) else '-' end ubigeoNacimiento, "
+ "isnull(persona.direccion_documento, '-') direccionDocumento, " + "ifnull(persona.direccion_documento, '-') direccionDocumento, "
+ "case when persona.telefono_fijo is null or persona.telefono_fijo = '' then '-' else persona.telefono_fijo end telefonoFijo, " + "case when persona.telefono_fijo is null or persona.telefono_fijo = '' then '-' else persona.telefono_fijo end telefonoFijo, "
+ "case when persona.telefono_movil is null or persona.telefono_movil = '' then '-' else persona.telefono_movil end telefonoMovil, " + "case when persona.telefono_movil is null or persona.telefono_movil = '' then '-' else persona.telefono_movil end telefonoMovil, "
+ "persona.correo correoPersonal, " + "persona.correo correoPersonal, "
+ "isnull(persona.correo_corporativo, '-') correoCorporativo, " + "ifnull(persona.correo_corporativo, '-') correoCorporativo, "
+ "isnull((select ubigeo.nombre_departamento + ' - ' + ubigeo.nombre_provincia + ' - ' + ubigeo.nombre_distrito from ubigeo where ubigeo.codigo_ubigeo = persona.codigo_ubigeo_residencia), '-') ubigeoResidencia, " + "ifnull((select ubigeo.nombre_departamento + ' - ' + ubigeo.nombre_provincia + ' - ' + ubigeo.nombre_distrito from ubigeo where ubigeo.codigo_ubigeo = persona.codigo_ubigeo_residencia), '-') ubigeoResidencia, "
+ "isnull(persona.direccion_residencia, '-') direccionResidencia, " + "ifnull(persona.direccion_residencia, '-') direccionResidencia, "
+ "isnull(persona.latitud_residencia + ' , ' + persona.longitud_residencia, '-') coordenadasDireccionResidencia, " + "ifnull(persona.latitud_residencia + ' , ' + persona.longitud_residencia, '-') coordenadasDireccionResidencia, "
+ "isnull(persona.foto, '-') foto, " + "ifnull(persona.foto, '-') foto, "
+ "rtrim(ltrim(isnull(persona.ruc, '-'))) ruc," + "rtrim(ltrim(ifnull(persona.ruc, '-'))) ruc,"
+ "case when persona.fondo_pension_activo = 1 then 'SI' when persona.fondo_pension_activo is null then '-' else 'NO' end tieneFondoPension, " + "case when persona.fondo_pension_activo = 1 then 'SI' when persona.fondo_pension_activo is null then '-' else 'NO' end tieneFondoPension, "
+ "isnull(fondo_pension.descripcion_corta, '-') fondoPension, " + "ifnull(fondo_pension.descripcion_corta, '-') fondoPension, "
+ "isnull(persona.enlace_alfresco, '-') enlaceAlfresco, " + "ifnull(persona.enlace_alfresco, '-') enlaceAlfresco, "
+ "case when persona.is_default_mail = 1 then 'NO' when persona.is_default_mail is null then '-' else 'SI' end tieneCorreo, " + "case when persona.is_default_mail = 1 then 'NO' when persona.is_default_mail is null then '-' else 'SI' end tieneCorreo, "
+ "isnull(sede.nombre, '-') sede, " + "ifnull(sede.nombre, '-') sede, "
+ "isnull(area.nombre, '-') area, " + "ifnull(area.nombre, '-') area, "
+ "isnull(cargo.nombre, '-') cargo, " + "ifnull(cargo.nombre, '-') cargo, "
+ "isnull(convert(varchar, ficha_laboral.fecha_ingreso, 103), '-') fechaIngreso, " + "ifnull(convert(varchar, ficha_laboral.fecha_ingreso, 103), '-') fechaIngreso, "
+ "isnull(convert(varchar, ficha_laboral.fecha_fin, 103), '-') fechaTermino, " + "ifnull(convert(varchar, ficha_laboral.fecha_fin, 103), '-') fechaTermino, "
+ "(select count(1) from carga_familiar where numero_documento in (select p.numero_documento from persona p where p.numero_documento = persona.numero_documento )) cantidadParentesco " + "(select count(1) from carga_familiar where numero_documento in (select p.numero_documento from persona p where p.numero_documento = persona.numero_documento )) cantidadParentesco "
+ "from persona " + "from persona "
+ "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = persona.codigo_tipo_documento " + "inner join tipo_documento ON tipo_documento.codigo_tipo_documento = persona.codigo_tipo_documento "
......
...@@ -154,7 +154,7 @@ public class TrabajadorResponsableMysqlDAO implements TrabajadorResponsableDAO { ...@@ -154,7 +154,7 @@ public class TrabajadorResponsableMysqlDAO implements TrabajadorResponsableDAO {
// + "sede.nombre nombreSede, " // + "sede.nombre nombreSede, "
// + "area.nombre nombreArea, " // + "area.nombre nombreArea, "
// + "cargo.nombre nombreCargo, " // + "cargo.nombre nombreCargo, "
// + "isnull(trabajador_responsable.correo,'responsablesacooliveros@yopmail.com') correo " // + "ifnull(trabajador_responsable.correo,'responsablesacooliveros@yopmail.com') correo "
// + "from trabajador_responsable " // + "from trabajador_responsable "
// + "inner join sede_area on trabajador_responsable.codigo_sede_area = sede_area.codigo_sede_area " // + "inner join sede_area on trabajador_responsable.codigo_sede_area = sede_area.codigo_sede_area "
// + "inner join sede on sede_area.codigo_sede = sede.codigo_sede " // + "inner join sede on sede_area.codigo_sede = sede.codigo_sede "
......
...@@ -14,142 +14,142 @@ import trismegistoplanilla.servicesMysql.LoteFichaService; ...@@ -14,142 +14,142 @@ import trismegistoplanilla.servicesMysql.LoteFichaService;
import trismegistoplanilla.utilities.ParamsValidation; import trismegistoplanilla.utilities.ParamsValidation;
public class LoteFichaServlet extends HttpServlet { public class LoteFichaServlet extends HttpServlet {
@Override @Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String param = request.getParameter("accion"); String param = request.getParameter("accion");
switch (param) { switch (param) {
case "listarFichasDT": case "listarFichasDT":
listarFichasDT(request, response); listarFichasDT(request, response);
break; break;
case "registrarLote": case "registrarLote":
registrarLote(request, response); registrarLote(request, response);
break; break;
case "listarLoteDT": case "listarLoteDT":
listarLoteDT(request, response); listarLoteDT(request, response);
break; break;
case "listarLoteGeneralDT": case "listarLoteGeneralDT":
listarLoteGeneralDT(request, response); listarLoteGeneralDT(request, response);
break; break;
case "listarFichasGeneral": case "listarFichasGeneral":
listarFichasGeneral(request, response); listarFichasGeneral(request, response);
break; break;
default: default:
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
JSONObject respuesta = new JSONObject(); JSONObject respuesta = new JSONObject();
respuesta.put("status", false) respuesta.put("status", false)
.put("message", "No existe la url solicitada") .put("message", "No existe la url solicitada")
.put("data", ""); .put("data", "");
out.print(respuesta); out.print(respuesta);
break; break;
} }
} }
private void listarFichasDT(HttpServletRequest request, HttpServletResponse response) throws IOException { private void listarFichasDT(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
LoteFichaService service = new LoteFichaService(); LoteFichaService service = new LoteFichaService();
String objJson = request.getParameter("json"); String objJson = request.getParameter("json");
JSONObject json = new JSONObject(objJson); JSONObject json = new JSONObject(objJson);
String draw = request.getParameter("draw"); String draw = request.getParameter("draw");
String length = request.getParameter("length"); String length = request.getParameter("length");
String start = request.getParameter("start"); String start = request.getParameter("start");
JSONObject jsonObjListarFichasDT = service.listarFichasDT(draw, length, start, json); JSONObject jsonObjListarFichasDT = service.listarFichasDT(draw, length, start, json);
out.print(jsonObjListarFichasDT); out.print(jsonObjListarFichasDT);
} }
private void registrarLote(HttpServletRequest request, HttpServletResponse response) throws IOException { private void registrarLote(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
LoteFichaService service = new LoteFichaService(); LoteFichaService service = new LoteFichaService();
String jsonObj = request.getParameter("json"); String jsonObj = request.getParameter("json");
if (jsonObj != null) { if (jsonObj != null) {
HttpSession sesion = request.getSession(); HttpSession sesion = request.getSession();
UsuarioBean usuario = (UsuarioBean) sesion.getAttribute("usuario"); UsuarioBean usuario = (UsuarioBean) sesion.getAttribute("usuario");
JSONObject jsonObjRegistrarLote = new JSONObject(jsonObj); JSONObject jsonObjRegistrarLote = new JSONObject(jsonObj);
if (validarRegistroLoteJson(jsonObjRegistrarLote)) { if (validarRegistroLoteJson(jsonObjRegistrarLote)) {
JSONObject jsonReturn = service.registrarLote(jsonObjRegistrarLote, usuario); JSONObject jsonReturn = service.registrarLote(jsonObjRegistrarLote, usuario);
out.print(jsonReturn); out.print(jsonReturn);
} else { } else {
out.print("Ha ocurrido un error. Al parecer esta infringiendo las leyes de los values en los inputs."); out.print("Ha ocurrido un error. Al parecer esta infringiendo las leyes de los values en los inputs.");
} }
} else { } else {
out.print("Ha ocurrido un error. Al parecer esta infringiendo las leyes de los values en los inputs."); out.print("Ha ocurrido un error. Al parecer esta infringiendo las leyes de los values en los inputs.");
} }
} }
private void listarLoteDT(HttpServletRequest request, HttpServletResponse response) throws IOException { private void listarLoteDT(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
LoteFichaService service = new LoteFichaService(); LoteFichaService service = new LoteFichaService();
String draw = request.getParameter("draw"); String draw = request.getParameter("draw");
String length = request.getParameter("length"); String length = request.getParameter("length");
String start = request.getParameter("start"); String start = request.getParameter("start");
String search = request.getParameter("search"); String search = request.getParameter("search");
if (search != null) { if (search != null) {
JSONObject jsonObjListarLoteDT = service.listarLoteDT(draw, length, start, search); JSONObject jsonObjListarLoteDT = service.listarLoteDT(draw, length, start, search);
out.print(jsonObjListarLoteDT); out.print(jsonObjListarLoteDT);
} else { } else {
out.print("Los datos llegaron nulos"); out.print("Los datos llegaron nulos");
} }
} }
private boolean validarRegistroLoteJson(JSONObject json) { private boolean validarRegistroLoteJson(JSONObject json) {
JSONArray detallelote = json.getJSONArray("detallelote"); JSONArray detallelote = json.getJSONArray("detallelote");
if (detallelote.length() == 0) { if (detallelote.length() == 0) {
return false; return false;
} }
if (!ParamsValidation.validaSoloLetras(json.getString("tipoLote"))) { if (!ParamsValidation.validaSoloLetras(json.getString("tipoLote"))) {
return false; return false;
} }
for (int i = 0; i < detallelote.length(); i++) { for (int i = 0; i < detallelote.length(); i++) {
if (!detallelote.getJSONObject(i).getString("tipoFicha").equals(json.getString("tipoLote"))) { if (!detallelote.getJSONObject(i).getString("tipoFicha").equals(json.getString("tipoLote"))) {
return false; return false;
} }
} }
return true; return true;
} }
private void listarLoteGeneralDT(HttpServletRequest request, HttpServletResponse response) throws IOException { private void listarLoteGeneralDT(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
String draw = request.getParameter("draw"); String draw = request.getParameter("draw");
String length = request.getParameter("length"); String length = request.getParameter("length");
String start = request.getParameter("start"); String start = request.getParameter("start");
JSONObject data = new JSONObject(request.getParameter("json")); JSONObject data = new JSONObject(request.getParameter("json"));
JSONObject req = new JSONObject(); JSONObject req = new JSONObject();
req.put("draw", draw); req.put("draw", draw);
req.put("length", length); req.put("length", length);
req.put("start", start); req.put("start", start);
req.put("data", data); req.put("data", data);
LoteFichaService service = new LoteFichaService(); LoteFichaService service = new LoteFichaService();
JSONObject respuesta = service.listarLoteGeneralDT(req); JSONObject respuesta = service.listarLoteGeneralDT(req);
out.print(respuesta); out.print(respuesta);
} }
private void listarFichasGeneral(HttpServletRequest request, HttpServletResponse response) throws IOException { private void listarFichasGeneral(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("application/json"); response.setContentType("application/json");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
LoteFichaService service = new LoteFichaService(); LoteFichaService service = new LoteFichaService();
JSONObject json = new JSONObject(request.getParameter("json")); JSONObject json = new JSONObject(request.getParameter("json"));
JSONObject respuesta = service.listarFichasGeneral(json); JSONObject respuesta = service.listarFichasGeneral(json);
out.print(respuesta); out.print(respuesta);
} }
} }
/* global jAlert */ /* global jAlert */
$(function () { $(function () {
inicializarComponentes(); inicializarComponentes();
configuracionComponentes(); configuracionComponentes();
listarFichas().then(() => { listarFichas().then(() => {
validarCheckBox() validarCheckBox()
}) })
configuracionCheckBox(); configuracionCheckBox();
configuracionComboFiltrado(); configuracionComboFiltrado();
}); });
...@@ -15,365 +15,365 @@ let fichas = []; ...@@ -15,365 +15,365 @@ let fichas = [];
let tipoLote = ""; let tipoLote = "";
let flagGenerarLote = false; let flagGenerarLote = false;
function listarFichas() { function listarFichas() {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
defaultConfigDataTable(); defaultConfigDataTable();
$('#tblFichasPendientes').DataTable().destroy() $('#tblFichasPendientes').DataTable().destroy()
$('#tblFichasPendientes').DataTable({ $('#tblFichasPendientes').DataTable({
ajax: { ajax: {
url: '../LoteFichaServlet', url: '../LoteFichaServlet',
type: 'POST', type: 'POST',
dataType: 'json', dataType: 'json',
data: { data: {
accion: 'listarFichasDT', accion: 'listarFichasDT',
json: JSON.stringify(obtenerDataFiltro()) json: JSON.stringify(obtenerDataFiltro())
} }
}, },
processing: true, processing: true,
serverSide: true, serverSide: true,
columnDefs: [], columnDefs: [],
iDisplayLength: 20, iDisplayLength: 20,
columns: [ columns: [
{ {
data: null, data: null,
render: function () { render: function () {
return '<input type="checkbox" class="control-primary checkbox-body">'; return '<input type="checkbox" class="control-primary checkbox-body">';
} }
}, },
{ {
data: null, data: null,
render: function (data) { render: function (data) {
return `${data.apellidoPaterno} ${data.apellidoMaterno}, ${data.nombre}`; return `${data.apellidoPaterno} ${data.apellidoMaterno}, ${data.nombre}`;
} }
}, },
{ {
data: 'numeroDocumento', data: 'numeroDocumento',
className: 'text-center' className: 'text-center'
}, },
{ {
data: 'nombreSede' data: 'nombreSede'
}, },
{ {
data: 'nombreArea' data: 'nombreArea'
}, },
{ {
data: 'nombreCargo' data: 'nombreCargo'
}, },
{ {
data: null, data: null,
className: 'text-center', className: 'text-center',
render: function (data) { render: function (data) {
if (data.tipoFicha === 'A') { if (data.tipoFicha === 'A') {
return `<b> S/. ${data.sueldoMensualAdministrativo} </b>`; return `<b> S/. ${data.sueldoMensualAdministrativo} </b>`;
} else if (data.tipoFicha === 'D') { } else if (data.tipoFicha === 'D') {
return data.costoMensualDocente !== '0.00' ? `<b> S/. ${data.costoMensualDocente} </b>` : ' - '; return data.costoMensualDocente !== '0.00' ? `<b> S/. ${data.costoMensualDocente} </b>` : ' - ';
} }
} }
}, },
{ {
data: 'costoADocente', data: 'costoADocente',
className: 'text-center', className: 'text-center',
render: function (data) { render: function (data) {
return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - '; return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - ';
} }
}, },
{ {
data: 'costoBDocente', data: 'costoBDocente',
className: 'text-center', className: 'text-center',
render: function (data) { render: function (data) {
return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - '; return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - ';
} }
}, },
{ {
data: 'costoCDocente', data: 'costoCDocente',
className: 'text-center', className: 'text-center',
render: function (data) { render: function (data) {
return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - '; return data !== '0.00' ? `<b> S/. ${data} </b>` : ' - ';
} }
} }
], ],
fnDrawCallback: function (settings) { fnDrawCallback: function (settings) {
$(".control-primary").uniform({ $(".control-primary").uniform({
radioClass: 'choice', radioClass: 'choice',
wrapperClass: 'border-primary-600 text-primary-800 div-checkbox-body' wrapperClass: 'border-primary-600 text-primary-800 div-checkbox-body'
}); });
setearChecks(); setearChecks();
if (fichas.length !== $('#tblFichasPendientes').DataTable().page.info().recordsTotal) { if (fichas.length !== $('#tblFichasPendientes').DataTable().page.info().recordsTotal) {
$(".checkbox-head").prop('checked', false); $(".checkbox-head").prop('checked', false);
$('.div-checkbox-head span').removeClass('checked'); $('.div-checkbox-head span').removeClass('checked');
} }
}, },
createdRow: function (row, data, index) { createdRow: function (row, data, index) {
let tipoFicha = data.tipoFicha; // "A" ó "D" let tipoFicha = data.tipoFicha; // "A" ó "D"
if (tipoFicha === "A") { if (tipoFicha === "A") {
$(row).addClass('info'); $(row).addClass('info');
} else if (tipoFicha === "D") { } else if (tipoFicha === "D") {
$(row).addClass('warning'); $(row).addClass('warning');
} }
}, },
fnInitComplete: function (settings, data) { fnInitComplete: function (settings, data) {
resolve(data) resolve(data)
} }
}) })
}) })
} }
function obtenerDataFiltro() { function obtenerDataFiltro() {
let json = { let json = {
criterio: parseInt($('#cboCriterioFiltroFicha').val()) criterio: parseInt($('#cboCriterioFiltroFicha').val())
}; };
return json; return json;
} }
function setearChecks() { function setearChecks() {
let tabla = $('#tblFichasPendientes').DataTable().rows().data(); let tabla = $('#tblFichasPendientes').DataTable().rows().data();
for (let i = 0; i < tabla.length; i++) { for (let i = 0; i < tabla.length; i++) {
for (let x = 0; x < fichas.length; x++) { for (let x = 0; x < fichas.length; x++) {
if (fichas[x].codigoFicha === obtenerDatosFila(i).codigoFicha) { if (fichas[x].codigoFicha === obtenerDatosFila(i).codigoFicha) {
let input = $($($('#tblFichasPendientes').DataTable().row(i).node()).children()[0]).find('input'); let input = $($($('#tblFichasPendientes').DataTable().row(i).node()).children()[0]).find('input');
input.parent().addClass('checked'); input.parent().addClass('checked');
input.prop('checked', true); input.prop('checked', true);
} }
} }
} }
} }
let obtenerDatosFila = (fila) => $('#tblFichasPendientes').DataTable().row(fila).data(); let obtenerDatosFila = (fila) => $('#tblFichasPendientes').DataTable().row(fila).data();
let jsonFichas = () => { let jsonFichas = () => {
let json = {} let json = {}
let detalleLote = [] let detalleLote = []
for (let i in fichas) { for (let i in fichas) {
detalleLote.push({codigoFicha: fichas[i].codigoFicha, tipoFicha: fichas[i].tipoFicha}); detalleLote.push({codigoFicha: fichas[i].codigoFicha, tipoFicha: fichas[i].tipoFicha});
} }
} }
function configuracionCheckBox() { function configuracionCheckBox() {
$(".checkbox-head").click(function () { $(".checkbox-head").click(function () {
if ($(this).prop('checked')) { // le doy check if ($(this).prop('checked')) { // le doy check
$('.div-checkbox-body span').addClass('checked'); $('.div-checkbox-body span').addClass('checked');
$('.checkbox-body').each((i, el) => { $('.checkbox-body').each((i, el) => {
if (!$(el).prop('checked')) { // no esta marcado if (!$(el).prop('checked')) { // no esta marcado
let x_data = $('#tblFichasPendientes').DataTable().row(i).data(); let x_data = $('#tblFichasPendientes').DataTable().row(i).data();
fichas.push(x_data); fichas.push(x_data);
} }
}); });
} else { // le quito check } else { // le quito check
fichas = []; fichas = [];
$('.div-checkbox-body span').removeClass('checked'); $('.div-checkbox-body span').removeClass('checked');
} }
$(".checkbox-body").prop('checked', $(this).prop('checked')); $(".checkbox-body").prop('checked', $(this).prop('checked'));
}); });
$('#tblFichasPendientes tbody').on('click', '.checkbox-body', function (e) { $('#tblFichasPendientes tbody').on('click', '.checkbox-body', function (e) {
iterateCheckBox(); iterateCheckBox();
let row = $('#tblFichasPendientes').DataTable().row($(this).parents('tr')); let row = $('#tblFichasPendientes').DataTable().row($(this).parents('tr'));
let data = row.data(); let data = row.data();
let id = data.id; let id = data.id;
if ($(this).prop('checked')) { if ($(this).prop('checked')) {
fichas.push(data); fichas.push(data);
} else { } else {
removeByKey(fichas, {key: 'id', value: id}); removeByKey(fichas, {key: 'id', value: id});
} }
}); });
} }
function configuracionComboFiltrado() { function configuracionComboFiltrado() {
$('#cboCriterioFiltroFicha').on('change', function (e) { $('#cboCriterioFiltroFicha').on('change', function (e) {
fichas = []; fichas = [];
$(".checkbox-head").prop('checked', false); $(".checkbox-head").prop('checked', false);
$('.div-checkbox-head span').removeClass('checked'); $('.div-checkbox-head span').removeClass('checked');
let codigoCriteroBusqueda = parseInt($('#cboCriterioFiltroFicha').val()); let codigoCriteroBusqueda = parseInt($('#cboCriterioFiltroFicha').val());
if (codigoCriteroBusqueda !== 0) { if (codigoCriteroBusqueda !== 0) {
flagGenerarLote = true; flagGenerarLote = true;
$('#btnGenerarLote').attr('disabled', false); $('#btnGenerarLote').attr('disabled', false);
if (codigoCriteroBusqueda === 1) { if (codigoCriteroBusqueda === 1) {
tipoLote = 'A'; tipoLote = 'A';
} else if (codigoCriteroBusqueda === 2) { } else if (codigoCriteroBusqueda === 2) {
tipoLote = 'D'; tipoLote = 'D';
} }
listarFichas().then(() => { listarFichas().then(() => {
$('.div-checkbox-head').removeClass('disabled') $('.div-checkbox-head').removeClass('disabled')
$(".checkbox-head").prop('disabled', false) $(".checkbox-head").prop('disabled', false)
$('.div-checkbox-body').removeClass('disabled') $('.div-checkbox-body').removeClass('disabled')
$('.checkbox-body').prop('disabled', false) $('.checkbox-body').prop('disabled', false)
}) })
} else { } else {
$('#btnGenerarLote').attr('disabled', true); $('#btnGenerarLote').attr('disabled', true);
flagGenerarLote = false; flagGenerarLote = false;
tipoLote = ''; tipoLote = '';
listarFichas() listarFichas()
.then(() => { .then(() => {
validarCheckBox() validarCheckBox()
}) })
} }
}); });
} }
let iterateCheckBox = () => { let iterateCheckBox = () => {
let count = 0; let count = 0;
$('.checkbox-body:checked').each((el, i) => { $('.checkbox-body:checked').each((el, i) => {
count++; count++;
}); });
if ($('.checkbox-body').length === count) { if ($('.checkbox-body').length === count) {
$('.div-checkbox-head span').addClass('checked'); $('.div-checkbox-head span').addClass('checked');
$('.checkbox-head').prop('checked', true); $('.checkbox-head').prop('checked', true);
} else { } else {
$('.div-checkbox-head span').removeClass('checked'); $('.div-checkbox-head span').removeClass('checked');
$('.checkbox-head').prop('checked', false); $('.checkbox-head').prop('checked', false);
} }
}; };
function configuracionComponentes() { function configuracionComponentes() {
$('#btnGenerarLote').attr('disabled', true); $('#btnGenerarLote').attr('disabled', true);
} }
function inicializarComponentes() { function inicializarComponentes() {
$('.bootstrap-select').selectpicker(); $('.bootstrap-select').selectpicker();
// Primary // Primary
$(".control-primary").uniform({ $(".control-primary").uniform({
radioClass: 'choice', radioClass: 'choice',
wrapperClass: 'border-primary-600 text-primary-800 div-checkbox-head' wrapperClass: 'border-primary-600 text-primary-800 div-checkbox-head'
}); });
} }
let validarCheckBox = () => { let validarCheckBox = () => {
$('.div-checkbox-head').addClass('disabled') $('.div-checkbox-head').addClass('disabled')
$(".checkbox-head").prop('disabled', true) $(".checkbox-head").prop('disabled', true)
$('.div-checkbox-body').addClass('disabled') $('.div-checkbox-body').addClass('disabled')
$('.checkbox-body').prop('disabled', true) $('.checkbox-body').prop('disabled', true)
} }
let lote = { let lote = {
init() { init() {
this.generarLote() this.generarLote()
}, },
generarLote() { generarLote() {
document.querySelector('#btnGenerarLote').addEventListener('click', (e) => { document.querySelector('#btnGenerarLote').addEventListener('click', (e) => {
let valid = this.validarLote() let valid = this.validarLote()
if (valid.status) { if (valid.status) {
delete valid["status"] delete valid["status"]
let json = this.obtenerData() let json = this.obtenerData()
jAlert({ jAlert({
type: 'confirm', type: 'confirm',
content: 'Esta a punto de generar un lote. ¿Continuar?', content: 'Esta a punto de generar un lote. ¿Continuar?',
buttons: {left: 'Si', right: 'No'} buttons: {left: 'Si', right: 'No'}
}).then(flag => { }).then(flag => {
if (flag) { if (flag) {
$.ajax({ $.ajax({
url: '../LoteFichaServlet', url: '../LoteFichaServlet',
type: 'POST', type: 'POST',
dataType: 'json', dataType: 'json',
data: { data: {
accion: 'registrarLote', accion: 'registrarLote',
json: JSON.stringify(json) json: JSON.stringify(json)
}, beforeSend: function (xhr) { }, beforeSend: function (xhr) {
load('Generando lote') load('Generando lote')
}, success: function (data, textStatus, jqXHR) { }, success: function (data, textStatus, jqXHR) {
fichas = [] fichas = []
if (data.status) { if (data.status) {
listarFichas() listarFichas()
unload() unload()
jAlert({ jAlert({
type: 'success', type: 'success',
content: `Se generó el lote <mark>${data.data.getResultedKey}</mark> correctamente`, content: `Se generó el lote <mark>${data.data.getResultedKey}</mark> correctamente`,
buttons: {left: 'Aceptar'} buttons: {left: 'Aceptar'}
}) })
} else { } else {
jAlert({type: 'error', content: data.message, buttons: {left: 'Aceptar'}}) jAlert({type: 'error', content: data.message, buttons: {left: 'Aceptar'}})
} }
} }
}) })
} }
}) })
} else { } else {
jAlert({type: 'warning', content: valid.message, buttons: {left: 'Aceptar'}}) jAlert({type: 'warning', content: valid.message, buttons: {left: 'Aceptar'}})
} }
}) })
}, },
validarLote() { validarLote() {
if (!flagGenerarLote) { if (!flagGenerarLote) {
return { return {
status: false, status: false,
message: 'Accion maliciosa, refresque la página.' message: 'Accion maliciosa, refresque la página.'
} }
} }
if (fichas.length === 0) { if (fichas.length === 0) {
return { return {
status: false, status: false,
message: 'Debe seleccionar al menos una ficha.' message: 'Debe seleccionar al menos una ficha.'
} }
} }
return { return {
status: true status: true
} }
}, },
obtenerData() { obtenerData() {
let detalleLote = [] let detalleLote = []
for (let ficha in fichas) { for (let ficha in fichas) {
detalleLote.push({ detalleLote.push({
codigoFicha: fichas[ficha].codigoFicha, codigoFicha: fichas[ficha].codigoFicha,
tipoFicha: fichas[ficha].tipoFicha tipoFicha: fichas[ficha].tipoFicha
}) })
} }
let json = { let json = {
detallelote: detalleLote, detallelote: detalleLote,
tipoLote: tipoLote tipoLote: tipoLote
} }
return json return json
} }
} }
lote.init() lote.init()
function generarLote2() { function generarLote2() {
$('#btnGenerarLote').on('click', function () { $('#btnGenerarLote').on('click', function () {
if (flagGenerarLote) { if (flagGenerarLote) {
jAlert({ jAlert({
type: 'confirm', type: 'confirm',
content: '', content: '',
buttons: {left: 'Si', right: 'No'} buttons: {left: 'Si', right: 'No'}
}).then(flag => { }).then(flag => {
if (flag) { if (flag) {
let json = {}; let json = {};
let detallelote = []; let detallelote = [];
for (let i in fichas) { for (let i in fichas) {
detallelote.push({codigoFicha: fichas[i].codigoFicha, tipoFicha: fichas[i].tipoFicha}); detallelote.push({codigoFicha: fichas[i].codigoFicha, tipoFicha: fichas[i].tipoFicha});
} }
json.detallelote = detallelote; json.detallelote = detallelote;
json.tipoLote = tipoLote; json.tipoLote = tipoLote;
if (detallelote.length !== 0) { if (detallelote.length !== 0) {
$.ajax({ $.ajax({
url: '../LoteFichaServlet', url: '../LoteFichaServlet',
type: 'POST', type: 'POST',
dataType: 'json', dataType: 'json',
data: { data: {
accion: 'registrarLote', accion: 'registrarLote',
json: JSON.stringify(json) json: JSON.stringify(json)
}, },
beforeSend: function (xhr) { beforeSend: function (xhr) {
}, success: function (data, textStatus, jqXHR) { }, success: function (data, textStatus, jqXHR) {
if (data.status) { if (data.status) {
jAlert({ jAlert({
type: 'success', type: 'success',
content: `Se generó el lote <mark>${data.data.getResultedKey}</mark> correctamente</b>`, content: `Se generó el lote <mark>${data.data.getResultedKey}</mark> correctamente</b>`,
buttons: {left: 'Aceptar'} buttons: {left: 'Aceptar'}
}) })
$('#cboCriterioFiltroFicha').val(0).change(); $('#cboCriterioFiltroFicha').val(0).change();
$('#cboCriterioFiltroFicha').selectpicker('refresh'); $('#cboCriterioFiltroFicha').selectpicker('refresh');
listarFichas(); listarFichas();
} else { } else {
jAlert({type: 'error', content: data.message, buttons: {left: 'Aceptar'}}) jAlert({type: 'error', content: data.message, buttons: {left: 'Aceptar'}})
} }
} }
}); });
} else { } else {
jAlert({type: 'warning', content: 'Debe seleccionar al menos una ficha.', buttons: {left: 'Aceptar'}}) jAlert({type: 'warning', content: 'Debe seleccionar al menos una ficha.', buttons: {left: 'Aceptar'}})
} }
} }
}) })
} else { } else {
jAlert({type: 'error', content: 'Acción maliciosa, refresque la página!', buttons: {left: 'Aceptar'}}) jAlert({type: 'error', content: 'Acción maliciosa, refresque la página!', buttons: {left: 'Aceptar'}})
.then(flag => { .then(flag => {
if (flag) { if (flag) {
window.location.reload() window.location.reload()
} }
}) })
} }
}); });
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment