From 32722bc377e62a78b4d5c162db02a2576c839dd0 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Thu, 8 Sep 2022 19:18:11 +0000 Subject: [PATCH] fixes bug#54018 AL-1232 qua: dev:Aristides git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@114099 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../impl/RelatorioAgenciaFechamentoNovo.java | 69 ++- ...latorioAgenciaFechamentoNovo_es.properties | 70 +-- ...orioAgenciaFechamentoNovo_pt_BR.properties | 68 +-- .../RelatorioAgenciaFechamentoNovo.jasper | Bin 52178 -> 57519 bytes .../RelatorioAgenciaFechamentoNovo.jrxml | 497 ++++++++++-------- .../RelatorioAgenciaFechamentoBean.java | 27 + 6 files changed, 445 insertions(+), 286 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAgenciaFechamentoNovo.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAgenciaFechamentoNovo.java index 7085d128f..7653e5c95 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAgenciaFechamentoNovo.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAgenciaFechamentoNovo.java @@ -66,8 +66,11 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { Integer qtdSeguro = NumberUtils.INTEGER_ZERO; BigDecimal valorExcesso = BigDecimal.ZERO; - BigDecimal valorSeguro = BigDecimal.ZERO; - + BigDecimal valorSeguro = BigDecimal.ZERO; + BigDecimal difMaior = BigDecimal.ZERO; + BigDecimal total = BigDecimal.ZERO; + + RelatorioAgenciaFechamentoBean agenciaFechamento = new RelatorioAgenciaFechamentoBean(); agenciaFechamento.setEmpresa(empresaNome); @@ -101,14 +104,34 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { qtdSeguro += rset2.getInt("qtdSeguro"); qtdExcesso = rset2.getInt("qtdExcesso"); - valorSeguro = valorSeguro.add(rset2.getBigDecimal("valorSeguro")); - valorExcesso = valorExcesso.add(rset2.getBigDecimal("valorExcesso")); + valorSeguro = valorSeguro.add(rset2.getBigDecimal("valorSeguro")); + valorExcesso = valorExcesso.add(rset2.getBigDecimal("valorExcesso")); + difMaior = valorExcesso.add(rset2.getBigDecimal("difMaior")); + } + + agenciaFechamento.setQtdExcesso(qtdExcesso); agenciaFechamento.setQtdSeguro(qtdSeguro); agenciaFechamento.setValorExcesso(valorExcesso); agenciaFechamento.setValorSeguro(valorSeguro); + + agenciaFechamento.setDifMaior(difMaior); + //total.add(rset1.getBigDecimal("valorBilhete")); + //total.add(rset1.getBigDecimal("valorVch")); + //total.add(rset1.getBigDecimal("valorInternet")); + total = rset1.getBigDecimal("total"); + total.add(difMaior); + //total.subtract(rset1.getBigDecimal("valorEstornado")); + //total.subtract(rset1.getBigDecimal("valorEstornado")); + //total.subtract(rset1.getBigDecimal("valorOCD")); + agenciaFechamento.setTotal(total); + + + agenciaFechamento.setValorOCD(rset1.getBigDecimal("valorOCD")); + + lsDadosRelatorio.add(agenciaFechamento); //Estava dando um erro de "máximo de cursores abertos excedido" @@ -139,6 +162,29 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { private String carregarDadosTotaisdeVenda(String puntoVenta, String empresa) { StringBuilder sql = new StringBuilder(); + + /* + * sql.append("WITH BASE_DIF AS ("); sql.append(" SELECT (C.PRECIOPAGADO - CF.IMPORTE) AS DIF_MAIOR,"); sql.append(" C.CAJA_ID"); sql.append(" FROM CAJA C INNER JOIN CAJA_FORMAPAGO CF ON (C.CAJA_ID = CF.CAJA_ID)"); sql.append(" INNER JOIN FORMA_PAGO FG ON (CF.FORMAPAGO_ID = FG.FORMAPAGO_ID)"); sql.append(" INNER JOIN BOLETO B ON (C.TRANSACAOORIGINAL_ID = B.BOLETO_ID)"); + * sql.append(" WHERE FG.FORMAPAGO_ID <> 10 AND C.PRECIOPAGADO > IMPORTE"); sql.append(" )"); + */ + sql.append(" SELECT CODIGO,"); + sql.append(" DESCRICAO,"); + sql.append(" VALORBILHETE,"); + sql.append(" QTDBILHETE,"); + sql.append(" VALORSEGURO,"); + sql.append(" QTDSEGURO,"); + sql.append(" VALORVCH,"); + sql.append(" QTDVCH,"); + sql.append(" VALORINTERNET,"); + sql.append(" QTDINTERNET,"); + sql.append(" VALORCANCELADO,"); + sql.append(" QTDCANCELADO,"); + sql.append(" VALORESTORNADO,"); + sql.append(" QTDESTORNADO,"); + sql.append(" VALOROCD,"); + //sql.append(" DIFMAIOR,"); + sql.append(" ((VALORBILHETE+VALORVCH+VALORINTERNET)-VALORCANCELADO-VALORESTORNADO-VALOROCD) AS TOTAL"); + sql.append(" FROM ("); sql.append(" SELECT pv.PUNTOVENTA_ID AS codigo, "); sql.append(" pv.nombpuntoventa AS descricao, "); sql.append(" COALESCE(SUM( "); @@ -226,13 +272,18 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { sql.append(" AND c.MOTIVOCANCELACION_ID <> 31 "); sql.append(" THEN 1 "); sql.append(" ELSE NULL "); - sql.append(" END),0) AS qtdEstornado "); - sql.append(" "); + sql.append(" END),0) AS qtdEstornado, "); + sql.append(" COALESCE(SUM(O.VALOR_PAGAR),0) AS VALOROCD "); + //sql.append(" COALESCE(SUM(BD.DIF_MAIOR),0) AS DIFMAIOR"); sql.append(" FROM CAJA c "); sql.append(" INNER JOIN PUNTO_VENTA pv "); sql.append(" ON c.PUNTOVENTA_ID = pv.PUNTOVENTA_ID "); sql.append(" INNER JOIN marca m "); sql.append(" ON m.marca_id = c.marca_id "); + sql.append(" LEFT JOIN OCD O "); + sql.append(" ON (C.TRANSACAOORIGINAL_ID = O.BOLETO_ID AND O.INDPAGO = 1)"); + /*sql.append(" LEFT JOIN BASE_DIF BD "); + sql.append(" ON (BD.CAJA_ID = C.CAJA_ID)");*/ sql.append(" WHERE c.TURNO_ID IS NOT NULL "); sql.append(" AND c.FECCORTE BETWEEN :de AND :ate "); if (puntoVenta != null && !puntoVenta.equals("-1")) { @@ -248,6 +299,7 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { sql.append(" AND NVL(C.MONEDA_ID, 1) = :MOEDA_ID "); sql.append(" GROUP BY pv.PUNTOVENTA_ID, pv.nombpuntoventa "); sql.append(" ORDER BY pv.nombpuntoventa "); + sql.append(")"); return sql.toString(); @@ -257,8 +309,9 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { StringBuilder sql = new StringBuilder(); sql.append(" SELECT "); + sql.append(" COALESCE(SUM(CASE WHEN tee.CVETIPOEVENTO = 'DIF_MAIOR' THEN cd.PRECIO ELSE NULL END),0) AS difmaior, "); sql.append(" COALESCE(SUM(CASE WHEN tee.CVETIPOEVENTO = 'EXCESSO_BAGAGEM' THEN cd.PRECIO ELSE NULL END),0) AS valorExcesso, "); - sql.append(" COALESCE(COUNT(CASE WHEN tee.CVETIPOEVENTO = 'EXCESSO_BAGAGEM' THEN 1 ELSE NULL END),0) as qtdExcesso, "); + sql.append(" COALESCE(COUNT(CASE WHEN tee.CVETIPOEVENTO = 'EXCESSO_BAGAGEM' THEN 1 ELSE NULL END),0) as qtdExcesso, "); sql.append(" COALESCE(SUM(CASE WHEN tee.CVETIPOEVENTO = 'SEGURO_OPCIONAL' THEN cd.PRECIO ELSE NULL END),0) AS valorSeguro, "); sql.append(" COALESCE(COUNT(CASE WHEN tee.CVETIPOEVENTO = 'SEGURO_OPCIONAL' THEN 1 ELSE NULL END),0) as qtdSeguro "); sql.append(" FROM CAJA_DIVERSOS cd "); @@ -269,7 +322,7 @@ public class RelatorioAgenciaFechamentoNovo extends Relatorio { sql.append(" WHERE cd.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND ee.activo = 1 "); sql.append(" AND cd.TURNO_ID IS NOT NULL "); - sql.append(" AND tee.CVETIPOEVENTO in ('EXCESSO_BAGAGEM', 'SEGURO_OPCIONAL' ) "); + sql.append(" AND tee.CVETIPOEVENTO in ('EXCESSO_BAGAGEM', 'SEGURO_OPCIONAL', 'DIF_MAIOR') "); sql.append(" AND cd.FECCORTE BETWEEN :de AND :ate "); if (puntoVenta != null && !puntoVenta.equals("-1")) { sql.append(" AND cd.PUNTOVENTA_ID = ").append(puntoVenta); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_es.properties index 5f9d7c2fb..9ebc5b5b9 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_es.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_es.properties @@ -1,41 +1,43 @@ #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #geral -detail.agencia = AG\u00CANCIA -detail.qtd.bilhete = Qtd. Bilhete Entrada -detail.qtd.cancelados = Qtd. Cancelados -detail.qtd.estornados = Qtd. Estornados -detail.qtd.excesso = Qtd. Excesso Entrada -detail.qtd.internet = Qtd. Internet Entrada -detail.qtd.itex = Qtd. Itex Entrada -detail.qtd.seguro = Qtd. Seguro Entrada -detail.qtd.vch = Qtd. VCH Entrada -detail.quantidade = QUANTIDADE -detail.totalGeral = TOTAL GERAL -detail.valor = VALOR -detail.valor.bilhete = Valor Bilhete Entrada -detail.valor.cancelados = Valor Cancelados -detail.valor.estornados = Valor Estornados -detail.valor.excesso = Valor Excesso Entrada -detail.valor.internet = Valor Internet Entrada -detail.valor.itex = Valor Itex Entrada -detail.valor.seguro = Valor Seguro Entrada -detail.valor.vch = Valor VCH Entrada +detail.agencia=AG\u00CANCIA +detail.qtdbilhete=Cant. Boleto de entrada +detail.qtdcancelados=Cant. Cancelados +detail.qtdestornados=Cant. Inveridos +detail.qtdexcesso=Cant. Exceso Entrada +detail.qtdinternet=Cant. Entrada aInternet +detail.qtditex=Cant. Entrada Itex +detail.qtd.eguro=Cant. Entrada de Seguro +detail.qtdvch=Cant. Entrada VCH +detail.quantidade=LA CANTIDAD +detail.valor=VALOR +detail.valorbilhete=Valor del boleto de entrada +detail.valorcancelados=Montos cancelados +detail.valorestornados=Importe invertido +detail.valorexcesso=Entrada de exceso de valor +detail.valorinternet=Entrada de valor de Internet +detail.valoritex=Entrada de elemento de valor +detail.valorseguro=Entrada de valor de seguro +detail.valorvch=Valor de VCH de entrada +detail.valorOCD=Dev. OCD +detail.difMaior=Dif. Maior +detail.total=Total -header.anulado = Anulados -header.codigo = C\u00F3digo +header.anulado=Anulados +header.codigo=C\u00F3digo #Labels header -header.data = Data : -header.descricao = Descri\u00E7\u00E3o -header.despesa = Despesa -header.devolvido = Devolvidos -header.digitado = Digitado -header.empresa = Empresa : -header.receita = Receita -header.total = Total -header.vendido = Vendido +header.dat=Data : +header.descricao=Descri\u00E7\u00E3o +header.despesa=Gastos +header.devolvido=Devuelto +header.digitado=Mecanografiado +header.empresa=Empresa : +header.receita=Ingresos +header.total=Total +header.vendido=Vendido -linhas = Linhas +linhas=Líneas -msg.a = a -msg.noData = No se pudo obtener datos con los par\u00E1metros reportados. +msg.a=a +msg.noData=No se pudo obtener datos con los par\u00E1metros reportados. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_pt_BR.properties index da8ef5c22..8bd720a40 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_pt_BR.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAgenciaFechamentoNovo_pt_BR.properties @@ -1,41 +1,43 @@ #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #geral -detail.agencia = Ag\u00EAncia -detail.qtd.bilhete = Qtd. Bilhete Entrada -detail.qtd.cancelados = Qtd. Cancelados -detail.qtd.estornados = Qtd. Estornados -detail.qtd.excesso = Qtd. Excesso Entrada -detail.qtd.internet = Qtd. Internet Entrada -detail.qtd.itex = Qtd. Itex Entrada -detail.qtd.seguro = Qtd. Seguro Entrada -detail.qtd.vch = Qtd. VCH Entrada -detail.quantidade = QUANTIDADE -detail.totalGeral = TOTAL GERAL -detail.valor = VALOR -detail.valor.bilhete = Valor Bilhete Entrada -detail.valor.cancelados = Valor Cancelados -detail.valor.estornados = Valor Estornados -detail.valor.excesso = Valor Excesso Entrada -detail.valor.internet = Valor Internet Entrada -detail.valor.itex = Valor Itex Entrada -detail.valor.seguro = Valor Seguro Entrada -detail.valor.vch = Valor VCH Entrada +detail.agencia=AG\u00CANCIA +detail.qtdbilhete=Qtd. Bilhete Entrada +detail.qtdcancelados=Qtd. Cancelados +detail.qtdestornados=Qtd. Estornados +detail.qtdexcesso=Qtd. Excesso Entrada +detail.qtdinternet=Qtd. Internet Entrada +detail.qtditex=Qtd. Itex Entrada +detail.qtdseguro=Qtd. Seguro Entrada +detail.qtdvch=Qtd. VCH Entrada +detail.quantidade=QUANTIDADE +detail.valor=VALOR +detail.valorbilhete=Valor Bilhete Entrada +detail.valorcancelados=Valor Cancelados +detail.valorestornados=Valor Estornados +detail.valorexcesso=Valor Excesso Entrada +detail.valorinternet=Valor Internet Entrada +detail.valoritex=Valor Itex Entrada +detail.valorseguro=Valor Seguro Entrada +detail.valorvch=Valor VCH Entrada +detail.valorOCD=Dev. OCD +detail.difMaior=Dif. Maior +detail.total=Total -header.anulado = Anulados -header.codigo = C\u00F3digo +header.anulado=Anulados +header.codigo=C\u00F3digo #Labels header header.data = Data : -header.descricao = Descri\u00E7\u00E3o -header.despesa = Despesa -header.devolvido = Devolvidos -header.digitado = Digitado -header.empresa = Empresa : -header.receita = Receita -header.total = Total -header.vendido = Vendido +header.descricao=Descri\u00E7\u00E3o +header.despesa=Despesa +header.devolvido=Devolvidos +header.digitado=Digitado +header.empresa=Empresa : +header.receita=Receita +header.total=Total +header.vendido=Vendido -linhas = Linhas +linhas=Linhas -msg.a = a -msg.noData = No se pudo obtener datos con los par\u00E1metros reportados. +msg.a=a +msg.noData=No se pudo obtener datos con los par\u00E1metros reportados. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jasper index 6d8744be3c8554091d814a6834b326914407f3e2..613d9ddec449ce3ef3fdb9a81083c7ef820e744b 100644 GIT binary patch literal 57519 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 Cm88J{ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jrxml index 45eb76bdc..d1816bb46 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAgenciaFechamentoNovo.jrxml @@ -32,6 +32,9 @@ + + + @@ -74,6 +77,15 @@ + + + + + + + + + @@ -141,336 +153,399 @@ - - - - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioAgenciaFechamentoBean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioAgenciaFechamentoBean.java index 3301abb1c..f1132bf94 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioAgenciaFechamentoBean.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioAgenciaFechamentoBean.java @@ -21,6 +21,9 @@ public class RelatorioAgenciaFechamentoBean { protected BigDecimal valorInternet; protected BigDecimal valorCancelado; protected BigDecimal valorEstornado; + protected BigDecimal valorOCD; + protected BigDecimal difMaior; + protected BigDecimal total; public String getEmpresa() { return empresa; @@ -150,4 +153,28 @@ public class RelatorioAgenciaFechamentoBean { this.valorEstornado = valorEstornado; } + public BigDecimal getValorOCD() { + return valorOCD; + } + + public void setValorOCD(BigDecimal valorOCD) { + this.valorOCD = valorOCD; + } + + public BigDecimal getDifMaior() { + return difMaior; + } + + public void setDifMaior(BigDecimal difMaior) { + this.difMaior = difMaior; + } + + public BigDecimal getTotal() { + return total; + } + + public void setTotal(BigDecimal total) { + this.total = total; + } + }