package com.fp.frontend.controller.armas.solicitud; import java.sql.Timestamp; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; import java.util.Collections; import java.util.Comparator; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.annotation.PostConstruct; import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; import javax.faces.bean.ViewScoped; import javax.faces.context.FacesContext; import javax.faces.event.AjaxBehaviorEvent; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.PredicateUtils; import org.apache.commons.collections.TransformerUtils; import org.apache.commons.lang.StringUtils; import org.primefaces.context.RequestContext; import org.primefaces.event.SelectEvent; import com.fp.common.helper.Constant; import com.fp.dto.AbstractDataTransport; import com.fp.dto.Request; import com.fp.dto.Response; import com.fp.dto.query.DtoQuery; import com.fp.dto.save.DtoSave; import com.fp.frontend.controller.AbstractController; import com.fp.frontend.controller.ReportController; import com.fp.frontend.controller.armas.eval.EvaluacionController; import com.fp.frontend.controller.armas.funcionalidad.CargaController; import com.fp.frontend.controller.armas.funcionalidad.RegistroArmController; import com.fp.frontend.controller.armas.lov.CargasLovController; import com.fp.frontend.controller.armas.parametros.BuscarTramiteLovController; import com.fp.frontend.controller.armas.parametros.CentroControlArmasController; import com.fp.frontend.controller.armas.parametros.ClaseLovController; import com.fp.frontend.controller.armas.parametros.GuardiasController; import com.fp.frontend.controller.armas.parametros.OrigenTramiteController; import com.fp.frontend.controller.armas.parametros.RequisitoPorTramiteController; import com.fp.frontend.controller.armas.parametros.TarmCentroControlJurController; import com.fp.frontend.controller.pcustomer.PeopleController; import com.fp.frontend.controller.pcustomer.PersonAddressController; import com.fp.frontend.controller.pcustomer.PersonDetailController; import com.fp.frontend.controller.pcustomer.PersonPhoneController; import com.fp.frontend.controller.pgeneral.gene.CantonController; import com.fp.frontend.controller.pgeneral.gene.CatalogDetailController; import com.fp.frontend.controller.pgeneral.gene.CityController; import com.fp.frontend.controller.pgeneral.gene.CountryController; import com.fp.frontend.controller.pgeneral.gene.ParametersController; import com.fp.frontend.controller.pgeneral.gene.ParroquiaController; import com.fp.frontend.controller.pgeneral.gene.ProvinceController; import com.fp.frontend.controller.pgeneral.safe.UserDetailController; import com.fp.frontend.controller.security.LoginController; import com.fp.frontend.helper.MessageHelper; import com.fp.frontend.utility.CommonTransformer; import com.fp.frontend.utility.MsgControlArmas; import com.fp.frontend.utility.MsgGeneral; import com.fp.frontend.utility.Utilidades; import com.fp.frontend.utility.ValidateIdentification; import com.fp.frontend.webservices.snap.cedula.ClienteCedula; import com.fp.frontend.webservices.snap.ruc.ClienteRUC; import com.fp.persistence.parmas.fun.TarmCarga; import com.fp.persistence.parmas.fun.TarmRegistroArmas; import com.fp.persistence.parmas.param.TarmCentroControl; import com.fp.persistence.parmas.param.TarmCentroControlJur; import com.fp.persistence.parmas.param.TarmOrigenTramite; import com.fp.persistence.parmas.param.TarmRequisitoPorTipoTramite; import com.fp.persistence.parmas.param.TarmTramite; import com.fp.persistence.parmas.soli.TarmAgenciaSucursal; import com.fp.persistence.parmas.soli.TarmArmas; import com.fp.persistence.parmas.soli.TarmDocumentoHabilitante; import com.fp.persistence.parmas.soli.TarmGuardias; import com.fp.persistence.parmas.soli.TarmSolicitud; import com.fp.persistence.parmas.soli.TarmSolicitudAgenciaSucursal; import com.fp.persistence.parmas.soli.TarmSolicitudArmas; import com.fp.persistence.parmas.soli.TarmSolicitudDocumento; import com.fp.persistence.parmas.soli.TarmSolicitudGuardias; import com.fp.persistence.parmas.soli.TarmSolicitudRequisitos; import com.fp.persistence.parmas.soli.TarmSolicitudRequisitosKey; import com.fp.persistence.parmas.soli.TarmSolicitudTramite; import com.fp.persistence.pcustomer.gene.TcustPersonAddress; import com.fp.persistence.pcustomer.gene.TcustPersonDetail; import com.fp.persistence.pcustomer.gene.TcustPersonPhone; import com.fp.persistence.pgeneral.gene.TgeneCanton; import com.fp.persistence.pgeneral.gene.TgeneCatalogDetail; import com.fp.persistence.pgeneral.gene.TgeneCity; import com.fp.persistence.pgeneral.gene.TgeneCountry; import com.fp.persistence.pgeneral.gene.TgeneParameters; import com.fp.persistence.pgeneral.gene.TgeneParroquia; import com.fp.persistence.pgeneral.gene.TgeneProvince; import com.fp.persistence.pgeneral.safe.TsafeUserDetail; import ec.gob.registrocivil.consultacedula.Cedula; import ec.gov.sri.wsconsultacontribuyente.Contribuyente; /** * Clase controladora de ingreso de tramites de control de armas. * * @author Jorge Vaca. * @author dcruz * @version 2.1 */ @SuppressWarnings("serial") @ManagedBean @ViewScoped public class TramiteArmasController extends AbstractController { private Boolean mostrarFiltroAUCP = Boolean.FALSE; private String filterAUCP; /** *Responsable de centro de control */ private TcustPersonDetail responsableCentroControl= null; /** * Detalle de Usuarios */ private TsafeUserDetail tsafeUserDetailUsuario = null; /** *Referencia al Centro de control; */ private TarmCentroControl centroControl = new TarmCentroControl(); /** *Nombre de la Institucion */ private String nombreInstitucion; /** * Lista de tipos de persona. */ private List ltipopersona; /** * Atributo para la lista de objetos TgeneCatalogDetail de identificación */ private List ltipoidenti; /** * Lista de tipos de trámite. */ private List ltipotramite; /** * Lista de origen de adquisición */ private List lorigenadquisicion; /** * Lista de provincias */ private List lprovincias; /** * Lista de cantones de origen */ private List lcantonOrigen; /** * Lista de cantones de destino */ private List lcantonDestino; /** * Longitud de la identificacion de una persona. */ private Integer longitudid; /** * Indica si se debe activar la pestana de ingresar requisitos */ private boolean ingresarRequisitos; /** * Indica si se debe activar la pestana de seleccionar armas */ private boolean seleccionarArmas; /** * Indica si se debe activar la pestana seleccionar guardias */ private boolean seleccionarGuardias; /** * Indica si se debe activar la pestana seleccionar agencias */ private boolean seleccionarAgencias; /** * Indica si se debe activar la pestana listar guardias */ private boolean listarDocumentos; /** * Atributo para activar el keyFilter */ private boolean activarRegExIdentificacion; /** * Indica si el flujo ya fue iniciado, sirve para controlar que no iniciar el flujo mas de una vez. */ private boolean flujoiniciado = false; private boolean esaprobacion = false; /** * Deshabilita la pantalla después de grabar la solicitud */ private boolean deshabilitarPantalla; /** * Muestra el botón de ingreso de armas */ private boolean mostrarIngresoArmas; /** * codigo de la persona que hace la solicitud */ private Integer cpersona = 0; /** * Atributo que oculpa botones del flujo */ private boolean ocultarBotonInicioFlujo = true; /** * Fecha actual */ private Date fechaActual = new Date(); private String csolicitud; /** * Bandera de tipo booleano para indicar si se ha grabado el reporte generado * */ private Boolean isEnableGrabar; /** * Trámite seleccionado */ private TarmTramite tarmTramite; /** * Habilita campos en actualización de datos generales */ private boolean actualizaDatosGenerales; /** * Aprueba si es guía de libre tránsito */ private boolean guiaLibreTransito; /** * Controlador de login */ @ManagedProperty(value = "#{loginController}") private LoginController login; /** * Controlador que maneja el usuario */ @ManagedProperty(value = "#{userDetailController}") private UserDetailController detalleusuario; /** * Controlador que maneja las armas dentro de la solicitud */ @ManagedProperty(value = "#{solicitudArmasController}") private SolicitudArmasController solicitud; /** * Controlador que maneja cargas para previa importacion */ @ManagedProperty(value = "#{cargaController}") private CargaController cargaController; /** * Controlador que maneja la persona */ @ManagedProperty(value = "#{personDetailController}") private PersonDetailController detallepersona; /** * Controlador que maneja los datos de personas naturales */ @ManagedProperty(value = "#{peopleController}") private PeopleController natural; /** * Controlador que maneja direcciones de la persona */ @ManagedProperty(value = "#{personAddressController}") private PersonAddressController direccion; /** * Controlador que maneja teléfonos de la persona */ @ManagedProperty(value = "#{personPhoneController}") private PersonPhoneController telefono; /** * Controlador que maneja requisitos dentro de la solicitud */ @ManagedProperty(value = "#{solicitudRequisitosController}") private SolicitudRequisitosController requisitos; /** * Controlador que maneja los requisitos */ @ManagedProperty(value = "#{requisitoPorTramiteController}") private RequisitoPorTramiteController requisitoPorTramite; /** * Controlador que maneja guardias */ @ManagedProperty(value = "#{guardiasController}") private GuardiasController guardias; /** * Controlador que maneja los guardias en la solicitud */ @ManagedProperty(value = "#{solicitudGuardiasController}") private SolicitudGuardiasController solicitudGuardias; /** * Controlador que maneja armas */ @ManagedProperty(value = "#{armasController}") private ArmasController armas; /** * Controlador que maneja las armas dentro de la solicitud */ @ManagedProperty(value = "#{recepcionArmasController}") private RecepcionArmasController solicitudArmas; /** * Controlador que maneja registro de armas */ @ManagedProperty(value = "#{registroArmController}") private RegistroArmController registroArmas; /** * Controlador que maneja agencias y sucursales */ @ManagedProperty(value = "#{agenciaSucursalController}") private AgenciaSucursalController agenciaSucursal; /** * Controlador que maneja las agencias y sucursales dentro de la solicitud */ @ManagedProperty(value = "#{solicitudAgenciaSucursalController}") private SolicitudAgenciaSucursalController solicitudAgenciaSucursal; /** * Controlador que maneja los documentos habilitantes */ @ManagedProperty(value = "#{documentoHabilitanteController}") private DocumentoHabilitanteController documentoHabilitante; /** * Controlador que maneja los documentos dentro de la solicitud */ @ManagedProperty(value = "#{tarmSolicitudDocumentoController}") private TarmSolicitudDocumentoController solicitudDocumento; /** * Controlador Inyectado ReportController */ @ManagedProperty(value = "#{reportController}") private ReportController reportController; /** * Controlador que maneja las evaluaciones de las personas */ @ManagedProperty(value="#{evaluacionController}") private EvaluacionController evaluacionController; /** * Controlador que maneja las armas asociadas a las agencias */ @ManagedProperty(value="#{agenciaArmaController}") private AgenciaArmaController agenciaArma; TgeneCatalogDetail tipoTramite = null ; TgeneCatalogDetail tipoAutorizacion = null; TgeneCatalogDetail actividad = null; /** * codigo de la provincia del usuario logueado */ private String cprovincia; private List centroControlList; /** * Atributo para la lista de objetos TgeneCatalogDetail */ private List tipoDocumento; /** * codigo del ruc */ private String codigoRuc; /** * codigo del ruc */ private String codigoCedula; /** * codigo del ruc */ private String codigoPasaporte; /** * Atributo para setear el vendedor */ private TcustPersonDetail tcustPersonDetailVendedor; public TramiteArmasController() throws Exception { super(AbstractDataTransport.class); } @PostConstruct private void postconstruct() { try { this.init(); ltipopersona = CatalogDetailController.find("PERSONTYPE"); ltipoidenti = CatalogDetailController.find("IDENTIFICATION"); ltipotramite = CatalogDetailController.find("TIPOTRAMITE"); lprovincias = ProvinceController.find("EC"); lorigenadquisicion = new ArrayList(); // Inicializa autoconsulta // super.startQuery(); ocultarBotonInicioFlujo = true; isEnableGrabar = Boolean.TRUE; if (super.getMfilters().get("pk.csolicitud") != null) { esaprobacion = true; } centroControlList=CentroControlArmasController.findEstadoInst("Y","1");//Departamento this.querydatabase(); } catch (Exception e) { e.printStackTrace(); } } /** * Incializa el controlador, cuando se esta utilizando una pagina que utliza el controlador. * @throws Exception */ private void init() throws Exception { this.beanalias="SOLICITUD"; this.responsableCentroControl = new TcustPersonDetail(); this.tsafeUserDetailUsuario = new TsafeUserDetail(); tipoDocumento = CatalogDetailController.find("IDENTIFICATION"); tcustPersonDetailVendedor=null; codigoRuc=codigos("CODIGO.RUC"); codigoCedula=codigos("CODIGO.CEDULA"); codigoPasaporte=codigos("CODIGO.PASAPORTE"); this.obtenerCentroControl(); this.obtenerResponsableCentroControl(); } // public String onFlowProcess(FlowEvent event) { // if (!flujoiniciado) { // this.saveCabecera(); // } // return event.getNewStep(); // } @Override public void save() { try { if(deshabilitarPantalla){ return; } try { if(!noValidaDocumentoHabilitante(tipoTramite,tipoAutorizacion,actividad)){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_listardocumentos_solo")); return; } } catch (Exception e) { MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_listardocumentos")); return; } //validamos si tcustPersonDetailPortador este lleno o si han seleccionado sin portador para asignarle el por default if(tcustPersonDetailVendedor==null && tarmTramite.getTipoautorizacion().equals("4")){ MessageHelper.setMessageError(MsgControlArmas.getProperty("msg_error_seleccionesinportadoroverifiqueusuarioexistentevendedor")); return; } Request request = callerhelper.getRequest(); HashMap msave = new HashMap(); solicitud.fijaPersona(detallepersona.getRecord()); solicitud.fijaInicioFlujoEnNO(); solicitud.update(); DtoSave dtosavesol = solicitud.getDtoSave(); dtosavesol.setIsForm(true); dtosavesol.setReturnpk(true); dtosavesol.setPosition(1); msave.put(solicitud.getBeanalias(), dtosavesol); // adicionar metadata de mantenimiento para cada tabla. DtoSave dtosavereq = requisitos.getDtoSave(); dtosavereq.setReturnpk(true); dtosavereq.setPosition(2); msave.put(requisitos.getBeanalias(), dtosavereq); // adicionar metadata de mantenimiento para cada tabla. request.modifiedData().put("csolicitud", solicitud.getRecord().getPk()); request.modifiedData().put("isnew", "N"); request.setSaveTables(msave); //this.setearCodigoCentroControl(); this.modificaDatosGenerales(); this.actualizaDirecciones(); this.actualizarTelefonos(); //guardias this.copiaGuardias(); //armas this.copiaArmas(); //agencias this.copiaAgencias(); //documentos this.copiaDocumentos(); //agencia armas this.copiaAgenciaArmas(); if(!validacionFormulario()){ return; } //guardias DtoSave dtosaveguardias = solicitudGuardias.getDtoSave(); dtosaveguardias.setReturnpk(Boolean.TRUE); dtosaveguardias.setPosition(3); msave.put(solicitudGuardias.getBeanalias(), dtosaveguardias); //armas DtoSave dtosavearmas = solicitudArmas.getDtoSave(); dtosavearmas.setReturnpk(Boolean.TRUE); dtosavearmas.setPosition(4); msave.put(solicitudArmas.getBeanalias(), dtosavearmas); //agencias DtoSave dtosaveagencias = solicitudAgenciaSucursal.getDtoSave(); dtosaveagencias.setReturnpk(Boolean.TRUE); dtosaveagencias.setPosition(5); msave.put(solicitudAgenciaSucursal.getBeanalias(), dtosaveagencias); //solicitud_documentos DtoSave dtosavedocumentos = solicitudDocumento.getDtoSave(); dtosavedocumentos.setReturnpk(Boolean.TRUE); dtosavedocumentos.setPosition(6); msave.put(solicitudDocumento.getBeanalias(), dtosavedocumentos); //direcciones DtoSave dtosavedirecciones = direccion.getDtoSave(); dtosavedirecciones.setReturnpk(Boolean.TRUE); dtosavedirecciones.setPosition(7); msave.put(direccion.getBeanalias(), dtosavedirecciones); DtoSave dtosavetelefono = telefono.getDtoSave(); dtosavetelefono.setReturnpk(Boolean.TRUE); dtosavetelefono.setPosition(8); msave.put(telefono.getBeanalias(), dtosavetelefono); DtoSave dtodatosgenerales = detallepersona.getDtoSave(); dtodatosgenerales.setReturnpk(Boolean.TRUE); dtodatosgenerales.setPosition(9); msave.put(detallepersona.getBeanalias(), dtodatosgenerales); DtoSave dtosaveagenciaarmas = agenciaArma.getDtoSave(); dtosaveagenciaarmas.setPosition(10); msave.put(agenciaArma.getBeanalias(), dtosaveagenciaarmas); //documentoHabilitante DtoSave dtosaveDocumentoHabilitante = documentoHabilitante.getDtoSave(); dtosaveDocumentoHabilitante.setReturnpk(Boolean.TRUE); dtosaveDocumentoHabilitante.setPosition(11); msave.put(documentoHabilitante.getBeanalias(), dtosaveDocumentoHabilitante); Response resp = callerhelper.executeSave(request); if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) == 0) { managedSaveResponse(resp); // CATEGORIA 14 PREVIA IMPORTACION if(tarmTramite.getCategoria().equals("14")){ asociarCargaSolicitud(); } MessageHelper.setMessageInfo(resp); FacesContext context = FacesContext.getCurrentInstance(); context.addMessage(null, new FacesMessage("RECUERDE", MsgControlArmas.getProperty("msg_recuerdeClickContinuarTramite"))); } else { ocultarBotonInicioFlujo = true; MessageHelper.setMessageError(resp); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } public void asociarCargaSolicitud(){ try{ TarmCarga carga = CargaController.findByAUCP(solicitud.getRecord().getAucp()); if(carga!=null){ carga.setCsolicitud(solicitud.getRecord().getPk()); cargaController.update(carga); cargaController.save(); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } public void saveInicioFlujoEnYES() { try { solicitud.fijaInicioFlujoEnYES(); solicitud.update(); DtoSave dtoSolicitud = solicitud.getDtoSave(); HashMap msave = new HashMap(); Request request = callerhelper.getRequest(); super.cleanRequest(request); msave.put(solicitud.getBeanalias(), dtoSolicitud); // adicionar metadata de mantenimiento para cada tabla. request.setSaveTables(msave); Response resp = callerhelper.executeSave(request); if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) == 0) { solicitud.postCommit(resp); MessageHelper.setMessageInfo(resp); } else { MessageHelper.setMessageError(resp); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } private void managedSaveResponse(Response response) throws Exception{ csolicitud = response.get("csolicitud").toString(); solicitud.postCommit(response); requisitos.postCommit(response); solicitudGuardias.postCommit(response); solicitudArmas.postCommit(response); solicitudAgenciaSucursal.postCommit(response); solicitudDocumento.postCommit(response); // flujoiniciado = Boolean.TRUE; isEnableGrabar = Boolean.FALSE; deshabilitarPantalla = Boolean.TRUE; solicitud.getMfilelds().put("estadoSolicitud", "REGISTRADO"); } /** * Metodo que valida si ha sido seleccionado ams de un documento en el criterio validado * @param tipoTramite * @param tipoAutorizacion * @param actividad * @return * @throws Exception */ private boolean noValidaDocumentoHabilitante(TgeneCatalogDetail tipoTramite,TgeneCatalogDetail tipoAutorizacion, TgeneCatalogDetail actividad) throws Exception{ int count= 0 ; if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"), MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"), MsgControlArmas.getProperty("ctg_perdida")).getPk().getCatalog())){ for(TarmDocumentoHabilitante documento:documentoHabilitante.getLrecord()){ if(documento.getModifiedData().get("seleccionado").equals(Boolean.TRUE) ){ count++; } if(count>1){ return false; } } if(count==0){ throw new Exception(MsgControlArmas.getProperty("msg_error_listardocumentos")); } } if((tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_perdida")).getPk().getCatalog())) || (tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_certificados")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption(MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog())) || (tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_certificados")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog()))) { //validamos si el tramite esta chequeado documentohabilitante if(tarmTramite.getDocumentohabilitante().equals(Constant.STR_Y)){ for(TarmDocumentoHabilitante documento:documentoHabilitante.getLrecord()){ if(count>0){ break; } if(documento.getModifiedData().get("seleccionado").equals(Boolean.TRUE) ){ count++; } } if(count==0){ throw new Exception(MsgControlArmas.getProperty("msg_error_listardocumentos")); } } } return true; } /** * Actualizo datos de la persona * @throws Exception */ private void modificaDatosGenerales() throws Exception{ detallepersona.update(); } /** * Actualizo el valor de las direcciones siempre y cuando haya existido un cambio en su valor */ private void actualizaDirecciones(){ TcustPersonAddress direccionPersona = null; direccionPersona = direccion.findPrincipal(detallepersona.getRecord().getPk().getPersoncode().toString()); if(direccionPersona != null){ direccion.setRecord(direccionPersona); direccion.getRecord().setCountrycode(direccion.getMfilelds().get("solcodpais").toString()); direccion.getRecord().setProvincecode(direccion.getMfilelds().get("solcodprovincia").toString()); direccion.getRecord().setCantoncode(direccion.getMfilelds().get("solcodcanton").toString()); direccion.getRecord().setCitycode(direccion.getMfilelds().get("solcodciudad").toString()); direccion.getRecord().setParroquiacode(direccion.getMfilelds().get("solcodparroquia").toString()); direccion.getRecord().setAddress(direccion.getMfilelds().get("soldireccion").toString()); direccion.update(); } TcustPersonAddress correo = (TcustPersonAddress) CollectionUtils.find(direccion.getLrecord(), PredicateUtils.transformedPredicate(TransformerUtils.invokerTransformer("getAddresstypecatalog"), PredicateUtils.equalPredicate("3"))); if(correo != null){ direccion.setRecord(correo); direccion.getRecord().setAddress(direccion.getMfilelds().get("solcorreopersona").toString()); direccion.update(); } } /** * Actualizo los números de teléfono si es que existe un cambio * @throws Exception */ private void actualizarTelefonos() throws Exception { TcustPersonPhone telefonoLocal = null; telefonoLocal = (TcustPersonPhone) CollectionUtils.find(telefono.getLrecord(), PredicateUtils.transformedPredicate(new CommonTransformer("phonetypecatalog"), PredicateUtils.equalPredicate("1"))); TcustPersonAddress direccionPrincipal = (TcustPersonAddress) CollectionUtils.find(direccion.getLrecord(), PredicateUtils.transformedPredicate(new CommonTransformer("principal"), PredicateUtils.equalPredicate(Constant.STR_Y))); Integer codigodireccion = direccionPrincipal != null ? direccionPrincipal.getPk().getAddressnumber() : null; if(telefonoLocal != null){ telefono.setRecord(telefonoLocal); telefono.getRecord().setPhonenumber(telefono.getMfilelds().get("soltelfijo") != null ? telefono.getMfilelds().get("soltelfijo").toString() : null); telefono.update(); }else{ telefono.create(); telefono.getRecord().getPk().setPersoncode(cpersona); telefono.getRecord().getPk().setPhonesequence(1); telefono.getRecord().getPk().setDateto(Utilidades.getFechaExpiracion()); telefono.getRecord().setPhonenumber(telefono.getMfilelds().get("soltelfijo") != null ? telefono.getMfilelds().get("soltelfijo").toString() : null); telefono.getRecord().setDatefrom(new Timestamp(System.currentTimeMillis())); telefono.getRecord().setPhonetypecatalogcode("PHONETYPE"); telefono.getRecord().setPhonetypecatalog("1"); telefono.getRecord().setAddressnumber(codigodireccion); telefono.update(); } TcustPersonPhone telefonoCelular = (TcustPersonPhone) CollectionUtils.find(telefono.getLrecord(), PredicateUtils.transformedPredicate(new CommonTransformer("phonetypecatalog"), PredicateUtils.equalPredicate("2"))); if(telefonoCelular != null){ telefono.setRecord(telefonoCelular); telefono.getRecord().setPhonenumber(telefono.getMfilelds().get("soltelcelular") != null ? telefono.getMfilelds().get("soltelcelular").toString() : null); telefono.update(); }else{ telefono.create(); telefono.getRecord().getPk().setPersoncode(cpersona); telefono.getRecord().getPk().setPhonesequence(2); telefono.getRecord().getPk().setDateto(Utilidades.getFechaExpiracion()); telefono.getRecord().setPhonenumber(telefono.getMfilelds().get("soltelcelular") != null ? telefono.getMfilelds().get("soltelcelular").toString() : null); telefono.getRecord().setDatefrom(new Timestamp(System.currentTimeMillis())); telefono.getRecord().setPhonetypecatalogcode("PHONETYPE"); telefono.getRecord().setPhonetypecatalog("2"); telefono.getRecord().setAddressnumber(codigodireccion); telefono.update(); } } /** * Copia los guardias de la tabla {@link TarmGuardias} a {@link TarmSolicitudGuardias} * @throws Exception */ private void copiaGuardias() throws Exception { if(seleccionarGuardias && guardias.getLrecord() != null && !guardias.getLrecord().isEmpty()){ for (TarmGuardias guardia : guardias.getLrecord()) { TarmSolicitudGuardias guardiaSeleccionado = (TarmSolicitudGuardias) CollectionUtils.find(solicitudGuardias.getLrecord(), PredicateUtils.andPredicate( PredicateUtils.transformedPredicate(new CommonTransformer("pk.cempresa"), PredicateUtils.equalPredicate(cpersona)), PredicateUtils.transformedPredicate(new CommonTransformer("pk.cguardia"), PredicateUtils.equalPredicate(guardia.getPk())))); if(guardia.getModifiedData().get("seleccionado") != null && Boolean.valueOf(guardia.getModifiedData().get("seleccionado").toString())){ if(guardiaSeleccionado == null){ solicitudGuardias.create(); solicitudGuardias.getRecord().getPk().setCempresa(cpersona); solicitudGuardias.getRecord().getPk().setCguardia(guardia.getPk()); solicitudGuardias.update(); } }else{ if(guardiaSeleccionado != null){ solicitudGuardias.setRecord(guardiaSeleccionado); solicitudGuardias.remove(); // solicitudGuardias.update(); } } } } } /** * Copia las armas a {@link TarmSolicitudArmas} * @throws Exception */ private void copiaArmas() throws Exception { if(seleccionarArmas && armas.getLrecord() != null && !armas.getLrecord().isEmpty()){ for (TarmArmas arma : armas.getLrecord()) { TarmSolicitudArmas armaSeleccionada = (TarmSolicitudArmas) CollectionUtils.find(solicitudArmas.getLrecord(), PredicateUtils.andPredicate( PredicateUtils.transformedPredicate(new CommonTransformer("pk.personcode"), PredicateUtils.equalPredicate(cpersona)), PredicateUtils.transformedPredicate(new CommonTransformer("pk.carma"), PredicateUtils.equalPredicate(arma.getPk())))); if(arma.getModifiedData().get("seleccionado") != null && Boolean.valueOf(arma.getModifiedData().get("seleccionado").toString())){ if(armaSeleccionada == null){ solicitudArmas.create(); solicitudArmas.getRecord().getPk().setPersoncode(cpersona); solicitudArmas.getRecord().getPk().setCarma(arma.getPk()); solicitudArmas.update(); } }else{ if(armaSeleccionada != null){ solicitudArmas.setRecord(armaSeleccionada); solicitudArmas.remove(); // solicitudArmas.update(); } } } } } /** * Copia las agencias a {@link TarmSolicitud} * @throws Exception */ private void copiaAgencias() throws Exception{ if(seleccionarAgencias && agenciaSucursal.getLrecord() != null && !agenciaSucursal.getLrecord().isEmpty()){ for (TarmAgenciaSucursal agencia : agenciaSucursal.getLrecord()) { TarmSolicitudAgenciaSucursal agenciaSeleccionada = (TarmSolicitudAgenciaSucursal) CollectionUtils.find(solicitudAgenciaSucursal.getLrecord(), PredicateUtils.transformedPredicate(new CommonTransformer("pk.cagencia"), PredicateUtils.equalPredicate(agencia.getPk()))); if(agencia.getModifiedData().get("seleccionado") != null && Boolean.valueOf(agencia.getModifiedData().get("seleccionado").toString())){ if(agenciaSeleccionada == null){ solicitudAgenciaSucursal.create(); solicitudAgenciaSucursal.getRecord().getPk().setCagencia(agencia.getPk()); solicitudAgenciaSucursal.update(); } }else{ if(agenciaSeleccionada != null){ solicitudAgenciaSucursal.setRecord(agenciaSeleccionada); solicitudAgenciaSucursal.remove(); // solicitudAgenciaSucursal.update(); } } } } } /** * Copia los documentos para procesarse en la solcitud * @throws Exception */ private void copiaDocumentos() throws Exception{ if(listarDocumentos && documentoHabilitante.getLrecord() != null && !documentoHabilitante.getLrecord().isEmpty()){ for (TarmDocumentoHabilitante docHabilitante : documentoHabilitante.getLrecord()) { TarmSolicitudDocumento documentoSeleccionado = (TarmSolicitudDocumento) CollectionUtils.find(solicitudDocumento.getLrecord(), PredicateUtils.transformedPredicate(new CommonTransformer("pk.cdocumento"), PredicateUtils.equalPredicate(docHabilitante.getPk()))); if(docHabilitante.getModifiedData().get("seleccionado") != null && Boolean.valueOf(docHabilitante.getModifiedData().get("seleccionado").toString())){ if(documentoSeleccionado == null){ solicitudDocumento.create(); solicitudDocumento.getRecord().getPk().setCdocumento(docHabilitante.getPk()); solicitudDocumento.update(); // Cambiar el centro de control del documento al centro control de armas actual if(docHabilitante.getCentrocontrol().equalsIgnoreCase("999999")){ docHabilitante.setCentrocontrol(centroControl.getPk()); documentoHabilitante.update(docHabilitante); } } }else{ if(documentoSeleccionado != null){ solicitudDocumento.setRecord(documentoSeleccionado); solicitudDocumento.remove(); // solicitudDocumento.update(); } } } } } /** * Copia las armas seleccionadas a la agencia seleccionada debe ejecutarse después de * @throws Exception */ private void copiaAgenciaArmas() throws Exception{ if(seleccionarAgencias){ Long cagencia = solicitudAgenciaSucursal.getLrecord().iterator().next().getPk().getCagencia(); for (TarmSolicitudArmas tarmSolicitudArmas : solicitudArmas.getLrecord()) { agenciaArma.create(); agenciaArma.getRecord().getPk().setCagencia(cagencia); agenciaArma.getRecord().getPk().setCarma(tarmSolicitudArmas.getPk().getCarma()); agenciaArma.update(); } } } /** * Valida que solo se seleccione una agencia en la solicitud * @param event */ public void validaAgenciaUnica(AjaxBehaviorEvent event) { Boolean valorComponente = (Boolean) (event.getComponent().getAttributes().get("value") != null ? event.getComponent().getAttributes().get("value") : null); if(valorComponente){ int cont = 0; for (TarmAgenciaSucursal tarmAgenciaSucursal : agenciaSucursal.getLrecord()) { if(tarmAgenciaSucursal.getModifiedData().get("seleccionado") != null && Boolean.parseBoolean(tarmAgenciaSucursal.getModifiedData().get("seleccionado").toString())){ cont++; } if(cont > 1){ agenciaSucursal.getLrecord().get(Integer.parseInt(event.getComponent().getAttributes().get("indiceActual").toString())).getModifiedData().put("seleccionado", Boolean.FALSE); MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_unicidad_agencia")); break; } } } } /** * Realiza las validaciones pertinentes del formulario * @return */ private boolean validacionFormulario(){ //Valido el tramite que se ha escogido un tramite Boolean valido = Boolean.TRUE; if(solicitud.getRecord().getCtramite() == null){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_tramite")); valido = Boolean.FALSE; } if(ingresarRequisitos){ int tamReq = requisitos.getLrecord().size(); int tamReqSel = 0; for (TarmSolicitudRequisitos solicitudRequisitos : requisitos.getLrecord()) { if(solicitudRequisitos.getCargado() != null && solicitudRequisitos.getCargado().equals(Constant.STR_Y)){ tamReqSel++; } } if(tamReq==0){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_no_requisitos")); valido = Boolean.FALSE; }else if(tamReq != tamReqSel){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_requisitos")); valido = Boolean.FALSE; } } if(seleccionarArmas){ if(solicitudArmas.getLrecord() == null || solicitudArmas.getLrecord().isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_armas")); valido = Boolean.FALSE; } else if(tarmTramite.getNumeromaxarmas() != null && tarmTramite.getNumeromaxarmas().intValue() < solicitudArmas.getLrecord().size()){ MessageHelper.setMessageWarn(MsgControlArmas.getProperty("msg_error_maximo_armas"), tarmTramite.getNumeromaxarmas()); valido = Boolean.FALSE; } } if(seleccionarGuardias){ if(solicitudGuardias.getLrecord() == null || solicitudGuardias.getLrecord().isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_guardias")); valido = Boolean.FALSE; } } if(seleccionarAgencias){ if(solicitudAgenciaSucursal.getLrecord() == null || solicitudAgenciaSucursal.getLrecord().isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_agencias")); valido = Boolean.FALSE; } } if(listarDocumentos){ if(documentoHabilitante.getLrecord() == null || documentoHabilitante.getLrecord().isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_noexistendocumentos")); valido = Boolean.FALSE; }else if(solicitudDocumento.getLrecord() == null || solicitudDocumento.getLrecord().isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_documento")); valido = Boolean.FALSE; } } return valido; } // public void saveCabecera() { // try { // Request request = callerhelper.getRequest(); // HashMap msave = new HashMap(); // solicitud.fijaPersona(detallepersona.getRecord()); // solicitud.update(); // // DtoSave dtosavesol = solicitud.getDtoSave(); // dtosavesol.setIsForm(true); // dtosavesol.setReturnpk(true); // dtosavesol.setPosition(1); // msave.put(solicitud.getBeanalias(), dtosavesol); // adicionar metadata de mantenimiento para cada tabla. // // request.setSaveTables(msave); // request.modifiedData().put("csolicitud", solicitud.getRecord().getPk()); // request.modifiedData().put("isnew", "N"); // // Response resp = callerhelper.executeSave(request); // if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) == 0) { // solicitud.postCommit(resp); // ocultarBotonInicioFlujo = false; // MessageHelper.setMessageInfo(resp); // } else { // ocultarBotonInicioFlujo = true; // MessageHelper.setMessageError(resp); // } // // } catch (Throwable e) { // MessageHelper.setMessageError(e); // } // } @Override protected void querydatabase() { try { if(deshabilitarPantalla){ return; } detalleusuario.getMfilters().clear(); detalleusuario.getMfilters().put("pk.usercode", login.getRequest().getUser()); detalleusuario.addFilterDateto(); detalleusuario.query(); if (detalleusuario.getRecord() == null || detalleusuario.getRecord().getPk().getPersoncode() == null) { return; } cpersona = detalleusuario.getRecord().getPk().getPersoncode(); detallepersona.getMfilters().clear(); detallepersona.getMfilters().put("pk.personcode", cpersona.toString()); detallepersona.addFilterDateto(); detallepersona.query(); natural.getMfilters().clear(); natural.addPersoncodeFilter(cpersona.toString()); natural.addFilterDateto(); natural.query(); direccion.getMfilters().clear(); direccion.addPersoncodeFilter(cpersona.toString()); direccion.addFilterDateto(); direccion.query(); this.obtenerDireccionesGenerales(); telefono.getMfilters().clear(); telefono.addPersoncodeFilter(cpersona.toString()); telefono.addFilterDateto(); telefono.query(); this.obtenerTelefonos(); this.setearDatosGenerales(); //creamos una solicitud por default cuando se consulta por primera vez y al transaccion es 20 if (this.getLoginController().getRequest().getTransactionModule().equals("30") && this.getLoginController().getRequest().getTransactionCode() == 20) { solicitud.create(); solicitud.getRecord().setFregistro(new java.sql.Date(System.currentTimeMillis())); this.obtenerSecuencialSolicitud(); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } /** * Muestra un mensaje de error siempre y cuando sea un error de componente y se lo muestra como general * @return */ public Boolean getExisteMensajesError() { Boolean resp = Boolean.FALSE; FacesContext facesContext = FacesContext.getCurrentInstance(); final Iterator idComponentesMensajes = facesContext.getClientIdsWithMessages(); while(idComponentesMensajes.hasNext()){ String idComp = idComponentesMensajes.next(); if(StringUtils.isNotBlank(idComp)){ System.out.println("El id es "+idComp.replace(":", "\\\\:")); System.out.println("$('#"+idComp.replace(":", "\\\\:")+"').focus();"); facesContext.validationFailed(); resp = Boolean.TRUE; RequestContext.getCurrentInstance().execute("$('#"+idComp.replace(":", "\\\\:")+"').focus();"); break; } } return resp; } /** * En base a la provincia y sus jurisdicciones se obtiene y se coloca el centro de control */ // private void setearCodigoCentroControl(){ // TarmCentroControlJur centroControlJur = TarmCentroControlJurController.findxProvincia(direccion.getMfilelds().get("solcodprovincia") != null ? // direccion.getMfilelds().get("solcodprovincia").toString() : StringUtils.EMPTY); // if(centroControlJur != null){ // this.solicitud.getRecord().setCcentrocontrol(centroControlJur.getCcentrocontrol()); // } // } /** * Ingresa datos que se necesitan en arma */ private void setearDatosGenerales(){ TcustPersonDetail tcustPersonDetail = PersonDetailController.find(cpersona.toString()); armas.getMfilelds().put("numdoc", tcustPersonDetail.getIdentification()); armas.getMfilelds().put("tipodoc", tcustPersonDetail.getIdentificationcatalog()); } /** * Arma la petición al core para solicitar un número de secuencial para la solicitud antes de guardarla * @throws Throwable */ private void obtenerSecuencialSolicitud() throws Throwable{ Request request = callerhelper.getRequest(); DtoQuery dtoQuery = super.getDtoQuery(true); HashMap mapQuery = new HashMap(); mapQuery.put(beanalias, dtoQuery); request.put("querytype", "T"); request.setQueryTables(mapQuery); Response response = callerhelper.executeQuery(request); if (response.getResponseCode().compareTo(Response.RESPONSE_OK) != 0) { MessageHelper.setMessageError(response); }else{ solicitud.getRecord().setNumerosolicitud(response.get("SECUENCIALSOLICITUD").toString()); } } /** * Recupera en base al tipo de identificación la dirección de la oficina o de la casa */ private void obtenerDireccionesGenerales(){ TcustPersonAddress direccionPersona = null; direccionPersona = direccion.findPrincipal(detallepersona.getRecord().getPk().getPersoncode().toString()); if(direccionPersona != null){ direccion.getMfilelds().put("solcodpais", direccionPersona.getCountrycode()); direccion.setLprovinces(ProvinceController.find(direccionPersona.getCountrycode())); direccion.getMfilelds().put("solcodprovincia", direccionPersona.getProvincecode()); direccion.setLcantones(CantonController.find(direccionPersona.getCountrycode(), direccionPersona.getProvincecode())); direccion.getMfilelds().put("solcodcanton", direccionPersona.getCantoncode()); direccion.setLcities(CityController.find(direccionPersona.getCountrycode(), direccionPersona.getProvincecode(), direccionPersona.getCantoncode())); direccion.getMfilelds().put("solcodciudad", direccionPersona.getCitycode()); direccion.setLparroquias(ParroquiaController.find(direccionPersona.getCountrycode(), direccionPersona.getProvincecode(), direccionPersona.getCantoncode())); direccion.getMfilelds().put("solcodparroquia", direccionPersona.getParroquiacode()); direccion.getMfilelds().put("soldireccion", direccionPersona.getAddress()); } TcustPersonAddress correo = (TcustPersonAddress) CollectionUtils.find(direccion.getLrecord(), PredicateUtils.transformedPredicate(TransformerUtils.invokerTransformer("getAddresstypecatalog"), PredicateUtils.equalPredicate("3"))); if(correo != null){ direccion.getMfilelds().put("solcorreopersona", correo.getAddress()); } } /** * Retorna el telefono fijo y celular de la persona */ private void obtenerTelefonos(){ TcustPersonPhone telf = null; telf = (TcustPersonPhone) CollectionUtils.find(telefono.getLrecord(), PredicateUtils.transformedPredicate(TransformerUtils.invokerTransformer("getPhonetypecatalog"), PredicateUtils.equalPredicate("1"))); if(telf != null){ telefono.getMfilelds().put("soltelfijo", telf.getPhonenumber()); } telf = (TcustPersonPhone) CollectionUtils.find(telefono.getLrecord(), PredicateUtils.transformedPredicate(TransformerUtils.invokerTransformer("getPhonetypecatalog"), PredicateUtils.equalPredicate("2"))); if(telf != null){ telefono.getMfilelds().put("soltelcelular", telf.getPhonenumber()); } } /** * Método para el inicio de flujo */ public void iniciarFlujo() { try { cprovincia=null; for(TarmCentroControl centro: centroControlList){ if(solicitud.getRecord().getCcentrocontrol().equals(centro.getPk())){ cprovincia=centro.getProvincecode(); } } ; if(cprovincia==null || cprovincia.length()==0){ MessageHelper.setMessageError(MsgControlArmas.getProperty("msg_error_sinprovincia")); return; } Request request = callerhelper.getRequest(); super.cleanRequest(request); request.modifiedData().put("csolicitud", solicitud.getRecord().getPk()); request.modifiedData().put("numerosolicitud", solicitud.getRecord().getNumerosolicitud()); request.modifiedData().put("numerotransaccion", solicitud.getRecord().getCtramite()); request.modifiedData().put("cprovincia", cprovincia); request.modifiedData().put("isnew", "Y"); request.setLogsolicitude(solicitud.getRecord().getNumerosolicitud()); Response resp = callerhelper.executeSave(request); if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) == 0) { this.setShowRow(true); flujoiniciado = true; deshabilitarPantalla = Boolean.TRUE; MessageHelper.setMessageInfo(resp, MsgGeneral.getProperty("msg_initFlow") + " SOLICITUD: " + solicitud.getRecord().getNumerosolicitud()); saveInicioFlujoEnYES(); // RequestContext.getCurrentInstance().execute("Maia.refreshusertasks()"); } else { MessageHelper.setMessageError(resp); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } /** * Método para el inicio de flujo */ public void completarTarea() { try { Request request = callerhelper.getRequest(); // limpiar request para finalizar la tarea. super.cleanRequest(request); request.modifiedData().put("csolicitud", solicitud.getRecord().getPk()); request.modifiedData().put("TID", tid); request.modifiedData().put("BPMStatus", bpmDataStatus == null ? "A" : bpmDataStatus); // A,D,R request.modifiedData().put("BPMObs", bpmDataComment); Response resp = callerhelper.executeSave(request); if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) == 0) { MessageHelper.setMessageInfo(resp); RequestContext.getCurrentInstance().execute("Maia.refreshusertasks()"); } else { MessageHelper.setMessageError(resp); } } catch (Throwable e) { MessageHelper.setMessageError(e); } } /** * Evento que se ejecuta cuando cambia el origen de adquisición */ public void executeOrigenAdquisicion() { TarmTramite tramite = this.solicitud.getRecord().getCtramite() != null ? TarmTramiteController.find(this.solicitud.getRecord().getCtramite().toString()) : null; if((this.solicitud.getRecord().getOrigenadquisicion() != null && this.solicitud.getRecord().getOrigenadquisicion().equals("DEC")) || (tramite != null && tramite.getTipoautorizacion().equals("1") && tramite.getCategoria().equals("10"))){ this.mostrarIngresoArmas = Boolean.TRUE; } else{ this.mostrarIngresoArmas = Boolean.FALSE; } } @Override public void postCommit(Response response) throws Exception { } /** * Datos de control de la identificacion de la persona. */ public void onChangeTipoId() { String tipoid = super.getMfilelds().get("tipoidentificacion").toString(); switch (tipoid) { case "CED": longitudid = 10; activarRegExIdentificacion = true; break; case "RUC": longitudid = 13; activarRegExIdentificacion = true; break; default: longitudid = 13; activarRegExIdentificacion = false; break; } } /** * Abre el LOV de trámite */ public void openLovTramite() { Map> params = new HashMap>(); List ltipopersona = new ArrayList<>(); if(validaNumeros(detallepersona.getRecord().getIdentification())){ if(detallepersona.getRecord().getIdentification().length()==10){ ltipopersona.add(ParametersController.find("CODIGO.PERSONTYPE.NATURAL", "1").getTextvalue());//1 }else{ ltipopersona.add(ParametersController.find("CODIGO.PERSONTYPE.JURIDICA", "1").getTextvalue());//2 } } params.put("tipopersonasol", ltipopersona); BuscarTramiteLovController.openLov(params); } private boolean validaNumeros(String cadena){ Boolean aux=Boolean.FALSE; if (cadena.matches("[0-9]*")){ System.out.println("Es un n�mero"); aux=Boolean.TRUE; }else{ System.out.println("No es un n�mero"); aux=Boolean.FALSE; } return aux; } /** * Abre el LOV de la clase del arma */ public void openLovClase() { Map> params = new HashMap>(); ClaseLovController.openLov(params); } /** * Regresa del LOV de armas * @param event */ public void onReturnClase(SelectEvent event) { TgeneCatalogDetail clase = (TgeneCatalogDetail) event.getObject(); this.armas.getRecord().getModifiedData().put("clase", clase.getDescription()); this.armas.setClase(clase.getPk().getCatalog()); } /** * Regresa del LOV para cargar valores * @param event {@link SelectEvent} */ public void onReturnTramite(SelectEvent event) { try{ TarmTramite tramite = (TarmTramite) event.getObject(); this.tarmTramite = tramite; // if(!procedeTramite(TarmTramiteController.find(tramite.getCtramitepadre() != null ? tramite.getCtramitepadre().toString() : "-1"),tramite.getPk())){ if(!procedeTramite(tramite)){ return; } if(!verificaAptitudPersona(tarmTramite)){ return; } solicitud.getRecord().setCtramite(tramite.getPk()); tipoTramite = CatalogDetailController.findxCodigoCodcatalogo(tramite.getTipotramite(), tramite.getTipotramitecodigo()); tipoAutorizacion = CatalogDetailController.findxCodigoCodcatalogo(tramite.getTipoautorizacion(), tramite.getTipoautorizacioncodigo()); TgeneCatalogDetail categoria = CatalogDetailController.findxCodigoCodcatalogo(tramite.getCategoria(), tramite.getCategoriacodigo()); actividad = CatalogDetailController.findxCodigoCodcatalogo(tramite.getUsoactividad(), tramite.getUsoactividadcodigo()); this.getSolicitud().addField("tipoTramite", tipoTramite.getDescription()); this.getSolicitud().addField("tipoAutorizacion", tipoAutorizacion.getDescription()); this.getSolicitud().addField("categoria", categoria.getDescription()); this.getSolicitud().addField("actividad", actividad.getDescription()); if(tarmTramite.getTipotramite().equals(ParametersController.find("CODIGO.TRAMITEREIMPRESION", "1").getTextvalue())){ this.actualizaDatosGenerales = Boolean.TRUE; } else{ this.actualizaDatosGenerales = Boolean.FALSE; } if(tarmTramite.getTipoautorizacion().equals("4")){//Guia de libre transito this.guiaLibreTransito = Boolean.TRUE; if(!this.actualizaDatosGenerales){ this.actualizaDatosGenerales = Boolean.TRUE; } } else{ this.guiaLibreTransito = Boolean.FALSE; } this.ingresarRequisitos = Boolean.TRUE; if(Constant.ifYes(tramite.getRegistroarmas())){ this.seleccionarArmas = Boolean.TRUE; this.cargaArmas(); }else{ this.seleccionarArmas = Boolean.FALSE; this.solicitudArmas.clearAll(); } if(Constant.ifYes(tramite.getRegistroguardia())){ this.seleccionarGuardias = Boolean.TRUE; this.cargaGuardias(); }else{ this.seleccionarGuardias = Boolean.FALSE; this.solicitudGuardias.clearAll(); } if(Constant.ifYes(tramite.getRegistroagenciasucursal())){ this.seleccionarAgencias = Boolean.TRUE; this.cargarAgencias(); }else{ this.seleccionarAgencias = Boolean.FALSE; this.solicitudAgenciaSucursal.clearAll(); } if(Constant.ifYes(tramite.getDocumentohabilitante()) || tipoTramite.getPk().getCatalog().equals(ParametersController.find("CODIGO.TRAMITEREIMPRESION", "1").getTextvalue())){ this.listarDocumentos = Boolean.TRUE; listarDocumentos(tipoTramite,tipoAutorizacion, actividad);//Se listan los documentos en el tab listar documentos }else{ this.listarDocumentos = Boolean.FALSE; this.solicitudDocumento.clearAll(); } if(tramite != null){ requisitoPorTramite.getMfilters().put("pk.ctramite", tramite.getPk().toString()); requisitoPorTramite.setRecperpage(3000000); requisitoPorTramite.setcTramite(tramite.getPk()); requisitoPorTramite.query(); requisitos.clearAll();//limpio los datos del requisito anterior for (TarmRequisitoPorTipoTramite requisitoPorTipoTramite : requisitoPorTramite.getLrecord()) { requisitos.create(); requisitos.getRecord().setCargado(Constant.STR_N); requisitos.getRecord().setPk(new TarmSolicitudRequisitosKey()); requisitos.getRecord().getPk().setCrequisito(requisitoPorTipoTramite.getPk().getCrequisito()); requisitos.getRecord().getPk().setCtramite(tramite.getPk()); requisitos.getRecord().getModifiedData().put("crequisito", requisitoPorTipoTramite.getModifiedData().get("crequisito")); requisitos.getRecord().getModifiedData().put("nrequisito", requisitoPorTipoTramite.getModifiedData().get("nrequisito")); requisitos.getRecord().getModifiedData().put("ndescripcion", requisitoPorTipoTramite.getModifiedData().get("ndescripcion")); requisitos.update(); } } if(tarmTramite.getUsoactividad().equals("2") || tarmTramite.getUsoactividad().equals("24")){//2 AGENCIA // 24 SUCURSAL if(agenciaSucursal!= null && agenciaSucursal.getTipoAgencias()!=null && agenciaSucursal.getTipoAgencias().size()>0){ TgeneCatalogDetail remover=new TgeneCatalogDetail(); agenciaSucursal.setTipoAgencias(CatalogDetailController.find("TIPOAGENCIA")); for(TgeneCatalogDetail item:agenciaSucursal.getTipoAgencias()){ if(!tarmTramite.getUsoactividad().equals("2")){ if(item.getPk().getCatalog().equals(ParametersController.find("CODIGO.AGENCIA.TIPOAGENCIA", "1").getTextvalue())){//"AGE" remover=item; } } if(!tarmTramite.getUsoactividad().equals("24")){ if(item.getPk().getCatalog().equals(ParametersController.find("CODIGO.SUCURSAL.TIPOAGENCIA", "1").getTextvalue())){//"SUC" remover=item; } } } agenciaSucursal.getTipoAgencias().remove(remover); } } //AQUI VA EL CODIGO PARA LLENAR LAS ADQUISICION lorigenadquisicion = null; lorigenadquisicion = new ArrayList(); List origenTramites = OrigenTramiteController.findOrigenTramite(tarmTramite); if(origenTramites!=null && !origenTramites.isEmpty()){ for (int i = 0; i < origenTramites.size(); i++) { TarmOrigenTramite origenTramite = origenTramites.get(i); if(origenTramite!= null && origenTramite.getPk().getOrigencatalog()!=null && origenTramite.getPk().getOrigencatalogcode() != null && !origenTramite.getPk().getOrigencatalog().isEmpty() && !origenTramite.getPk().getOrigencatalogcode().isEmpty()){ lorigenadquisicion.add(CatalogDetailController.findCatalogo(origenTramite.getPk().getOrigencatalogcode(), origenTramite.getPk().getOrigencatalog())); } } } } catch(Throwable e){ MessageHelper.setMessageError(e); } } /** * Metodo para listar el listado de documentos para los diferentes critesrios de seleccion * @param tipoTramite tipo del tramite * @param tipoAutorizacion tipo de la autorizacion * @param actividad actividad * @throws Exception */ private void listarDocumentos(TgeneCatalogDetail tipoTramite,TgeneCatalogDetail tipoAutorizacion, TgeneCatalogDetail actividad) throws Exception{ if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"), MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"), MsgControlArmas.getProperty("ctg_perdida")).getPk().getCatalog())){ this.cargarDocumentos(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog()); } if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"), MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"), MsgControlArmas.getProperty("ctg_actualizacionDeDatos")).getPk().getCatalog())){ this.cargarTodosDocumentosPersona(); } if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_reimpresion_tipo")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_perdida")).getPk().getCatalog())){ this.cargarDocumentos(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_renovacion")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog()); } if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_certificados")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption(MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog())){ this.cargarDocumentos(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_renovacion")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_autorizacion")).getPk().getCatalog()); } if(tipoTramite.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog()) && tipoAutorizacion.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_certificados")).getPk().getCatalog()) && actividad.getPk().getCatalog().equals(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_usoactividad"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog())){ this.cargarDocumentos(CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_primeravez")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipotramite"),MsgControlArmas.getProperty("ctg_renovacion")).getPk().getCatalog(), CatalogDetailController.findByCatalogcodeDescrption( MsgControlArmas.getProperty("ctg_tipoautorizacion"),MsgControlArmas.getProperty("ctg_permiso")).getPk().getCatalog()); } if(documentoHabilitante.getLrecord() == null || documentoHabilitante.getLrecord().isEmpty()){ MessageHelper.setMessageWarn(MsgControlArmas.getProperty("msg_error_noexistendocumentos")); } } /** * Verifica si el trámite ingresado cumple la prevalidación * TarmTramite tramite es el tramite padre validamos si este tiene codigo alterno * Creado FPAZMINO * @return */ private boolean procedeTramite(TarmTramite tramite){ if(tramite.getCtramitepadre() == null && tramite.getCtramitepadrealt() == null){ return Boolean.TRUE; } Boolean procede = Boolean.FALSE; String msgErrorTramitePadre = ""; //consulta del tramite padre TarmTramite tramitePadre = TarmTramiteController.find(tramite.getCtramitepadre() != null ? tramite.getCtramitepadre().toString() : "-1"); //consulta por tramite padre if(tramitePadre!=null){ Boolean debeValidarCaducidad = (tramite.getValidacaducidadpadre()!=null && tramite.getValidacaducidadpadre().equalsIgnoreCase("Y"))?true:false; //consulta documento habilitante del codigo padre alterno documentoHabilitante.querydatabaseDocumentosCriterioFiltro(Arrays.asList(tramitePadre), debeValidarCaducidad, cpersona.toString()); if(documentoHabilitante.getLrecord() != null && !documentoHabilitante.getLrecord().isEmpty()){ if(tramitePadre.getCtramitepadre() == null && tramitePadre.getCtramitepadrealt() == null){ return Boolean.TRUE; } else{ procede = procedeTramite(tramitePadre); } } else{ procede = Boolean.FALSE; msgErrorTramitePadre = MsgControlArmas.getProperty("msg_error_tramite_padre", tramitePadre.getModifiedData().get("tipotramite"), tramitePadre.getModifiedData().get("tipoautorizacion"), tramitePadre.getModifiedData().get("categoria") , tramitePadre.getModifiedData().get("usoactividad")); // MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_tramite_padre", tramite.getModifiedData().get("tipotramite"), tramite.getModifiedData().get("tipoautorizacion"), tramite.getModifiedData().get("categoria") , tramite.getModifiedData().get("usoactividad"))); } } //consulta del tramite padre alterno, seria el tramite de renovacion TarmTramite tramitePadreAlterno =TarmTramiteController.find(tramite.getCtramitepadrealt() != null ? tramite.getCtramitepadrealt().toString() : "-1"); //consulta por tramite padre alterno if(tramitePadreAlterno!=null && !procede){ Boolean debeValidarCaducidad = (tramite.getValidacaducidadpadre()!=null && tramite.getValidacaducidadpadre().equalsIgnoreCase("Y"))?true:false; //consulta documento habilitante del codigo padre alterno documentoHabilitante.querydatabaseDocumentosCriterioFiltro(Arrays.asList(tramitePadreAlterno), debeValidarCaducidad, cpersona.toString()); if(documentoHabilitante.getLrecord() != null && !documentoHabilitante.getLrecord().isEmpty()){ if(tramitePadreAlterno.getCtramitepadre() == null && tramitePadreAlterno.getCtramitepadrealt() == null){ return Boolean.TRUE; } else{ procede = procedeTramite(tramitePadreAlterno); } } else{ procede = Boolean.FALSE; msgErrorTramitePadre = MsgControlArmas.getProperty("msg_error_tramite_padre", tramitePadreAlterno.getModifiedData().get("tipotramite"), tramitePadreAlterno.getModifiedData().get("tipoautorizacion"), tramitePadreAlterno.getModifiedData().get("categoria") , tramitePadreAlterno.getModifiedData().get("usoactividad")); // MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_tramite_padre", tramite.getModifiedData().get("tipotramite"), tramite.getModifiedData().get("tipoautorizacion"), tramite.getModifiedData().get("categoria") , tramite.getModifiedData().get("usoactividad"))); } } if(!procede && !msgErrorTramitePadre.equalsIgnoreCase("")){ MessageHelper.setMessageInfo(msgErrorTramitePadre); } return procede; } /** * Verifica si la persona es apta para dicho tramite * @param tramite * @return * @throws Exception */ private boolean verificaAptitudPersona(TarmTramite tramite) throws Exception { boolean verificaApto = Boolean.TRUE; if(tramite.getRequiereevaluacion() != null && tramite.getRequiereevaluacion().equals(Constant.STR_Y)){ evaluacionController.addFilter("personcode", cpersona.toString()); evaluacionController.addFilter("resultado", MsgControlArmas.getProperty("ctg_resultado_aprobado")); evaluacionController.addFilter("resultadocodigo", MsgControlArmas.getProperty("ctg_resultado_codigo")); evaluacionController.addFilter("tipoevaluacion", MsgControlArmas.getProperty("ctg_tipo_evaluacion_conocimiento")); evaluacionController.addFilter("tipoevaluacioncodigo", MsgControlArmas.getProperty("ctg_tipo_evaluacion_codigo")); evaluacionController.setTipoTest("CONOCIMIENTO"); evaluacionController.query(); if(evaluacionController.getLrecord() == null || evaluacionController.getLrecord().isEmpty()){ verificaApto = Boolean.FALSE; MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_requiere_validacion_tecnica")); } evaluacionController.clearAll(); evaluacionController.addFilter("personcode", cpersona.toString()); evaluacionController.addFilter("resultado", MsgControlArmas.getProperty("ctg_resultado_aprobado")); evaluacionController.addFilter("resultadocodigo", MsgControlArmas.getProperty("ctg_resultado_codigo")); evaluacionController.addFilter("tipoevaluacion", MsgControlArmas.getProperty("ctg_tipo_evaluacion_psicologica")); evaluacionController.addFilter("tipoevaluacioncodigo", MsgControlArmas.getProperty("ctg_tipo_evaluacion_codigo")); evaluacionController.setTipoTest("PSICOLOGICA"); evaluacionController.query(); if(evaluacionController.getLrecord() == null || evaluacionController.getLrecord().isEmpty()){ verificaApto = Boolean.FALSE; MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_requiere_validacion_psicologica")); } } return verificaApto; } /** * Método en el cual se cargan los guardias de seguridad de una determina empresa * @throws Exception */ private void cargaGuardias() throws Exception{ guardias.addFilter("cempresa", this.cpersona.toString()); guardias.addFilter("estado", "APT"); guardias.setRecperpage(3000000); guardias.query(); } /** * Método en el cual se cargan las armas de la persona registrada * @throws Exception */ public void cargaArmas() throws Exception { String estadosarma; String tipoFab; armas.setRecperpage(5000); String fechaCaducidad=null; estadosarma = tarmTramite.getEstados(); tipoFab = tarmTramite.getTipofabricacion(); if(tarmTramite.getTipoautorizacion().equals("3")){ armas.addField("sancion", Constant.STR_Y); armas.addField("personcode", cpersona.toString()); } if(estadosarma != null && estadosarma.contains("REN")){ armas.addField("TRAMITE", tarmTramite); } if(tipoFab != null){ armas.addField("TIPOFABRICACION", tipoFab); } if(tarmTramite.getTipotramite().equals("1")){//primera vez if(!tarmTramite.getCategoria().equals("1") && //Categoria APERTURA !tarmTramite.getTipoautorizacion().equals("2") && !tarmTramite.getTipoautorizacion().equals("4")){//tipoautorizacion=CERTIFICADOS 2 GUiA DE LIBRE TRaNSITO 4 fechaCaducidad=" is null "; } }else if(tarmTramite.getTipotramite().equals("3")){//renovacion fechaCaducidad=" <> null "; }else if(tarmTramite.getTipotramite().equals("2")){//reimpresion Date fechaActual= new Date(); SimpleDateFormat format= new SimpleDateFormat("dd/MM/yyyy"); fechaCaducidad=" > "+"to_date("+format.format(fechaActual+",'dd/MM/yyyy')"); } // CATEGORIA 14 PREVIA IMPORTACION if(!tarmTramite.getCategoria().equals("14")){ armas.setLrecord(armas.findxPersona(cpersona.longValue(), estadosarma, tipoFab, tarmTramite.getClase(), fechaCaducidad)); mostrarFiltroAUCP=Boolean.FALSE; } else{ armas.setLrecord(new ArrayList()); mostrarFiltroAUCP=Boolean.TRUE; } // for(TarmArmas arma: armas.getLrecord()){ if(arma.getLote()==null){ arma.setLote(" "); } } Collections.sort(armas.getLrecord(), new Comparator() { public int compare(TarmArmas p1, TarmArmas p2) { return p1.getLote().compareTo(p2.getLote()); } }); if(armas.getLrecord() == null || armas.getLrecord().isEmpty()){ MessageHelper.setMessageWarn(MsgControlArmas.getProperty("msg_error_armas_inexistentes")); } } /** * Método en el cual se cargan las agencias de la persona registrada * @throws Exception */ private void cargarAgencias() throws Exception{ agenciaSucursal.setRecperpage(3000000); agenciaSucursal.addFilter("personcode", this.cpersona.toString()); agenciaSucursal.query(); // agenciaSucursal.record.fautorizacion } /** * Método en el cual se cargan los documentos habilitantes de la persona registrada * @throws Exception */ private void cargarTodosDocumentosPersona(){ try { documentoHabilitante.setRecperpage(3000000); documentoHabilitante.documentosXPersona(cpersona); } catch (Exception e) { MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_noexistendocumentos")); return; } } /** * Método en el cual se cargan los documentos habilitantes de la persona registrada * @throws Exception */ private void cargarDocumentos(String tipoTramite, String tipoTramite2, String tipoAutorizacion){ try { List listTramites = TarmTramiteController.findPorCriteriosTramite(tipoTramite,tipoTramite2,tipoAutorizacion); // List listSolicitudes = new ArrayList<>(); // for(TarmTramite tramite:listTramites){ // List listSolicitud = SolicitudArmasController.findByPersonaCTramite(cpersona, String.valueOf(tramite.getPk())); // if(listSolicitud!=null && !listSolicitud.isEmpty()){ // listSolicitudes.addAll(listSolicitud); // } // } if(listTramites==null || listTramites.isEmpty()){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_noexistendocumentos")); return; } documentoHabilitante.setRecperpage(3000000); documentoHabilitante.documentosXTramite(listTramites,cpersona); } catch (Exception e) { MessageHelper.setMessageInfo(MsgControlArmas.getProperty("msg_error_noexistendocumentos")); return; } } /** * Se almacena las agencias en su tabla * @throws Exception */ public void guardarAgencias() throws Exception { agenciaSucursal.getRecord().setPersoncode(cpersona); agenciaSucursal.update(); agenciaSucursal.save(); this.cargarAgencias(); agenciaSucursal.setRecord(null); } /** * Elimina las agencias sucursales de la base de datos * @throws Exception */ public void eliminarAgencias() throws Exception { agenciaSucursal.remove(); agenciaSucursal.update(); agenciaSucursal.save(); agenciaSucursal.setRecord(null); } /** * Guarda las armas * @throws Exception */ public void guardarArmas() throws Exception { armas.getRegistroArmas().getRecord().setPersoncode(cpersona); // armas.getRegistroArmas().update(); // armas.update(); armas.saveArmaSolicitud(); if(this.armas.isExisteTipoArmaExplosivo()){ armas.setRecord(null); } } /** * Elimina armas de la base de datos * @throws Exception */ public void eliminarArmas() throws Exception{ armas.remove(); armas.update(); armas.save(); cargaArmas(); armas.setRecord(null); } /** * Datos de control de ingreso de informacion dado el tipo de tramite. */ public void onChangeTipoTramite() throws Exception { String ctipotramite = solicitud.getRecord().getCcentrocontrol();//getCtipotramite(); requisitos.consultaPorTipoTramite(ctipotramite); } /** * Cambia país */ public void executePais() { if(direccion.getMfilelds().get("solcodpais") != null && StringUtils.isNotBlank(direccion.getMfilelds().get("solcodpais").toString())){ direccion.setLprovinces(ProvinceController.find(direccion.getMfilelds().get("solcodpais").toString())); direccion.setLcantones(new ArrayList()); direccion.setLparroquias(new ArrayList()); direccion.setLcities(new ArrayList()); } } /** * Método para el evento change del combo provincias */ public void executeProvincia() { if (direccion.getMfilelds().get("solcodpais") != null && StringUtils.isNotBlank(direccion.getMfilelds().get("solcodpais").toString())) { direccion.setLcantones(CantonController.find(direccion.getMfilelds().get("solcodpais").toString(), direccion.getMfilelds().get("solcodprovincia").toString())); direccion.setLparroquias(new ArrayList()); direccion.setLcities(new ArrayList()); } } /** * Método para el evento change del combo cantones */ public void executeCanton() { if (direccion.getMfilelds().get("solcodpais") != null && StringUtils.isNotBlank(direccion.getMfilelds().get("solcodpais").toString())) { direccion.setLparroquias(ParroquiaController.find(direccion.getMfilelds().get("solcodpais").toString(), direccion.getMfilelds().get("solcodprovincia").toString(), direccion.getMfilelds().get("solcodcanton").toString())); direccion.setLcities(CityController.find(direccion.getMfilelds().get("solcodpais").toString(), direccion.getMfilelds().get("solcodprovincia").toString(), direccion.getMfilelds().get("solcodcanton").toString())); } } /** * Cambio la provincia de origen */ public void cambioProvinciasOrigen() { if(solicitud.getRecord().getCprovinciaorigen() != null){ this.lcantonOrigen = CantonController.find("EC", solicitud.getRecord().getCprovinciaorigen()); this.solicitud.getRecord().setCpaisorigen("EC"); } else{ this.lcantonOrigen.clear(); this.solicitud.getRecord().setCpaisorigen(null); } } /** * Cambio la provincia destino */ public void cambioProvinciaDestino() { if(solicitud.getRecord().getCprovinciadestino() != null){ this.lcantonDestino = CantonController.find("EC", solicitud.getRecord().getCprovinciadestino()); this.solicitud.getRecord().setCpaisdestino("EC"); } else{ this.lcantonDestino.clear(); this.solicitud.getRecord().setCpaisdestino(null); } } /** * Metodo que genera el reporte * @param fila */ public void imprimir(){ boolean flagArmas = false; boolean flagGuardias = false; boolean flagAgencia = false; if(tarmTramite==null){ MessageHelper.setMessageError("ERROR NO MANEJADO POR LA APLICACION CONTACTE AL PROVEEDOR"); return; } if(tarmTramite.getRegistroguardia().equalsIgnoreCase("Y")){ flagGuardias = true; } if (tarmTramite.getRegistroarmas().equalsIgnoreCase("Y")) { flagArmas = true; } if (tarmTramite.getRegistroagenciasucursal().equalsIgnoreCase("Y")) { flagAgencia = true; } this.reporteGeneral(csolicitud,flagAgencia,flagArmas,flagGuardias); FacesContext context = FacesContext.getCurrentInstance(); context.addMessage(null, new FacesMessage("RECUERDE", MsgControlArmas.getProperty("msg_recuerdeClickContinuarTramite"))); } /** * Obtiene el centro de control segun usurio logeado. * @throws Exception * */ private String obtenerCentroControl() throws Exception { String institucionCentroControl=""; this.tsafeUserDetailUsuario = (TsafeUserDetail) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("TSAFEUSERDETAIL"); PersonAddressController personAddressController = new PersonAddressController(); TcustPersonAddress tcustPersonAddres= personAddressController.findPrincipal(tsafeUserDetailUsuario.getPk().getPersoncode().toString()); //cprovincia=tcustPersonAddres.getProvincecode(); TarmCentroControlJur centroControlJur= TarmCentroControlJurController.findxProvincia(tcustPersonAddres.getProvincecode()); this.centroControl= CentroControlArmasController.findPorCodigo(centroControlJur.getCcentrocontrol()); this.nombreInstitucion=CatalogDetailController.findxCodigoCodcatalogo( centroControl.getNombreinstitucion(), centroControl.getNombreinstitucioncodigo()).getDescription(); institucionCentroControl=this.nombreInstitucion; return institucionCentroControl; } /** * Obtiene el responsable del Centro de Control */ public void obtenerResponsableCentroControl(){ Integer responsable = this.centroControl.getPersoncode(); this.responsableCentroControl = PersonDetailController.find(responsable.toString()); } public TarmCentroControl obtenerCentro(){ for(TarmCentroControl centro:this.centroControlList){ if(this.solicitud.getRecord().getCcentrocontrol().equals(centro.getPk())){ return centro; } } return null; } public void reporteGeneral(String solicitud,boolean flagAgencia,boolean flagArmas,boolean flagGuardias) { try { querydatabase(); String gradoUsuario =""; String path = "armas/reports/generalReport"; String filename="Solicitud"; TgeneCatalogDetail grado = CatalogDetailController.findxCodigoCodcatalogo(this.responsableCentroControl.getMilitarygrade(), this.responsableCentroControl.getMilitarygradecode()); if(grado != null){ gradoUsuario = grado.getDescription()+" - "+this.responsableCentroControl.getName(); }else{ gradoUsuario = "Sin Grado - "+this.responsableCentroControl.getName(); } //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitud); //Obteniendo la solicitud TarmSolicitud s=SolicitudController.findSolicitudxcodsolicitud(solicitud); TarmTramite t; Boolean datosTramiteVacios=false; // if(this.obtenerCentro() != null){ parameters.put("centroControl", this.obtenerCentro().modifiedData().get("desnombreinstitucion")); } if(s!=null){ //Obteniendo el tramite t=TarmTramiteController.find(s.getCtramite().toString()); //Obteniendo la solicitud trmite TarmSolicitudTramite st=TarmSolicitudTramiteController.findPorCSolicitud(solicitud); if(t!=null){ //No de solicitud if(st!=null){ parameters.put("noSolicitud", s.getNumerosolicitud()); }else{ parameters.put("noSolicitud", " "); } //No de tramite if(st!=null){ parameters.put("noTramite", st.getNumerotramite()); }else{ parameters.put("noTramite", " "); } //Tipo de tramite if(t.getModifiedData().get("tipotramite")!=null){ parameters.put("tipoTramite", t.getModifiedData().get("tipotramite")); }else{ parameters.put("tipoTramite", " "); } //Tipo de autorizacion if(t.getModifiedData().get("tipoautorizacion")!=null){ parameters.put("tipoAutorizacion", t.getModifiedData().get("tipoautorizacion")); }else{ parameters.put("tipoAutorizacion", " "); } //Categoria if(t.getModifiedData().get("categoria")!=null){ parameters.put("categoria", t.getModifiedData().get("categoria")); }else{ parameters.put("categoria", " "); } //Uso actividad if(t.getModifiedData().get("usoactividad")!=null){ parameters.put("usoActividad", t.getModifiedData().get("usoactividad")); }else{ parameters.put("usoActividad", " "); } //Cabecera if(t.getCabecera()!=null){ parameters.put("cabecera", t.getCabecera()); }else{ parameters.put("cabecera", " "); } }else{ datosTramiteVacios=true; } }else{ datosTramiteVacios=true; } if(datosTramiteVacios){ parameters.put("noTramite", " "); parameters.put("tipoTramite", " "); parameters.put("tipoAutorizacion", " "); parameters.put("categoria", " "); parameters.put("usoActividad", " "); parameters.put("cabecera", " "); } //Obteniendo la direccion String email=" ",direccion=" "; List direcciones=PersonAddressController.findAllByPersonCode(s.getPersoncode().toString()); for (TcustPersonAddress d : direcciones) { Calendar calendario=Calendar.getInstance(); calendario.setTime(d.getPk().getDateto()); if(calendario.get(Calendar.YEAR)==2999){ if(d.getAddresstypecatalog().equalsIgnoreCase("3")){ email=d.getAddress(); }else if(d.getPrincipal()!=null && d.getPrincipal().equalsIgnoreCase("Y")){ direccion=d.getAddress(); } } } //Email parameters.put("email", email); //Direccion parameters.put("direccion", direccion); //Actividad Economica TcustPersonDetail person = PersonDetailController.find(s.getPersoncode().toString()); if(person != null && person.getEconimicact() != null){ parameters.put("actividadeco", person.getEconimicact()); }else { parameters.put("actividadeco", ""); } //Fecha SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy / hh:mm:ss"); parameters.put("lugarFecha", sdf.format(Calendar.getInstance().getTime())); parameters.put("flagAgencia", flagAgencia); parameters.put("flagArmas", flagArmas); parameters.put("flagGuardias", flagGuardias); //parameters.put("centroControl", this.obtenerCentroControl()); parameters.put("gradoUsuario", gradoUsuario); parameters.put("usuario",PersonDetailController.find(this.tsafeUserDetailUsuario.getPk().getPersoncode().toString()).getName()); parameters.put("codResponsable", this.responsableCentroControl.getPk().getPersoncode()); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * Abre el LOV de busqueda de importaciones por codigo solicitud (AUCP) */ public void openCargaPrevia() { Map> params = new HashMap<>(); List lPersoncodeParam = new ArrayList<>(); lPersoncodeParam.add(detallepersona.getRecord().getPk().getPersoncode().toString()); params.put("personcode", lPersoncodeParam); CargasLovController.openLov(params); } /** * Regresa del LOV de carga * @param event */ public void onReturnCarga(SelectEvent event) { System.out.println("Retorno del lov carga"); TarmCarga carga = (TarmCarga) event.getObject(); filterAUCP=carga.getAucp(); solicitud.getRecord().setAucp(filterAUCP); TarmRegistroArmas registro = RegistroArmController.findByCodigo(carga.getCregistro().toString()); armas.setLrecord(ArmasController.findxRegistro(registro.getPk().toString())); if(armas.getLrecord()==null){ armas.setLrecord(new ArrayList()); } } /** * Método que valida la persona vendedora * en las tablas de maia y en la snap * */ public void validarVendedor(){ if(solicitud.getRecord().getNumerodocumentoorigen()==null || solicitud.getRecord().getTipodocumentoorigen()==null){ MessageHelper.setMessageError(MsgControlArmas.getProperty("mg_error_seleccioneeltipodedocumentooingreselacedulavendedor")); return; } if(solicitud.getRecord().getTipodocumentoorigen().equals(codigoCedula)){ //----------validamos si es valida la CEDULA if(!ValidateIdentification.cedula(solicitud.getRecord().getNumerodocumentoorigen())){ MessageHelper.setMessageError(MsgControlArmas.getProperty("msg_error_nodocumentoinvalidovendedor")); return; } //envia a buscar en MAIA tcustPersonDetailVendedor=buscarPersonaMaia(solicitud.getRecord().getNumerodocumentoorigen(),solicitud.getRecord().getTipodocumentoorigen()); if(tcustPersonDetailVendedor==null){ //envia a buscar en la SNAP tcustPersonDetailVendedor=buscarPersonaSnap(solicitud.getRecord().getNumerodocumentoorigen(),solicitud.getRecord().getTipodocumentoorigen()); } }else if(solicitud.getRecord().getTipodocumentoorigen().equals(codigoRuc)){ //----------validamos si es valida el RUC if(!ValidateIdentification.ruc(solicitud.getRecord().getNumerodocumentoorigen())){ MessageHelper.setMessageError(MsgControlArmas.getProperty("msg_error_nodocumentoinvalidovendedor")); return; } //envia a buscar en maia tcustPersonDetailVendedor=buscarPersonaMaia(solicitud.getRecord().getNumerodocumentoorigen(),solicitud.getRecord().getTipodocumentoorigen()); if(tcustPersonDetailVendedor==null){ //envia a buscar en la snap tcustPersonDetailVendedor=buscarPersonaSnap(solicitud.getRecord().getNumerodocumentoorigen(),solicitud.getRecord().getTipodocumentoorigen()); } }else{ //----------si es PASAPORTE tcustPersonDetailVendedor=buscarPersonaMaia(solicitud.getRecord().getNumerodocumentoorigen(),solicitud.getRecord().getTipodocumentoorigen()); if(tcustPersonDetailVendedor==null){ MessageHelper.setMessageInfo(MsgControlArmas.getProperty("mg_error_usuarionoencontradovendedor")); tcustPersonDetailVendedor= new TcustPersonDetail(); tcustPersonDetailVendedor.setIdentification(solicitud.getRecord().getNumerodocumentoorigen()); tcustPersonDetailVendedor.setIdentificationcatalog(solicitud.getRecord().getTipodocumentoorigen()); tcustPersonDetailVendedor.setIdentificationcatalogcode("IDENTIFICATION"); tcustPersonDetailVendedor.setName(solicitud.getRecord().getNombrerazonsocialorigen()); //solicitud.getRecord().setNombrerazonsocialorigen(null); } } //validamos que existe la persona en Maia o SNAP if(tcustPersonDetailVendedor!=null && tcustPersonDetailVendedor.getIdentification()!=null && tcustPersonDetailVendedor.getName()!=null){ //seteamos el nombre para visualizarle solicitud.getRecord().setNombrerazonsocialorigen(tcustPersonDetailVendedor.getName()); }else if(!solicitud.getRecord().getTipodocumentoorigen().equals(codigoPasaporte)){ MessageHelper.setMessageError(MsgControlArmas.getProperty("mg_error_usuarionoencontradovendedor")); tcustPersonDetailVendedor= new TcustPersonDetail(); solicitud.getRecord().setNombrerazonsocialorigen(null); } } /** * Método para validar si la persona existe en la BD de Maia * @param numeroDocumento * @param tipoDocumento * @return TcustPersonDetail */ public TcustPersonDetail buscarPersonaMaia(String numeroDocumento, String tipoDocumento){ return PersonDetailController.findxidentification(numeroDocumento,tipoDocumento); } /** * Método para obtener los codigos */ public String codigos(String parametro){ TgeneParameters tgeneParameters= ParametersController.find(parametro, "1"); return tgeneParameters.getTextvalue(); } /** * Método para buscar a la persona en la snap * @param documento */ public TcustPersonDetail buscarPersonaSnap(String documento,String tipoDocumento){ if(tipoDocumento.equals(codigoCedula)){ Cedula cedula= ClienteCedula.obtenerCedula(documento); if(cedula!=null){ TcustPersonDetail detail= new TcustPersonDetail(); detail.setName(cedula.getNombre()); detail.setIdentification(cedula.getCedula()); detail.setIdentificationcatalog("CED"); detail.setIdentificationcatalogcode("IDENTIFICATION"); return detail; }else{ return null; } }else { Contribuyente contribuyente= ClienteRUC.obtenerRUC(documento); if(contribuyente!=null){ TcustPersonDetail detail= new TcustPersonDetail(); detail.setName(contribuyente.getRazonSocial()); detail.setIdentification(contribuyente.getNumeroRuc()); detail.setIdentificationcatalog("RUC"); detail.setIdentificationcatalogcode("IDENTIFICATION"); return detail; }else{ return null; } } } /** * Entrega el valor de: ltipopersona * * @return List */ public List getLtipopersona() { return ltipopersona; } /** * Entrega el valor de: ltipoidenti * * @return List */ public List getLtipoidenti() { return ltipoidenti; } /** * Entrega el valor de: ltipotramite * * @return List */ public List getLtipotramite() { return ltipotramite; } /** * Entrega el valor de: longitudid * * @return Integer */ public Integer getLongitudid() { return longitudid; } /** * Entrega el valor de: activarRegExIdentificacion * * @return boolean */ public boolean isActivarRegExIdentificacion() { return activarRegExIdentificacion; } /** * Entrega el valor de: solicitud * * @return SolicitudArmasController */ public SolicitudArmasController getSolicitud() { return solicitud; } /** * Fija el valor de: solicitud * * @param solicitud Valor a fijar en el atributo. */ public void setSolicitud(SolicitudArmasController solicitud) { this.solicitud = solicitud; } /** * Entrega el valor de: detallepersona * * @return PersonDetailController */ public PersonDetailController getDetallepersona() { return detallepersona; } /** * Fija el valor de: detallepersona * * @param detallepersona Valor a fijar en el atributo. */ public void setDetallepersona(PersonDetailController detallepersona) { this.detallepersona = detallepersona; } /** * Entrega el valor de: natural * * @return PeopleController */ public PeopleController getNatural() { return natural; } /** * Fija el valor de: natural * * @param natural Valor a fijar en el atributo. */ public void setNatural(PeopleController natural) { this.natural = natural; } /** * Entrega el valor de: direccion * * @return PersonAddressController */ public PersonAddressController getDireccion() { return direccion; } /** * Fija el valor de: direccion * * @param direccion Valor a fijar en el atributo. */ public void setDireccion(PersonAddressController direccion) { this.direccion = direccion; } /** * Entrega el valor de: telefono * * @return PersonPhoneController */ public PersonPhoneController getTelefono() { return telefono; } /** * Fija el valor de: telefono * * @param telefono Valor a fijar en el atributo. */ public void setTelefono(PersonPhoneController telefono) { this.telefono = telefono; } /** * Entrega el valor de: requisitos * * @return SolicitudRequisitosController */ public SolicitudRequisitosController getRequisitos() { return requisitos; } /** * Fija el valor de: requisitos * * @param requisitos Valor a fijar en el atributo. */ public void setRequisitos(SolicitudRequisitosController requisitos) { this.requisitos = requisitos; } /** * Entrega el valor de: flujoiniciado * * @return boolean */ public boolean isFlujoiniciado() { return flujoiniciado; } /** * Entrega el valor de: ocultarBotonInicioFlujo * * @return boolean */ public boolean isOcultarBotonInicioFlujo() { return ocultarBotonInicioFlujo; } /** * Fija el valor de: ocultarBotonInicioFlujo * * @param ocultarBotonInicioFlujo Valor a fijar en el atributo. */ public void setOcultarBotonInicioFlujo(boolean ocultarBotonInicioFlujo) { this.ocultarBotonInicioFlujo = ocultarBotonInicioFlujo; } /** * Entrega el valor de: esaprobacion * * @return boolean */ public boolean isEsaprobacion() { return esaprobacion; } public LoginController getLogin() { return login; } public void setLogin(LoginController login) { this.login = login; } public UserDetailController getDetalleusuario() { return detalleusuario; } public void setDetalleusuario(UserDetailController detalleusuario) { this.detalleusuario = detalleusuario; } public List getLorigenadquisicion() { return lorigenadquisicion; } public void setLorigenadquisicion(List lorigenadquisicion) { this.lorigenadquisicion = lorigenadquisicion; } public boolean isIngresarRequisitos() { return ingresarRequisitos; } public void setIngresarRequisitos(boolean ingresarRequisitos) { this.ingresarRequisitos = ingresarRequisitos; } public boolean isSeleccionarArmas() { return seleccionarArmas; } public void setSeleccionarArmas(boolean seleccionarArmas) { this.seleccionarArmas = seleccionarArmas; } public boolean isSeleccionarGuardias() { return seleccionarGuardias; } public void setSeleccionarGuardias(boolean seleccionarGuardias) { this.seleccionarGuardias = seleccionarGuardias; } public boolean isSeleccionarAgencias() { return seleccionarAgencias; } public void setSeleccionarAgencias(boolean seleccionarAgencias) { this.seleccionarAgencias = seleccionarAgencias; } public boolean isListarDocumentos() { return listarDocumentos; } public void setListarDocumentos(boolean listarDocumentos) { this.listarDocumentos = listarDocumentos; } public RequisitoPorTramiteController getRequisitoPorTramite() { return requisitoPorTramite; } public void setRequisitoPorTramite( RequisitoPorTramiteController requisitoPorTramite) { this.requisitoPorTramite = requisitoPorTramite; } public GuardiasController getGuardias() { return guardias; } public void setGuardias(GuardiasController guardias) { this.guardias = guardias; } public SolicitudGuardiasController getSolicitudGuardias() { return solicitudGuardias; } public void setSolicitudGuardias(SolicitudGuardiasController solicitudGuardias) { this.solicitudGuardias = solicitudGuardias; } public ArmasController getArmas() { return armas; } public void setArmas(ArmasController armas) { this.armas = armas; } public RegistroArmController getRegistroArmas() { return registroArmas; } public void setRegistroArmas(RegistroArmController registroArmas) { this.registroArmas = registroArmas; } public AgenciaSucursalController getAgenciaSucursal() { return agenciaSucursal; } public void setAgenciaSucursal(AgenciaSucursalController agenciaSucursal) { this.agenciaSucursal = agenciaSucursal; } public RecepcionArmasController getSolicitudArmas() { return solicitudArmas; } public void setSolicitudArmas(RecepcionArmasController solicitudArmas) { this.solicitudArmas = solicitudArmas; } public SolicitudAgenciaSucursalController getSolicitudAgenciaSucursal() { return solicitudAgenciaSucursal; } public void setSolicitudAgenciaSucursal( SolicitudAgenciaSucursalController solicitudAgenciaSucursal) { this.solicitudAgenciaSucursal = solicitudAgenciaSucursal; } public TarmSolicitudDocumentoController getSolicitudDocumento() { return solicitudDocumento; } public void setSolicitudDocumento( TarmSolicitudDocumentoController solicitudDocumento) { this.solicitudDocumento = solicitudDocumento; } public DocumentoHabilitanteController getDocumentoHabilitante() { return documentoHabilitante; } public void setDocumentoHabilitante( DocumentoHabilitanteController documentoHabilitante) { this.documentoHabilitante = documentoHabilitante; } public Date getFechaActual() { return fechaActual; } public void setFechaActual(Date fechaActual) { this.fechaActual = fechaActual; } public boolean isDeshabilitarPantalla() { return deshabilitarPantalla; } public void setDeshabilitarPantalla(boolean deshabilitarPantalla) { this.deshabilitarPantalla = deshabilitarPantalla; } public boolean isMostrarIngresoArmas() { return mostrarIngresoArmas; } public void setMostrarIngresoArmas(boolean mostrarIngresoArmas) { this.mostrarIngresoArmas = mostrarIngresoArmas; } public String getCsolicitud() { return csolicitud; } public void setCsolicitud(String csolicitud) { this.csolicitud = csolicitud; } public Boolean getIsEnableGrabar() { return isEnableGrabar; } public void setIsEnableGrabar(Boolean isEnableGrabar) { this.isEnableGrabar = isEnableGrabar; } public boolean isActualizaDatosGenerales() { return actualizaDatosGenerales; } public void setActualizaDatosGenerales(boolean actualizaDatosGenerales) { this.actualizaDatosGenerales = actualizaDatosGenerales; } public ReportController getReportController() { return reportController; } public void setReportController(ReportController reportController) { this.reportController = reportController; } public boolean isGuiaLibreTransito() { return guiaLibreTransito; } public void setGuiaLibreTransito(boolean guiaLibreTransito) { this.guiaLibreTransito = guiaLibreTransito; } public EvaluacionController getEvaluacionController() { return evaluacionController; } public void setEvaluacionController(EvaluacionController evaluacionController) { this.evaluacionController = evaluacionController; } public AgenciaArmaController getAgenciaArma() { return agenciaArma; } public void setAgenciaArma(AgenciaArmaController agenciaArma) { this.agenciaArma = agenciaArma; } public List getLprovincias() { return lprovincias; } public void setLprovincias(List lprovincias) { this.lprovincias = lprovincias; } public List getLcantonOrigen() { return lcantonOrigen; } public void setLcantonOrigen(List lcantonOrigen) { this.lcantonOrigen = lcantonOrigen; } public List getLcantonDestino() { return lcantonDestino; } public void setLcantonDestino(List lcantonDestino) { this.lcantonDestino = lcantonDestino; } public List getCentroControlList() { return centroControlList; } public void setCentroControlList(List centroControlList) { this.centroControlList = centroControlList; } public List getTipoDocumento() { return tipoDocumento; } public void setTipoDocumento(List tipoDocumento) { this.tipoDocumento = tipoDocumento; } public Boolean getMostrarFiltroAUCP() { return mostrarFiltroAUCP; } public void setMostrarFiltroAUCP(Boolean mostrarFiltroAUCP) { this.mostrarFiltroAUCP = mostrarFiltroAUCP; } public String getFilterAUCP() { return filterAUCP; } public void setFilterAUCP(String filterAUCP) { this.filterAUCP = filterAUCP; } public CargaController getCargaController() { return cargaController; } public void setCargaController(CargaController cargaController) { this.cargaController = cargaController; } }