package com.fp.frontend.controller.armas.solicitud; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.List; import javax.annotation.PostConstruct; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; import javax.faces.bean.ViewScoped; import javax.faces.context.FacesContext; import com.fp.dto.Request; import com.fp.dto.Response; import com.fp.dto.query.DtoQuery; import com.fp.dto.query.Filter; import com.fp.dto.query.SubQuery; import com.fp.frontend.controller.AbstractController; import com.fp.frontend.controller.ReportController; import com.fp.frontend.controller.armas.parametros.CentroControlArmasController; import com.fp.frontend.controller.armas.parametros.TarmCentroControlJurController; import com.fp.frontend.controller.pcustomer.PersonAddressController; import com.fp.frontend.controller.pcustomer.PersonDetailController; import com.fp.frontend.controller.pgeneral.gene.CatalogDetailController; import com.fp.frontend.controller.pgeneral.gene.ParametersController; import com.fp.frontend.helper.MessageHelper; import com.fp.frontend.utility.MsgControlArmas; import com.fp.persistence.parmas.param.TarmCentroControl; import com.fp.persistence.parmas.param.TarmCentroControlJur; import com.fp.persistence.parmas.param.TarmTramite; import com.fp.persistence.parmas.soli.TarmDocumentoHabilitante; import com.fp.persistence.parmas.soli.TarmSolicitud; 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.pgeneral.gene.TgeneCatalogDetail; import com.fp.persistence.pgeneral.gene.TgeneParameters; import com.fp.persistence.pgeneral.safe.TsafeUserDetail; /** * Descarga el Documento Habilitante dependidendo del tramite que se seleccione * @author Andres Cevallos */ @SuppressWarnings("serial") @ManagedBean @ViewScoped public class EmitirDocumentoHabilitante extends AbstractController { /** * Controlador Inyectado ReportController */ @ManagedProperty(value = "#{reportController}") private ReportController reportController; /** *Controador Inyectado TarmTramiteController */ @ManagedProperty(value = "#{tramiteController}") private TarmTramiteController tramiteController; /** *Referencia al Centro de control; */ private TarmCentroControl centroControl = new TarmCentroControl(); /** *Referencia a la solicitud del tramite */ private TarmSolicitudTramite solicitudTramite; /** *Referencia a la Solicitud */ private TarmSolicitud solicitud; /** *Fila de la lista de tramites */ private TarmTramite fila; /** *Detalles de la persona */ private TcustPersonDetail detallesPersona; /** * Detalle del usuario */ private TcustPersonDetail usuario; /** *Documento Habilitante relacionado con el tramite */ private TarmDocumentoHabilitante documentoHabilitante; /** * Numero de Tramite realizado */ private String numeroTramite; /** * Nombre de la persona */ private String nombreRazonSocial; /** * Formato de generacion de pdf */ private String formato = "pdf"; /** * Formato que se muestra en pantalla */ private String mostrarFormato="PDF"; // TcustPersonDetail detallesPersona; /** *Lista de Solicitudes */ private List lsolicitud; /** *Responsable de centro de control */ private TcustPersonDetail responsableCentroControl= null; /** * Detalle de Usuarios */ private TsafeUserDetail tsafeUserDetailUsuario = null; // String numeroTramite; // String nombreRazonSocial; /** * Detalle de identificacion */ private String identificacion; /** * Tipo de identificacion */ private String tipoidentificacion; /** *Habilita y deshabilita la impresion */ private boolean imprimir; /** *Nombre de la Institucion */ private String nombreInstitucion; private List ldocumentos; public EmitirDocumentoHabilitante() throws Exception { super(TarmSolicitudTramite.class); } @PostConstruct private void postconstruct() { this.init(); // super.startQuery(); } private void init() { try { recperpage = 15; // Cambiar al # reg a mirar. // lrecord = new ArrayList<>(); beanalias = "EMITIRDOCUMENTOHABILITANTE"; ldocumentos = new ArrayList(); ldocumentos = CatalogDetailController.find("IDENTIFICATION"); //Obteniendo el tramite //solicitudTramite=TarmSolicitudTramiteController.findPorCSolicitud("1"); //Obteniendo la solicitud //solicitud=ValidacionTramiteLibreTransitoController.findPorSolicitudSimple("1"); //this.numeroTramite=solicitudTramite.getNumerotramite(); //Obteniendo los datos del usuario logueado TsafeUserDetail tsafeUserDetail=(TsafeUserDetail)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("TSAFEUSERDETAIL"); usuario=PersonDetailController.find(tsafeUserDetail.getPk().getPersoncode().toString()); //Obteniendo el documento habilitante // documentoHabilitante=DocumentoHabilitanteController.findPorSolicitud("1"); this.responsableCentroControl = new TcustPersonDetail(); this.tsafeUserDetailUsuario = new TsafeUserDetail(); this.obtenerCentroControl(); this.obtenerResponsableCentroControl(); } catch (Exception e) { MessageHelper.setMessageError(e); } } @Override protected void querydatabase() { try { String sql=encontrarUsuario(); Request request = this.callerhelper.getRequest(); DtoQuery dto = super.getDtoQuery(true); dto.setOrderby("t.pk"); // En en string van todos los campos de orden ("t.pk, t.nombre, t.cpais"). if(sql!=null){ Filter filtro = new Filter(); filtro.setSql(sql); dto.addFiltro(filtro); } else{ this.lrecord = null; return; } SubQuery subqueryUso= new SubQuery("TarmTramite","usoactividad","actividad","i.pk in (select a.ctramite from TarmSolicitud a where a.pk=t.pk.csolicitud)"); dto.addSubQuery(subqueryUso); SubQuery subqueryPersona= new SubQuery("TarmSolicitud","personcode","persona","i.pk=t.pk.csolicitud"); dto.addSubQuery(subqueryPersona); SubQuery subqueryTipo=new SubQuery("TarmTramite", "tipoautorizacion", "tramite", "i.pk in (select a.ctramite from TarmSolicitud a where a.pk=t.pk.csolicitud)"); dto.addSubQuery(subqueryTipo); SubQuery subqueryCategoria= new SubQuery("TarmTramite", "categoria", "categoria", "i.pk in (select a.ctramite from TarmSolicitud a where a.pk=t.pk.csolicitud)"); dto.addSubQuery(subqueryCategoria); SubQuery subqueryCategoriaCodigo= new SubQuery("TarmTramite", "categoriacodigo", "categoriacodigo", "i.pk in (select a.ctramite from TarmSolicitud a where a.pk=t.pk.csolicitud)"); dto.addSubQuery(subqueryCategoriaCodigo); SubQuery subqueryTipocodigo=new SubQuery("TarmTramite", "tipoautorizacioncodigo", "tramitecodigo", "i.pk in (select a.ctramite from TarmSolicitud a where a.pk=t.pk.csolicitud)"); dto.addSubQuery(subqueryTipocodigo); SubQuery subqueryEstado=new SubQuery("TgeneCatalogDetail","description","desc","i.pk.catalog=t.estadotramite and i.pk.catalogcode=t.estadotramitecodigo"); dto.addSubQuery(subqueryEstado); HashMap mtables = new HashMap(); mtables.put(this.beanalias, dto); // permite adicionar mas de una tabla. request.setQueryTables(mtables); Response resp = this.callerhelper.executeQuery(request); if (resp.getResponseCode().compareTo(Response.RESPONSE_OK) != 0) { this.lrecord = new ArrayList(); MessageHelper.setMessageError(resp); } else { this.lrecord = (List) resp.get(this.beanalias); super.postQuery(this.lrecord); for(int i=0;i< this.lrecord.size();i++){ this.lrecord.get(i).getModifiedData().put("usodes", CatalogDetailController.findxCodigoCodcatalogo(this.lrecord.get(i).getModifiedData().get("actividad").toString(), "USOACTIVIDAD").getDescription()); this.lrecord.get(i).getModifiedData().put("imprimir", true); TcustPersonDetail person = PersonDetailController.find(this.lrecord.get(i).getModifiedData().get("persona").toString()); this.lrecord.get(i).getModifiedData().put("nombre",person!=null?person.getName():""); this.lrecord.get(i).getModifiedData().put("identificacion", person!=null?person.getIdentification():""); try{ TgeneCatalogDetail cate=CatalogDetailController.findxCodigoCodcatalogo(this.lrecord.get(i).getModifiedData().get("categoria").toString(),this.lrecord.get(i).getModifiedData().get("categoriacodigo").toString() ); this.lrecord.get(i).getModifiedData().put("categoriadesc", cate!=null?cate.getDescription():""); } catch(Exception e){ e.printStackTrace(); } try{ TgeneCatalogDetail tipo = CatalogDetailController.findxCodigoCodcatalogo(this.lrecord.get(i).getModifiedData().get("tramite").toString(), this.lrecord.get(i).getModifiedData().get("tramitecodigo").toString()); this.lrecord.get(i).getModifiedData().put("tipotramdesc", tipo!=null?tipo.getDescription():""); if(!lrecord.get(i).getEstadotramite().equals("APB")){ lrecord.get(i).getModifiedData().put("imprimir", "true"); } else{ lrecord.get(i).getModifiedData().put("imprimir", "false"); } } catch(Exception e){ e.printStackTrace(); } } } } catch (Throwable e) { MessageHelper.setMessageError(e); } } /** * Metodo que genera el reporte * @param fila */ public void imprimir(TarmSolicitudTramite fila){ boolean flagArmas = false; boolean flagGuardias = false; boolean flagAgencia = false; boolean flagDoc = false; String tipotramite=fila.getModifiedData().get("tramite").toString(); String nombreArchivo = fila.getModifiedData().get("tipotramdesc").toString(); solicitud = SolicitudController.findSolicitudxcodsolicitud(fila.getPk().getCsolicitud()); solicitudTramite=TarmSolicitudTramiteController.findPorCSolicitud(fila.getPk().getCsolicitud()); numeroTramite=solicitudTramite.getNumerotramite(); documentoHabilitante=DocumentoHabilitanteController.findPorSolicitud(fila.getPk().getCsolicitud()); TarmTramite tramite = TarmTramiteController.findSimple(fila.getPk().getCtramite().toString()); String tipoReporte = tramite.getRegistroagenciasucursal(); //solicitud=ValidacionTramiteLibreTransitoController.findPorSolicitudSimple(tipotramite); if(tipotramite==null){ MessageHelper.setMessageError("ERROR NO MANEJADO POR LA APLICACION CONTACTE AL PROVEEDOR"); return; } if(tipotramite.equals("2")){ if(tramite.getRegistroagenciasucursal().equalsIgnoreCase("Y")){ flagAgencia = true; } if (tramite.getRegistroarmas().equalsIgnoreCase("Y")) { flagArmas = true; } if (tramite.getRegistroguardia().equalsIgnoreCase("Y")) { flagGuardias = true; } if(tramite.getDocumentohabilitante().equalsIgnoreCase("Y")) { flagDoc = true; } this.reporteCertificados(solicitud.getPk(), flagAgencia, flagArmas, flagDoc, flagGuardias); return; }else if (tipotramite.equals("4")) { this.reporteGuiaLibreTransito(); return; }else { if(tramite.getRegistroagenciasucursal().equalsIgnoreCase("Y")){ flagAgencia = true; } if (tramite.getRegistroarmas().equalsIgnoreCase("Y")) { flagArmas = true; } if (tramite.getRegistroguardia().equalsIgnoreCase("Y")) { flagGuardias = true; } if(tramite.getDocumentohabilitante().equalsIgnoreCase("Y")) { flagDoc = true; } } this.reporteGeneral(solicitud.getPk(),flagAgencia,flagArmas,flagDoc,flagGuardias,nombreArchivo); } /** * Encuentra el usuario logueado * @return */ public String encontrarUsuario(){ if(identificacion==null || identificacion=="") return null; detallesPersona=PersonDetailController.findxidentification(identificacion, tipoidentificacion); if(detallesPersona==null) return null; lsolicitud=SolicitudController.findSolicitudxPersona(detallesPersona.getPk().getPersoncode().toString()); if(lsolicitud == null || lsolicitud.isEmpty()){ return null; } String csolicitud=null; for(TarmSolicitud soli : lsolicitud){ if(csolicitud==null){ csolicitud="csolicitud='"+soli.getPk()+"'"; } else{ csolicitud+=" or csolicitud='"+soli.getPk()+"'"; } } return csolicitud ; } public List getLdocumentos() { return ldocumentos; } public void setLdocumentos(List ldocumentos) { this.ldocumentos = ldocumentos; } @Override public void save() { // TODO Auto-generated method stub super.save(); } /** * Ejecuta un reporte de armas * @param name Nombre del reporte a generar. */ public void reporteGuiaLibreTransito() { try { String path = "armas/reports/guiaLibreTransito"; String filename=MsgControlArmas.getProperty("lbl_guiaLibreTransito"); detallesPersona = PersonDetailController.find(String.valueOf(solicitud.getPersoncode().toString())); solicitudTramite=TarmSolicitudTramiteController.findPorCSolicitud(solicitud.getPk()); //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitudTramite.getPk().getCsolicitud()); //Nombre del centro de control parameters.put("nombreCentro", this.nombreInstitucion); //No. Guia parameters.put("noGuia", this.numeroTramite); //Codigo de barras String codigoBarras=this.numeroTramite.replace("-", "").toLowerCase(); Boolean caracterEliminado=false; for (int i = 0; i < codigoBarras.length(); i++) { if(caracterEliminado){ i=0; caracterEliminado=false; } if(codigoBarras.toCharArray()[i]!='0' && codigoBarras.toCharArray()[i]!='1' && codigoBarras.toCharArray()[i]!='2' && codigoBarras.toCharArray()[i]!='3' && codigoBarras.toCharArray()[i]!='4' && codigoBarras.toCharArray()[i]!='5' && codigoBarras.toCharArray()[i]!='6' && codigoBarras.toCharArray()[i]!='7' && codigoBarras.toCharArray()[i]!='8' && codigoBarras.toCharArray()[i]!='9'){ String caracterExtranno=""; caracterExtranno+=codigoBarras.toCharArray()[i]; codigoBarras=codigoBarras.replace(caracterExtranno, ""); caracterEliminado=true; } } parameters.put("codigoBarras", codigoBarras); //Nombre/Razon Social parameters.put("nombreRazon", detallesPersona.getName()); // Vendedor parameters.put("tipodocumentoorigen", solicitud.getTipodocumentoorigen()); parameters.put("numerodocumentoorigen", solicitud.getNumerodocumentoorigen()); parameters.put("nombrerazonsocialorigen", solicitud.getNombrerazonsocialorigen()); //Cedula parameters.put("cedula", detallesPersona.getIdentification()); //Desde parameters.put("desde", solicitud.getLugarorigen()); //Hasta parameters.put("hasta", solicitud.getLugardestino()); //Fechas SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy"); if(documentoHabilitante!=null){ parameters.put("fechaExpide", sdf.format(documentoHabilitante.getFechaemision())); parameters.put("fechaCaduca", sdf.format(documentoHabilitante.getFechaexpiracion())); }else{ parameters.put("fechaExpide", " "); parameters.put("fechaCaduca", " "); } //Grado String gradoFuncionario=""; TgeneCatalogDetail grado=CatalogDetailController.findxCodigoCodcatalogo(this.responsableCentroControl.getMilitarygrade(), this.responsableCentroControl.getMilitarygradecode()); if(grado!=null){ gradoFuncionario=grado.getDescription()+" - "; } //Funcionario parameters.put("gradoNombreFuncionario",gradoFuncionario+this.responsableCentroControl.getName()); parameters.put("personcode",this.responsableCentroControl.getPk().getPersoncode()); parameters.put("centroControl","JEFE DEL "+this.nombreInstitucion); //Usuario parameters.put("usuario",this.usuario.getName()); sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String fechaHora=sdf.format(Calendar.getInstance().getTime()); parameters.put("fechaHora",fechaHora); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * Ejecuta un reporte de certificado de armas * @param name Nombre del reporte a generar. */ public void reporteCertificadoArmas() { try { String path = "armas/reports/certificadoArmas"; String filename="certificadoarmas"; //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitudTramite.getPk().getCsolicitud()); //Fecha SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy"); parameters.put("lugarFecha", sdf.format(Calendar.getInstance().getTime())); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * Ejecuta un reporte de certificado de armas * @param name Nombre del reporte a generar. */ /** * Reporte de Agencias */ public void reporteAgencias() { try { String path = "armas/reports/aperturaAgenciasSucursales"; String filename="aperturaagenciassucursales"; //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitudTramite.getPk().getCsolicitud()); //Fecha SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy"); parameters.put("lugarFecha", sdf.format(Calendar.getInstance().getTime())); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * Reporte de Inscripcion de Armas * @param solicitud */ public void reporteInscripcion(TarmSolicitud solicitud) { try { String path = "armas/reports/reporteInscripcion"; String filename="armas"; detallesPersona = PersonDetailController.find(String.valueOf(solicitud.getPersoncode().toString())); solicitudTramite=TarmSolicitudTramiteController.findPorCSolicitud(solicitud.getPk()); //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); //No. Guia parameters.put("nombreCompania", detallesPersona.getName()); //Nombre/Razon Social parameters.put("nombrepersona",detallesPersona.getLegalrepresent()); SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy"); parameters.put("fecha", sdf.format(solicitud.getFregistro())); parameters.put("ciudad", "Quito"); //Grado /* String gradoFuncionario=""; TgeneCatalogDetail grado=CatalogDetailController.findxCodigoCodcatalogo(usuario.getMilitarygrade(), usuario.getMilitarygradecode()); if(grado!=null){ gradoFuncionario=grado.getDescription()+" - "; } //Funcionario parameters.put("gradoNombreFuncionario",gradoFuncionario+usuario.getName()); */ String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * 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 direccion = new PersonAddressController(); TcustPersonAddress tcustPersonAddres= direccion.findPrincipal(tsafeUserDetailUsuario.getPk().getPersoncode().toString()); 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()); } /** * Ejecuta reporte general de informacion de armas, guardias, agencias y sucursales * @param name Nombre del reporte a generar. */ public void reporteGeneral(String solicitud,boolean flagAgencia,boolean flagArmas,boolean flagDoc,boolean flagGuardias,String nombreArchivo) { try { String gradoUsuario =""; String path = "armas/reports/generalReportHabilita"; String filename=nombreArchivo; TgeneCatalogDetail grado = CatalogDetailController.findxCodigoCodcatalogo(this.responsableCentroControl.getMilitarygrade(), this.responsableCentroControl.getMilitarygradecode()); if(grado != null){ gradoUsuario = grado.getDescription()+" - "+this.responsableCentroControl.getName(); }else{ gradoUsuario = "Sin Grado - "+this.responsableCentroControl.getName(); } //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitud); //Obteniendo la solicitud TarmSolicitud s=SolicitudController.findSolicitudxcodsolicitud(solicitud); TarmTramite t; Boolean datosTramiteVacios=false; if(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 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", " "); } //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("flagDoc", flagDoc); parameters.put("flagGuardias", flagGuardias); parameters.put("centroControl", this.obtenerCentroControl()); parameters.put("gradoUsuario", gradoUsuario); parameters.put("usuario",PersonDetailController.find(this.tsafeUserDetailUsuario.getPk().getPersoncode().toString()).getName()); parameters.put("codResponsable", this.responsableCentroControl.getPk().getPersoncode()); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } /** * Ejecuta reporte general de informacion de armas, guardias, agencias y sucursales * @param name Nombre del reporte a generar. */ public void reporteCertificados(String solicitud,boolean flagAgencia,boolean flagArmas,boolean flagDoc,boolean flagGuardias) { try { String gradoUsuario =""; String path = "armas/reports/reporteCertificado"; String filename="reporteCertificado"; TgeneCatalogDetail grado = CatalogDetailController.findxCodigoCodcatalogo(this.responsableCentroControl.getMilitarygrade(), this.responsableCentroControl.getMilitarygradecode()); if(grado != null){ gradoUsuario = grado.getDescription()+" - "+this.responsableCentroControl.getName(); }else{ gradoUsuario = "Sin Grado - "+this.responsableCentroControl.getName(); } //Fija parametros del report. HashMap parameters = new HashMap<>(); parameters.put("pathLogoIzquierda", "repo:/maia/1/image/comandoconjunto"); parameters.put("pathLogoDerecha", "repo:/maia/1/image/selloarmas"); parameters.put("csolicitud", solicitud); //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("flagDoc", flagDoc); parameters.put("flagGuardias", flagGuardias); parameters.put("centroControl", this.obtenerCentroControl()); parameters.put("gradoUsuario", gradoUsuario); parameters.put("usuario",PersonDetailController.find(this.tsafeUserDetailUsuario.getPk().getPersoncode().toString()).getName()); parameters.put("codResponsable", this.responsableCentroControl.getPk().getPersoncode()); String format = "pdf"; this.reportController.execute(path, parameters, format, filename, this.getLoginController()); } catch (Exception ex) { MessageHelper.setMessageError(ex); } } public String getFormato() { return formato; } public void setFormato(String formato) { this.formato = formato; } public String getMostrarFormato() { return mostrarFormato; } public void setMostrarFormato(String mostrarFormato) { this.mostrarFormato = mostrarFormato; } public boolean isImprimir() { return imprimir; } public void setImprimir(boolean imprimir) { this.imprimir = imprimir; } public TarmTramiteController getTramiteController() { return tramiteController; } public void setTramiteController(TarmTramiteController tramiteController) { this.tramiteController = tramiteController; } public ReportController getReportController() { return reportController; } public void setReportController(ReportController reportController) { this.reportController = reportController; } public TarmTramite getFila() { return fila; } public void setFila(TarmTramite fila) { this.fila = fila; } public String getIdentificacion() { return identificacion; } public void setIdentificacion(String identificacion) { this.identificacion = identificacion; } public String getTipoidentificacion() { return tipoidentificacion; } public void setTipoidentificacion(String tipoidentificacion) { this.tipoidentificacion = tipoidentificacion; } }