maia_modificado/.svn/pristine/fb/fb5da6ba2b43cc0f2fd75adac35...

2789 lines
113 KiB
Plaintext
Executable File
Raw Permalink Blame History

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.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
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.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.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.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<AbstractDataTransport> {
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<TgeneCatalogDetail> ltipopersona;
/**
* Atributo para la lista de objetos TgeneCatalogDetail de identificaci&oacute;n
*/
private List<TgeneCatalogDetail> ltipoidenti;
/**
* Lista de tipos de tr&aacute;mite.
*/
private List<TgeneCatalogDetail> ltipotramite;
/**
* Lista de origen de adquisici&oacute;n
*/
private List<TgeneCatalogDetail> lorigenadquisicion;
/**
* Lista de provincias
*/
private List<TgeneProvince> lprovincias;
/**
* Lista de cantones de origen
*/
private List<TgeneCanton> lcantonOrigen;
/**
* Lista de cantones de destino
*/
private List<TgeneCanton> 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&eacute;s de grabar la solicitud
*/
private boolean deshabilitarPantalla;
/**
* Muestra el bot&oacute;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&aacute;mite seleccionado
*/
private TarmTramite tarmTramite;
/**
* Habilita campos en actualizaci&oacute;n de datos generales
*/
private boolean actualizaDatosGenerales;
/**
* Aprueba si es gu&iacute;a de libre tr&aacute;nsito
*/
private boolean guiaLibreTransito;
/**
* Lista Personas vendedoreas
*/
private Set<TcustPersonDetail> listaPersonasDetailVen;
/**
* Vendedor seleccionado
*/
private Integer selecionaCodigoVendedor;
/**
* 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&eacute;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<TarmCentroControl> centroControlList;
/**
* Atributo para la lista de objetos TgeneCatalogDetail
*/
private List<TgeneCatalogDetail> 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<TgeneCatalogDetail>();
// 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");
listaPersonasDetailVen = new HashSet<TcustPersonDetail>();
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<String, DtoSave> msave = new HashMap<String, DtoSave>();
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<String, DtoSave> msave = new HashMap<String, DtoSave>();
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&uacute;meros de tel&eacute;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&eacute;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){
//tramite autorizacion primera vez/renovacion Estableciiento de agencias Companias de vigilancia y seguridad
TgeneParameters parametro=ParametersController.find("CODIGO.TRAMITE.NOVALIDAARMAS", "1");
List<Long>codigoTramiteNoValidaArma=null;
if(parametro!=null){
codigoTramiteNoValidaArma=new ArrayList<>();
String []arrayTramitesNoValidaArmas= parametro.getTextvalue().split(",");
for (String item : arrayTramitesNoValidaArmas) {
codigoTramiteNoValidaArma.add(Long.parseLong(item));
}
}
if(this.tarmTramite!= null && codigoTramiteNoValidaArma!=null && codigoTramiteNoValidaArma.contains(this.tarmTramite.getPk())){
System.out.println("Tramite-"+this.tarmTramite.getPk());
//pasa
}else 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<String, DtoSave> msave = new HashMap<String, DtoSave>();
// 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<String> 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&oacute;n al core para solicitar un n&uacute;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<String, DtoQuery> mapQuery = new HashMap<String, DtoQuery>();
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&oacute;n la direcci&oacute;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&eacute;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&eacute;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&oacute;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&aacute;mite
*/
public void openLovTramite() {
Map<String, List<String>> params = new HashMap<String, List<String>>();
List<String> 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<String, List<String>> params = new HashMap<String, List<String>>();
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<TgeneCatalogDetail>();
List<TarmOrigenTramite> 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&aacute;mite ingresado cumple la prevalidaci&oacute;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&eacute;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&eacute;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")){//devolucion 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<TarmArmas>());
mostrarFiltroAUCP=Boolean.TRUE;
}
//
listaPersonasDetailVen = new HashSet<TcustPersonDetail>();
Set<String>listaCodigos= new HashSet<String>();
for(TarmArmas arma: armas.getLrecord()){
if(arma.getLote()==null){
arma.setLote(" ");
}
//carga los posibles vendedoeres
if(this.guiaLibreTransito){
System.out.println("guiaLibreTransito "+guiaLibreTransito);
List<TarmArmas>listaArmas=AuxArmasController.findListXCodigoArma(arma.getCodigoarma());
if(listaArmas!=null && listaArmas.size()>0){
for (TarmArmas tarmArmasVendedor : listaArmas) {
System.out.println("arma.getCregistro(): " +tarmArmasVendedor.getModifiedData().get("personcode"));
if(tarmArmasVendedor.getModifiedData().get("personcode")!=null &&
!listaCodigos.contains(tarmArmasVendedor.getModifiedData().get("personcode").toString())){
listaCodigos.add(tarmArmasVendedor.getModifiedData().get("personcode").toString());
TcustPersonDetail personaDetail=PersonDetailController.find(tarmArmasVendedor.getModifiedData().get("personcode").toString());
listaPersonasDetailVen.add(personaDetail);
}
}
}
}
}
System.out.println("listaPersonasDetailVen: " +listaPersonasDetailVen.size());
Collections.sort(armas.getLrecord(), new Comparator<TarmArmas>() {
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&eacute;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&eacute;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&eacute;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<TarmTramite> listTramites = TarmTramiteController.findPorCriteriosTramite(tipoTramite,tipoTramite2,tipoAutorizacion);
// List<TarmSolicitud> listSolicitudes = new ArrayList<>();
// for(TarmTramite tramite:listTramites){
// List<TarmSolicitud> 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&iacute;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<TgeneCanton>());
direccion.setLparroquias(new ArrayList<TgeneParroquia>());
direccion.setLcities(new ArrayList<TgeneCity>());
}
}
/**
* M&eacute;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<TgeneParroquia>());
direccion.setLcities(new ArrayList<TgeneCity>());
}
}
/**
* M&eacute;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<String, Object> 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<TcustPersonAddress> 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());
parameters.put("codigoQR",(s!=null?s.getNumerosolicitud():solicitud)+" "+sdf.format(Calendar.getInstance().getTime())+" "+
gradoUsuario+" "+this.nombreInstitucion);
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<String, List<String>> params = new HashMap<>();
List<String> 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<TarmArmas>());
}
}
/**
* M&eacute;todo que valida la persona vendedora
* en las tablas de maia y en la snap
*
*/
public void validarVendedor(){
tcustPersonDetailVendedor=null;
if(selecionaCodigoVendedor==null){
MessageHelper.setMessageError("Seleccione el vendedor");
return;
}
tcustPersonDetailVendedor=PersonDetailController.find(selecionaCodigoVendedor.toString());
solicitud.getRecord().setNumerodocumentoorigen(tcustPersonDetailVendedor.getIdentification());
solicitud.getRecord().setTipodocumentoorigen(tcustPersonDetailVendedor.getIdentificationcatalog());
solicitud.getRecord().setNombrerazonsocialorigen(tcustPersonDetailVendedor.getName());
/*
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&eacute;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&eacute;todo para obtener los codigos
*/
public String codigos(String parametro){
TgeneParameters tgeneParameters= ParametersController.find(parametro, "1");
return tgeneParameters.getTextvalue();
}
/**
* M&eacute;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<TgeneCatalogDetail>
*/
public List<TgeneCatalogDetail> getLtipopersona() {
return ltipopersona;
}
/**
* Entrega el valor de: ltipoidenti
*
* @return List<TgeneCatalogDetail>
*/
public List<TgeneCatalogDetail> getLtipoidenti() {
return ltipoidenti;
}
/**
* Entrega el valor de: ltipotramite
*
* @return List<TarmTipoTramite>
*/
public List<TgeneCatalogDetail> 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<TgeneCatalogDetail> getLorigenadquisicion() {
return lorigenadquisicion;
}
public void setLorigenadquisicion(List<TgeneCatalogDetail> 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<TgeneProvince> getLprovincias() {
return lprovincias;
}
public void setLprovincias(List<TgeneProvince> lprovincias) {
this.lprovincias = lprovincias;
}
public List<TgeneCanton> getLcantonOrigen() {
return lcantonOrigen;
}
public void setLcantonOrigen(List<TgeneCanton> lcantonOrigen) {
this.lcantonOrigen = lcantonOrigen;
}
public List<TgeneCanton> getLcantonDestino() {
return lcantonDestino;
}
public void setLcantonDestino(List<TgeneCanton> lcantonDestino) {
this.lcantonDestino = lcantonDestino;
}
public List<TarmCentroControl> getCentroControlList() {
return centroControlList;
}
public void setCentroControlList(List<TarmCentroControl> centroControlList) {
this.centroControlList = centroControlList;
}
public List<TgeneCatalogDetail> getTipoDocumento() {
return tipoDocumento;
}
public void setTipoDocumento(List<TgeneCatalogDetail> 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;
}
public Set<TcustPersonDetail> getListaPersonasDetailVen() {
return listaPersonasDetailVen;
}
public void setListaPersonasDetailVen(
Set<TcustPersonDetail> listaPersonasDetailVen) {
this.listaPersonasDetailVen = listaPersonasDetailVen;
}
public Integer getSelecionaCodigoVendedor() {
return selecionaCodigoVendedor;
}
public void setSelecionaCodigoVendedor(Integer selecionaCodigoVendedor) {
this.selecionaCodigoVendedor = selecionaCodigoVendedor;
}
}