From aad6f2641c489982262eafde7dc4a46403cb83ea Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Mon, 24 Jul 2023 10:34:59 -0300 Subject: [PATCH] fixes bug#AL-2963 Melhorias Relatorio Vijar Detalhado --- pom.xml | 6 +- .../RelatorioPassageirosViajarDetalhado.java | 39 +++++++++--- ...RelatorioPassageirosViajarDetalhado.jasper | Bin 28013 -> 27880 bytes .../RelatorioPassageirosViajarDetalhado.jrxml | 7 +-- .../RelatorioPassageirosViajarController.java | 57 ++++++++++++++++-- web/WEB-INF/i3-label_en.label | 1 + web/WEB-INF/i3-label_es_MX.label | 2 + web/WEB-INF/i3-label_pt_BR.label | 2 + .../filtroRelatorioPassageirosViajar.zul | 10 ++- 9 files changed, 101 insertions(+), 23 deletions(-) diff --git a/pom.xml b/pom.xml index aa998cd21..a1acf9f9c 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.10.5 + 1.10.6 war - 1.7.2 - 1.6.1 + 1.7.3 + 1.6.2 UTF-8 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioPassageirosViajarDetalhado.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioPassageirosViajarDetalhado.java index 303162fb3..c1faf3eff 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioPassageirosViajarDetalhado.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioPassageirosViajarDetalhado.java @@ -64,23 +64,44 @@ public class RelatorioPassageirosViajarDetalhado extends Relatorio { String empresaId = (String) parametros.get("EMPRESA_ID"); String categorias = (String) parametros.get("LS_CATEGORIA"); Integer usuario = (Integer) parametros.get("USUARIO"); + String servico = (String) parametros.get("CORRIDA_ID"); sql.append(" SELECT ROWNUM AS NUMERO, "); + sql.append(" NOME, "); + sql.append(" RG, "); + sql.append(" LOCALIZADOR, "); + sql.append(" ENDERECO, "); + sql.append(" NUMTELEFONO, "); + sql.append(" AGENTE, "); + sql.append(" CONTROLE "); + sql.append(" FROM( "); + sql.append(" SELECT "); sql.append(" B.NOMBPASAJERO AS NOME, "); - sql.append(" CASE B.DESCTIPODOC WHEN 'RG' THEN B.DESCNUMDOC END AS RG, "); - sql.append(" COALESCE(B.NUMFOLIOSISTEMA, B.NUMOPERACION) AS LOCALIZADOR, "); - sql.append(" CD.DESCCALLE AS ENDERECO, "); - sql.append(" C.NUMTELEFONO, "); + sql.append(" DESCNUMDOC AS RG, "); + sql.append(" B.INFOPASAJERO AS LOCALIZADOR, "); + sql.append(" B.DESCENDERECO AS ENDERECO, "); + sql.append(" B.DESCTELEFONO AS NUMTELEFONO, "); sql.append(" U.CVEUSUARIO AS AGENTE, "); - sql.append(" '''' AS CONTROLE "); - sql.append(" FROM BOLETO B INNER JOIN USUARIO U ON (B.USUARIO_ID = U.USUARIO_ID) "); - sql.append(" LEFT JOIN CLIENTE C ON (B.CLIENTE_ID = C.CLIENTE_ID) "); - sql.append(" LEFT JOIN CLIENTE_DIRECCION CD ON (C.CLIENTE_ID = CD.CLIENTE_ID) "); - sql.append("WHERE B.TIPOVENTA_ID = 15 "); + sql.append(" ' ' AS CONTROLE "); + sql.append(" FROM BOLETO B INNER JOIN USUARIO U ON (B.USUARIO_ID = U.USUARIO_ID) "); + sql.append(" WHERE B.INDSTATUSBOLETO = 'V' AND B.MOTIVOCANCELACION_ID IS NULL "+passagemAberta+" "); if (dataCadastroInicial != null && dataCadastroFinal != null) { sql.append("AND B.FECCREACION BETWEEN TO_DATE('" + formatSemHora.format(dataCadastroInicial) + " 00:00:00', " + formatToDate + ") " + "AND TO_DATE('" + formatSemHora.format(dataCadastroFinal) + " 23:59:59', " + formatToDate + ") "); } + if (empresaId != null && !empresaId.equals("") && !empresaId.equals("-1")) { + sql.append(" AND B.EMPRESACORRIDA_ID = "+empresaId+" "); + } + if (categorias != null && !categorias.equals("") && !categorias.equals("-1")) { + sql.append(" AND B.CATEGORIA_ID IN "+categorias+" "); + } + + if (servico != null && !servico.equals("") && !servico.equals("-1")) { + sql.append(" AND B.CORRIDA_ID = "+servico+" "); + } + sql.append(" ORDER BY 1 "); + sql.append(") "); + return sql.toString(); } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jasper index 16615e21660b36bc81a68492c6e77eb3ac1471bd..fe68beeb5ead83f6ef295689bfe55256e71c2bcd 100644 GIT binary patch delta 330 zcmaERi}A%x#tm|MOa%p#8|4%>yXYm!sxy_dFfcGM6&EtpF(@!F91a2UWEdEMBoHv$ z0|^k@X!BWb9Y#fvA}0{x3RdsJ0Aw>cgNXt#Ik`?lx}M1e#0C@Q1z?4NAcG5l050JI zk?_VP0dxj-9bs4`3Q8DQ^78XiA!csgc delta 384 zcmaEHlkx2>#tm|Mlk<$!H#_Pj%BnM$voJ6)Fc%jx)G;V9FdPm6@-!J3fg}(xo`ld0 z44Y4S>o988fmAt`FtGTzx`lw)u3&vG3_v!ME0`z%laudx%H+F&m|()Z0IV($WPSk< zz$M%u65hBZfUd!=BMehw^Fm)yMt0YNf)WOXg2@xi6(%0w-u%L^o{`52WFdn9$X3(I zjw(``JK4%lRB(r=vdH`Ns+f85Fff$AD}Xq~2if5G$@>E$*g$S)ikj>fP{5N~0FnlK tH+i#oU>hU9p`oFvp`nRIys@RFsiDc{H9KO}>;P1^|_&Yli>; diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jrxml index bfc1d3cb2..63dddefa8 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioPassageirosViajarDetalhado.jrxml @@ -20,16 +20,13 @@ <band height="79" splitType="Stretch"> <textField pattern="" isBlankWhenNull="false"> - <reportElement uuid="96eded89-d7ca-4186-a91e-41fcd6baf278" mode="Transparent" x="0" y="0" width="457" height="41" forecolor="#000000" backcolor="#FFFFFF"/> - <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <reportElement uuid="96eded89-d7ca-4186-a91e-41fcd6baf278" mode="Transparent" x="1" y="50" width="831" height="28" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Top" rotation="None" markup="none"> <font fontName="SansSerif" size="14" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <paragraph lineSpacing="Single"/> </textElement> <textFieldExpression><![CDATA[$P{NOME_RELATORIO}]]></textFieldExpression> </textField> - <line> - <reportElement uuid="041f4c8d-2436-490c-b906-77c8780b5425" x="-1" y="58" width="832" height="1"/> - </line> <line> <reportElement uuid="51d2aa74-94f4-440a-959f-2c9acc1902c7" positionType="Float" x="-1" y="78" width="832" height="1"/> </line> diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioPassageirosViajarController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioPassageirosViajarController.java index e4d5e6041..6f4262f7c 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioPassageirosViajarController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioPassageirosViajarController.java @@ -19,12 +19,15 @@ import org.zkoss.util.resource.Labels; import org.zkoss.zhtml.Messagebox; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Button; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Combobox; import org.zkoss.zul.Datebox; +import org.zkoss.zul.Label; import org.zkoss.zul.Paging; import org.zkoss.zul.Textbox; +import com.rjconsultores.ventaboletos.constantes.ConstantesFuncionSistema; import com.rjconsultores.ventaboletos.entidad.Categoria; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioPassageirosViajar; @@ -32,9 +35,11 @@ import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioPassageirosViajar import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.CategoriaService; import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.PerfilFuncionService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCategoriaSimple; @@ -47,7 +52,9 @@ import com.trg.search.Filter; @Controller("relatorioPassageirosViajarController") @Scope("prototype") public class RelatorioPassageirosViajarController extends MyGenericForwardComposer { - + + @Autowired + private PerfilFuncionService perfilFuncionService; @Autowired private EmpresaService empresaService; @Autowired @@ -67,6 +74,9 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos private Datebox datInicial; private Datebox datFinal; private Checkbox chkPassageiroAberto; + private Button btnExecutarRelatorioDetalhado; + private MyTextbox txtCorridaId; + private org.zkoss.zul.Label lblCorridaId; public Datebox getDatInicial() { return datInicial; @@ -261,7 +271,7 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos parametros.put("DATA_INICIO", datInicial.getValue()); parametros.put("DATA_FINAL", datFinal.getValue()); - String passagemAberta = " and (B.feccorrida is null and B.corrida_id is null) "; + String passagemAberta = ""; if (!chkPassageiroAberto.isChecked()) { passagemAberta = " and (B.feccorrida is not null and B.corrida_id is not null) "; } @@ -269,9 +279,11 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos Empresa e = (Empresa) cmbEmpresa.getSelectedItem().getValue(); parametros.put("EMPRESA_ID", e.getEmpresaId().toString()); - parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioCadastroClientesController.window.title")); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioPassageirosViajarControllerDetalhado.window.title")); parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); parametros.put("USUARIO_NOME", UsuarioLogado.getUsuarioLogado().getNombusuario()); + + String strNumCategoria=""; @@ -290,6 +302,8 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos parametros.put("LS_CATEGORIA", sbCategoria.toString()); parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + parametros.put("CORRIDA_ID", txtCorridaId.getValue()); Relatorio relatorio = new RelatorioPassageirosViajarDetalhado(parametros, dataSourceRead.getConnection()); @@ -309,7 +323,10 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos categoriaList.setItemRenderer(new RenderCategoriaSimple()); categoriaSelList.setItemRenderer(new RenderCategoriaSimple()); - + boolean verDetalhado = possuiPermissaoRelatorioViajarDetalhado(); + btnExecutarRelatorioDetalhado.setVisible(verDetalhado); + txtCorridaId.setVisible(verDetalhado); + lblCorridaId.setVisible(verDetalhado); } public void onDoubleClick$categoriaList(Event ev) { @@ -322,4 +339,36 @@ public class RelatorioPassageirosViajarController extends MyGenericForwardCompos Categoria categoriaSel = (Categoria) categoriaSelList.getSelected(); categoriaSelList.removeItem(categoriaSel); } + + public Button getbtnExecutarRelatorioDetalhado() { + return btnExecutarRelatorioDetalhado; + } + + public void setbtnExecutarRelatorioDetalhado(Button btnExecutarRelatorioDetalhado) { + this.btnExecutarRelatorioDetalhado = btnExecutarRelatorioDetalhado; + } + + public Label getlblCorridaId() { + return lblCorridaId; + } + + public void setgetlblCorridaId(Label lblCorridaId) { + this.lblCorridaId = lblCorridaId; + } + + public MyTextbox getTxtCorridaId() { + return txtCorridaId; + } + + public void setTxtCorridaId(MyTextbox txtCorridaId) { + this.txtCorridaId = txtCorridaId; + } + + + + private boolean possuiPermissaoRelatorioViajarDetalhado() { + return perfilFuncionService.usuarioPossuiPermissaoFuncionalidade( + UsuarioLogado.getUsuarioLogado().getUsuarioId(), ConstantesFuncionSistema.CLAVE_MENU_RELATORIOS_VIAJAR_DETALHADO); + } + } diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index 76a501739..c81629def 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -7831,6 +7831,7 @@ relatorioLinhaOperacionalController.lblEspecie.value = Espécie #Relatorio Pasajeiros Viajar relatorioPassageirosViajarController.window.title = Passageiros a viajar relatorioPassageirosViajarControllerDetalhado.window.title = LISTA DE PASSAGEIROS +relatorioPassageirosViajarController.lbServico.value = Nº Serviço relatorioPassageirosViajarController.lbDataIni.value = Data Inicial relatorioPassageirosViajarController.lbDataFin.value = Data Final relatorioPassageirosViajarController.lbEmpresa.value = Empresa diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 4cf302539..0bbc96f55 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -7328,6 +7328,8 @@ relatorioLinhaOperacionalController.lblEspecie.value = Espécie #Relatorio Pasajeiros Viajar relatorioPassageirosViajarController.window.title = Pasajeros a viajar +relatorioPassageirosViajarControllerDetalhado.window.title = LISTA DE PASSAGEIROS +relatorioPassageirosViajarController.lbServico.value = Nº Serviço relatorioPassageirosViajarController.lbDataIni.value = Fecha inicial relatorioPassageirosViajarController.lbDataFin.value = Fecha final relatorioPassageirosViajarController.lbEmpresa.value = Empresa diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 6bf29d113..14c22300d 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -7854,6 +7854,8 @@ relatorioLinhaOperacionalController.lblEspecie.value = Espécie #Relatorio Pasajeiros Viajar relatorioPassageirosViajarController.window.title = Passageiros a viajar +relatorioPassageirosViajarControllerDetalhado.window.title = LISTA DE PASSAGEIROS +relatorioPassageirosViajarController.lbServico.value = Nº Serviço relatorioPassageirosViajarController.lbDataIni.value = Data Inicial relatorioPassageirosViajarController.lbDataFin.value = Data Final relatorioPassageirosViajarController.lbEmpresa.value = Empresa diff --git a/web/gui/relatorios/filtroRelatorioPassageirosViajar.zul b/web/gui/relatorios/filtroRelatorioPassageirosViajar.zul index b6516d04e..99ae58a7e 100644 --- a/web/gui/relatorios/filtroRelatorioPassageirosViajar.zul +++ b/web/gui/relatorios/filtroRelatorioPassageirosViajar.zul @@ -7,7 +7,7 @@ <zk xmlns="http://www.zkoss.org/2005/zul"> <window id="winFiltroRelatorioPassageirosViajar" apply="${relatorioPassageirosViajarController}" - contentStyle="overflow:auto" height="238px" width="550px" + contentStyle="overflow:auto" height="260px" width="550px" border="normal"> <grid fixedLayout="true"> <columns> @@ -93,6 +93,13 @@ </borderlayout> </cell> </row> + <row> + <label id="lblCorridaId" + value="${c:l('relatorioPassageirosViajarController.lbServico.value')}" /> + <textbox id="txtCorridaId" width="95%" + use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" + maxlength="7" /> + </row> </rows> </grid> <toolbar> @@ -100,7 +107,6 @@ label="${c:l('relatorio.lb.btnExecutarRelatorio')}" /> <button id="btnExecutarRelatorioDetalhado" image="/gui/img/find.png" label="${c:l('relatorio.lb.btnExecutarRelatorioDetalhado')}" /> - </toolbar> </window> </zk>