From 7a04f7cf0e2b6e4fdcd18f8b14f6e1b32730356b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aristides=20dos=20Reis=20J=C3=BAnior?= Date: Thu, 18 Jul 2024 00:57:03 -0300 Subject: [PATCH 1/2] fixes bug#AL-4586 --- pom.xml | 4 +- .../impl/RelatorioDescontoCupom.java | 137 +++++++ .../impl/RelatorioDescontoPorCupomBean.java | 81 +++++ .../RelatorioDescontoCupom_es.properties | 25 ++ .../RelatorioDescontoCupom_pt_BR.properties | 25 ++ .../templates/RelatorioDescontoCupom.jasper | Bin 0 -> 39372 bytes .../templates/RelatorioDescontoCupom.jrxml | 338 ++++++++++++++++++ .../EditarConvenioController.java | 1 + .../RelatorioDescontoPorCupomController.java | 146 ++++++++ .../ItemMenuRelatorioDescontoPorCupom.java | 27 ++ .../utilerias/menu/menu_original.properties | 1 + web/WEB-INF/i3-label_en.label | 11 + web/WEB-INF/i3-label_es_MX.label | 10 + web/WEB-INF/i3-label_fr_FR.label | 10 + web/WEB-INF/i3-label_pt_BR.label | 10 + .../filtroRelatorioDescontoPorCupom.zul | 83 +++++ 16 files changed, 907 insertions(+), 2 deletions(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoCupom.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoPorCupomBean.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_es.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_pt_BR.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jasper create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jrxml create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDescontoPorCupomController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDescontoPorCupom.java create mode 100644 web/gui/relatorios/filtroRelatorioDescontoPorCupom.zul diff --git a/pom.xml b/pom.xml index f4e3d5e1e..568121b5c 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.104.0 + 1.105.0 war 1.79.0 - 1.64.0 + 1.71.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoCupom.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoCupom.java new file mode 100644 index 000000000..7f4f8bc01 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoCupom.java @@ -0,0 +1,137 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +public class RelatorioDescontoCupom extends Relatorio { + + private List lsDadosRelatorioDescontoPorCupom; + + public RelatorioDescontoCupom(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new DataSource(this) { + @Override + public void initDados() throws Exception { + + lsDadosRelatorioDescontoPorCupom = new ArrayList(); + + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + + String sql = getSql(); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); + + ResultSet rset = null; + + java.sql.Date dataInicial = new java.sql.Date( + DateUtil.normalizarToFecha((Date) parametros.get("DATA_INICIAL")).getTime()); + java.sql.Date dataFinal = new java.sql.Date( + DateUtil.normalizarToFecha((Date) parametros.get("DATA_FINAL")).getTime()); + + java.sql.Date dateResgateInicial = new java.sql.Date( + DateUtil.normalizarToFecha((Date) parametros.get("DATA_RESGATEINICIAL")).getTime()); + java.sql.Date dateResgateFinal = new java.sql.Date( + DateUtil.normalizarToFecha((Date) parametros.get("DATA_RESGATEFINAL")).getTime()); + + stmt.setDate("DATA_INICIAL", dataInicial); + stmt.setDate("DATA_FINAL", dataFinal); + + stmt.setDate("DATA_RESGATEINICIAL", dateResgateInicial); + stmt.setDate("DATA_RESGATEFINAL", dateResgateFinal); + + if (parametros.get("EMPRESA_ID") != null) + stmt.setInt("EMPRESA_ID", (Integer) parametros.get("EMPRESA_ID")); + else + stmt.setNull("EMPRESA_ID", java.sql.Types.INTEGER); + + if (parametros.get("PUNTOVENTA_ID") != null) + stmt.setInt("PUNTOVENTA_ID", (Integer) parametros.get("PUNTOVENTA_ID")); + else + stmt.setNull("PUNTOVENTA_ID", java.sql.Types.INTEGER); + + rset = stmt.executeQuery(); + + RelatorioDescontoPorCupomBean relatorioDescontoPorCupom = null; + while (rset.next()) { + relatorioDescontoPorCupom = new RelatorioDescontoPorCupomBean(); + relatorioDescontoPorCupom.setDescConvenio(rset.getString("descConvenio")); + relatorioDescontoPorCupom.setCodigoCupom(rset.getString("codigoCupom")); + relatorioDescontoPorCupom.setCliente(rset.getString("cliente")); + relatorioDescontoPorCupom.setDataEntrega(rset.getDate("dataEntrega")); + relatorioDescontoPorCupom.setPuntoVentaEntrega(rset.getString("puntoVentaEntrega")); + relatorioDescontoPorCupom.setDataResgate(rset.getDate("dataResgate")); + relatorioDescontoPorCupom.setPuntoVentaResgate(rset.getString("puntoVentaResgate")); + + relatorioDescontoPorCupom.setNumeroTicket(rset.getLong("numeroTicket")); + relatorioDescontoPorCupom.setValorTicket(rset.getBigDecimal("valorTicket")); + relatorioDescontoPorCupom.setValorDescuento(rset.getBigDecimal("valorDescuento")); + lsDadosRelatorioDescontoPorCupom.add(relatorioDescontoPorCupom); + } + + if (lsDadosRelatorioDescontoPorCupom.size() > 0) { + + setLsDadosRelatorio(lsDadosRelatorioDescontoPorCupom); + } + } + + }); + + } + + private String getSql() { + StringBuilder sql = new StringBuilder(); + sql.append("SELECT "); + sql.append("C.DESCCONVENIO descConvenio, "); + sql.append("CS.CODIGOCUPOM codigoCupom, "); + sql.append("BOLETOSORTEADO.NOMBPASAJERO cliente, "); + sql.append("BOLETOSORTEADO.fechorventa dataEntrega, "); + sql.append("PUNTOVENTASORTEADO.NOMBPUNTOVENTA puntoVentaEntrega, "); + sql.append("BOLETOCUPOM.fechorventa dataResgate, "); + sql.append("PUNTOVENTACUPOM.NOMBPUNTOVENTA puntoVentaResgate, "); + sql.append("CS.BOLETOSORTEADO_ID numeroTicket, "); + sql.append("BOLETOCUPOM.precioPagado valorTicket, "); + sql.append("BOLETOCUPOM.descuentoamparado valorDescuento "); + sql.append("FROM CAMPANHACUPOMSORTEADO CS "); + sql.append("INNER JOIN CONVENIO C ON C.CONVENIO_ID=CS.CONVENIO_ID "); + sql.append("INNER JOIN BOLETO BOLETOSORTEADO ON BOLETOSORTEADO.BOLETO_ID=CS.BOLETOSORTEADO_ID "); + sql.append( + "INNER JOIN PUNTO_VENTA PUNTOVENTASORTEADO ON PUNTOVENTASORTEADO.PUNTOVENTA_ID = BOLETOSORTEADO.PUNTOVENTA_ID "); + sql.append("INNER JOIN BOLETO BOLETOCUPOM ON BOLETOCUPOM.BOLETO_ID=CS.BOLETOCUPOM_ID "); + sql.append( + "INNER JOIN PUNTO_VENTA PUNTOVENTACUPOM ON PUNTOVENTACUPOM.PUNTOVENTA_ID = BOLETOCUPOM.PUNTOVENTA_ID "); + sql.append("WHERE "); + sql.append(" C.FECVENTAINI <=:DATA_INICIAL "); + sql.append("AND C.FECVENTAFIN >=:DATA_FINAL "); + sql.append("AND C.FECVIAJEINI <=:DATA_RESGATEINICIAL "); + sql.append("AND C.FECVIAJEFIN >=:DATA_RESGATEFINAL "); + sql.append("AND CS.EMPRESA_ID=COALESCE(:EMPRESA_ID,CS.EMPRESA_ID) "); + sql.append("AND CS.PUNTOVENTA_ID=COALESCE(:PUNTOVENTA_ID,CS.PUNTOVENTA_ID) "); + + return sql.toString(); + } + + @Override + protected void processaParametros() throws Exception { + // TODO Auto-generated method stub + + } + + public void setLsDadosRelatorio(List lsDadosRelatorio) { + this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + this.lsDadosRelatorioDescontoPorCupom = lsDadosRelatorio; + } + +} \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoPorCupomBean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoPorCupomBean.java new file mode 100644 index 000000000..2483bf3cb --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDescontoPorCupomBean.java @@ -0,0 +1,81 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.math.BigDecimal; +import java.util.Date; + +public class RelatorioDescontoPorCupomBean { + + private String descConvenio; + private String codigoCupom ; + private String cliente; + private Date dataEntrega; + private String puntoVentaEntrega; + private Date dataResgate; + private String puntoVentaResgate; + private Long numeroTicket; + private BigDecimal valorTicket; + private BigDecimal valorDescuento; + public String getDescConvenio() { + return descConvenio; + } + public void setDescConvenio(String descConvenio) { + this.descConvenio = descConvenio; + } + public String getCodigoCupom() { + return codigoCupom; + } + public void setCodigoCupom(String codigoCupom) { + this.codigoCupom = codigoCupom; + } + public String getCliente() { + return cliente; + } + public void setCliente(String cliente) { + this.cliente = cliente; + } + public Date getDataEntrega() { + return dataEntrega; + } + public void setDataEntrega(Date dataEntrega) { + this.dataEntrega = dataEntrega; + } + public String getPuntoVentaEntrega() { + return puntoVentaEntrega; + } + public void setPuntoVentaEntrega(String puntoVentaEntrega) { + this.puntoVentaEntrega = puntoVentaEntrega; + } + public Date getDataResgate() { + return dataResgate; + } + public void setDataResgate(Date dataResgate) { + this.dataResgate = dataResgate; + } + public String getPuntoVentaResgate() { + return puntoVentaResgate; + } + public void setPuntoVentaResgate(String puntoVentaResgate) { + this.puntoVentaResgate = puntoVentaResgate; + } + public Long getNumeroTicket() { + return numeroTicket; + } + public void setNumeroTicket(Long numeroTicket) { + this.numeroTicket = numeroTicket; + } + public BigDecimal getValorTicket() { + return valorTicket; + } + public void setValorTicket(BigDecimal valorTicket) { + this.valorTicket = valorTicket; + } + public BigDecimal getValorDescuento() { + return valorDescuento; + } + public void setValorDescuento(BigDecimal valorDescuento) { + this.valorDescuento = valorDescuento; + } + + + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_es.properties new file mode 100644 index 000000000..377fabb46 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_es.properties @@ -0,0 +1,25 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.relatorio=Relatório: +cabecalho.periodo=Período: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: +cabecalho.dataDaVenda=Data da Venda +cabecalho.dataDoResgate=Data do Resgate + +label.descConvenio=Nome do Convêncio +label.codigoCupom=Código Cupom +label.cliente=Nome Passageiro +label.dataEntrega=Data Entrega +label.puntoVentaEntrega=Agência da Entrega +label.dataResgate=Data Resgate +label.puntoVentaResgate=Agência do Resgate +label.numeroTicket=Ticket Ganhador +label.valorTicket=Valor Ticket +label.valorDescuento=Valor do Desconto diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_pt_BR.properties new file mode 100644 index 000000000..fa68e2423 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDescontoCupom_pt_BR.properties @@ -0,0 +1,25 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.relatorio=Relatório: +cabecalho.periodo=Período: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: +cabecalho.dataDaVenda=Data da Venda +cabecalho.dataDoResgate=Data do Resgate + +label.descConvenio=Nome do Convênio +label.codigoCupom=Código Cupom +label.cliente=Nome Passageiro +label.dataEntrega=Data Entrega +label.puntoVentaEntrega=Agência da Entrega +label.dataResgate=Data Resgate +label.puntoVentaResgate=Agência do Resgate +label.numeroTicket=Ticket Ganhador +label.valorTicket=Valor Ticket +label.valorDescuento=Valor do Desconto diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jasper new file mode 100644 index 0000000000000000000000000000000000000000..530367f3770b42d423b6cd53eb53059ebe9a54f2 GIT binary patch literal 39372 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 b*MKE6@4dsUyILK$8lR%^`{{CVT>Sq5!_X0b literal 0 HcmV?d00001 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jrxml new file mode 100644 index 000000000..86e868d9b --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDescontoCupom.jrxml @@ -0,0 +1,338 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="81" splitType="Stretch"> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="eb2d73d0-40a6-4b6d-9e8a-76806f943e47" mode="Transparent" x="0" y="0" width="394" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Left" 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> + <textField evaluationTime="Report" pattern="" isBlankWhenNull="false"> + <reportElement uuid="8751af1a-64e8-41dc-a423-8ffd9686e093" mode="Transparent" x="811" y="25" width="21" height="16" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="66239550-5098-4a3a-ad99-ab9f1a420d1e" mode="Transparent" x="728" y="42" width="104" height="15" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.impressorPor}+" "+$P{USUARIO}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy HH:mm" isBlankWhenNull="false"> + <reportElement uuid="ce2d33f4-cfa1-48fe-9a70-5847e9ddd122" mode="Transparent" x="728" y="0" width="104" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="012dd1aa-b31e-4df4-b879-c3fc9785e27c" mode="Transparent" x="543" y="25" width="267" height="16" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.pagina}+" "+$V{PAGE_NUMBER}+" "+$R{cabecalho.de}]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="49b24665-8942-4812-b7b4-7aac56812b46" x="543" y="0" width="185" height="25"/> + <textElement textAlignment="Right"> + <font size="9" isBold="true"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.dataHora}]]></textFieldExpression> + </textField> + <line> + <reportElement uuid="0b20a6e5-3ba4-495b-912f-ae8d87eda713" x="-1" y="58" width="832" height="1"/> + </line> + <textField isStretchWithOverflow="true"> + <reportElement uuid="8e18add1-0582-4bed-8896-5948d588cfa0" x="-1" y="59" width="833" height="15"/> + <textElement verticalAlignment="Middle"> + <font size="10"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{FILTROS}]]></textFieldExpression> + </textField> + <line> + <reportElement uuid="1381bb9d-c239-4937-8f02-70fb99a20ddd" positionType="Float" x="-1" y="78" width="832" height="1"/> + </line> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="7dab3ec0-f044-41df-bdb7-8014567ea89b" mode="Transparent" x="1" y="25" width="100" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.dataDaVenda}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy" isBlankWhenNull="false"> + <reportElement uuid="1a3b14ee-760a-4576-acdc-adeb9453bee6" mode="Transparent" x="376" y="25" width="70" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{DATA_RESGATEINICIAL}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="2a540086-2a16-4860-b4c7-9167dcedc637" mode="Transparent" x="446" y="25" width="20" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.periodoA}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy " isBlankWhenNull="false"> + <reportElement uuid="4b218deb-bdf8-4f40-ad37-75a9e90582eb" mode="Transparent" x="192" y="25" width="67" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{DATA_FINAL}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="b290552a-a04c-46ea-a864-7262661a19be" mode="Transparent" x="276" y="25" width="100" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.dataDoResgate}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy" isBlankWhenNull="false"> + <reportElement uuid="d2e9b85f-5ac2-49d0-81c4-b35fef7c7c64" mode="Transparent" x="101" y="25" width="70" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{DATA_INICIAL}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="61eaab9e-3880-4e3a-8b30-aa4bc96c300c" mode="Transparent" x="172" y="25" width="20" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.periodoA}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy" isBlankWhenNull="false"> + <reportElement uuid="292720be-a240-41a3-8d11-937d4bef11cb" mode="Transparent" x="466" y="25" width="67" height="25" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{DATA_RESGATEFINAL}]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConvenioController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConvenioController.java index 606990cb2..b65994b38 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConvenioController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConvenioController.java @@ -670,6 +670,7 @@ public class EditarConvenioController extends MyGenericForwardComposer { convenio.setIndDescuentoNormal(null); convenio.setIndGeral((short) 2); convenio.setCliente(null); + convenio.setImprimeprecio((short) 1 ); ConvenioCampanha convenioCampanha= convenio.getConvenioCampanha(); convenioCampanha.setTermoECondicao(txtTermoCondicao.getValue()); diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDescontoPorCupomController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDescontoPorCupomController.java new file mode 100644 index 000000000..f9bd29bd4 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDescontoPorCupomController.java @@ -0,0 +1,146 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.sql.Connection; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Comboitem; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioDescontoCupom; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.PuntoVentaService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyDatebox; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; + +@Controller("relatorioDescontoPorCupomController") +@Scope("prototype") + +public class RelatorioDescontoPorCupomController extends MyGenericForwardComposer { + + /** + * + */ + private static final long serialVersionUID = 1L; + + @Autowired + private transient PagedListWrapper plwPuntoVenta; + @Autowired + private DataSource dataSourceRead; + + @Autowired + private EmpresaService empresaService; + private MyComboboxEstandar cmbEmpresa; + private List lsEmpresa; + + @Autowired + private PuntoVentaService puntoVentaService; + private MyComboboxEstandar cmbPuntoVenta; + private List lsPuntoVenta; + + private MyDatebox datInicial; + private MyDatebox datFinal; + private MyDatebox datResgateInicial; + private MyDatebox datResgateFinal; + + @Override + public void doAfterCompose(Component comp) throws Exception { + + lsEmpresa = empresaService.obtenerTodos(); + lsPuntoVenta = puntoVentaService.obtenerTodos(); + + + + super.doAfterCompose(comp); + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + executarRelatorio(); + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + Relatorio relatorio; + Map parametros = new HashMap(); + StringBuilder filtro = new StringBuilder(); + + parametros.put("DATA_INICIAL", (java.util.Date) this.datInicial.getValue()); + parametros.put("DATA_FINAL", (java.util.Date) this.datFinal.getValue()); + parametros.put("DATA_RESGATEINICIAL", (java.util.Date) this.datResgateInicial.getValue()); + parametros.put("DATA_RESGATEFINAL", (java.util.Date) this.datResgateFinal.getValue()); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioDescontoPorCupomController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + + filtro.append(" Empresa: "); + + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + Empresa empresa = (Empresa) itemEmpresa.getValue(); + parametros.put("EMPRESA_ID", empresa.getEmpresaId()); + parametros.put("EMPRESA", empresa.getNombempresa()); + filtro.append(empresa.getNombempresa() + ";"); + } else { + filtro.append("Todas;"); + } + + filtro.append(" Empresa: "); + + Comboitem itemPuntoVenta = cmbPuntoVenta.getSelectedItem(); + if (itemPuntoVenta != null) { + PuntoVenta puntoVenta = (PuntoVenta) itemPuntoVenta.getValue(); + parametros.put("PUNTOVENTA_ID", puntoVenta.getPuntoventaId()); + parametros.put("PUNTOVENTA", puntoVenta.getNombpuntoventa()); + filtro.append(puntoVenta.getNombpuntoventa() + ";"); + } else { + filtro.append("Todas;"); + } + + parametros.put("FILTROS", filtro.toString()); + + Connection connection = dataSourceRead.getConnection(); + try { + relatorio = new RelatorioDescontoCupom(parametros, connection); + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", Labels.getLabel("relatorioW2IController.window.title"), args, + MODAL); + } finally { + if ((connection != null) && !connection.isClosed()) { + connection.close(); + } + } + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public List getLsPuntoVenta() { + return lsPuntoVenta; + } + + public void setLsPuntoVenta(List lsPuntoVenta) { + this.lsPuntoVenta = lsPuntoVenta; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDescontoPorCupom.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDescontoPorCupom.java new file mode 100644 index 000000000..0214495c2 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDescontoPorCupom.java @@ -0,0 +1,27 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuRelatorioDescontoPorCupom extends DefaultItemMenuSistema { + + public ItemMenuRelatorioDescontoPorCupom() { + super("indexController.mniRelatorioDescontoPorCupom.label"); + + + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIODESCONTOPORCUPOM"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioDescontoPorCupom.zul", + Labels.getLabel("relatorioDescontoPorCupomController.window.title"), getArgs(), desktop); + + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties index fda945f8b..0db6a2ce3 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties @@ -219,6 +219,7 @@ analitico.gerenciais.estatisticos.relatorioVendaEmbarcada=com.rjconsultores.vent analitico.gerenciais.estatisticos.movimentacaobilhete=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioMovimentacaoBilhete analitico.gerenciais.estatisticos.encerramentocheckin=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioEncerramentoCheckin analitico.gerenciais.estatisticos.mmphDERPR=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioMmphDer +analitico.gerenciais.estatisticos.relatorioDescontoPorCupom=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioDescontoPorCupom #------------------------------RELATORIOS FINANCEIROS----------------------------------------------------------------------------------------------------------------------------------------------- analitico.gerenciais.financeiro=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.gerenciais.financeiro.SubMenuRelatorioFinanceiro analitico.gerenciais.financeiro.aproveitamentoFinanceiro=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAproveitamentoFinanceiro diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index d4397b103..ab6f9fbe3 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -10037,3 +10037,14 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origem winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Natureza + + + +indexController.mniRelatorioDescontoPorCupom.label = Relatório Desconto Por Cupom +relatorioDescontoPorCupomController.window.title = RELATÓRIO DESCONTO POR CUPOM +relatorioDescontoPorCupomController.lbDatInicial.value=Data Inicial da Venda +relatorioDescontoPorCupomController.lbDatFinal.value=Data Final da Venda +relatorioDescontoPorCupomController.lbDatResgateInicial.value=Data Inicial do Resgate +relatorioDescontoPorCupomController.lbDatResgateFinal.value=Data Final do Resgate +winFiltroRelatorioDescontoPorCupom.lbEmpresa.value=Empresa +winFiltroRelatorioDescontoPorCupom.lbPuntoVenta.value=Agência diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index c15e9fa0d..383ae80e2 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -10163,3 +10163,13 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origen winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Naturaleza + + +indexController.mniRelatorioDescontoPorCupom.label = Relatório Desconto Por Cupom +relatorioDescontoPorCupomController.window.title = RELATÓRIO DESCONTO POR CUPOM +relatorioDescontoPorCupomController.lbDatInicial.value=Data Inicial da Venda +relatorioDescontoPorCupomController.lbDatFinal.value=Data Final da Venda +relatorioDescontoPorCupomController.lbDatResgateInicial.value=Data Inicial do Resgate +relatorioDescontoPorCupomController.lbDatResgateFinal.value=Data Final do Resgate +winFiltroRelatorioDescontoPorCupom.lbEmpresa.value=Empresa +winFiltroRelatorioDescontoPorCupom.lbPuntoVenta.value=Agência diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index a726c2b2a..b0cc1a8f5 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -10144,3 +10144,13 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origine winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Nature + + +indexController.mniRelatorioDescontoPorCupom.label = Relatório Desconto Por Cupom +relatorioDescontoPorCupomController.window.title = RELATÓRIO DESCONTO POR CUPOM +relatorioDescontoPorCupomController.lbDatInicial.value=Data Inicial da Venda +relatorioDescontoPorCupomController.lbDatFinal.value=Data Final da Venda +relatorioDescontoPorCupomController.lbDatResgateInicial.value=Data Inicial do Resgate +relatorioDescontoPorCupomController.lbDatResgateFinal.value=Data Final do Resgate +winFiltroRelatorioDescontoPorCupom.lbEmpresa.value=Empresa +winFiltroRelatorioDescontoPorCupom.lbPuntoVenta.value=Agência diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 9f620f413..b307a09f3 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -10147,3 +10147,13 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origem winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Natureza + + +indexController.mniRelatorioDescontoPorCupom.label = Relatório Desconto Por Cupom +relatorioDescontoPorCupomController.window.title = RELATÓRIO DESCONTO POR CUPOM +relatorioDescontoPorCupomController.lbDatInicial.value=Data Inicial da Venda +relatorioDescontoPorCupomController.lbDatFinal.value=Data Final da Venda +relatorioDescontoPorCupomController.lbDatResgateInicial.value=Data Inicial do Resgate +relatorioDescontoPorCupomController.lbDatResgateFinal.value=Data Final do Resgate +winFiltroRelatorioDescontoPorCupom.lbEmpresa.value=Empresa +winFiltroRelatorioDescontoPorCupom.lbPuntoVenta.value=Agência diff --git a/web/gui/relatorios/filtroRelatorioDescontoPorCupom.zul b/web/gui/relatorios/filtroRelatorioDescontoPorCupom.zul new file mode 100644 index 000000000..f22d93e19 --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioDescontoPorCupom.zul @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +