From 542ef869b00b48093da84574a5de4a71d6eaa15d Mon Sep 17 00:00:00 2001 From: thiago Date: Thu, 20 Jul 2017 23:30:07 +0000 Subject: [PATCH] =?UTF-8?q?fixed=20bug=20#9292=20-=20Cria=C3=A7=C3=A3o=20d?= =?UTF-8?q?e=20relat=C3=B3rio=20de=20Estorno=20de=20cart=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@71709 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../RelatorioCancelamentoVendaCartao.java | 51 --- .../impl/RelatorioEstornoCartao.java | 145 ++++++ .../RelatorioEstornoCartaoController.java | 359 +++++++++++++++ .../RelatorioEstornoCartao_es.properties | 33 ++ .../RelatorioEstornoCartao_pt_BR.properties | 33 ++ .../templates/RelatorioEstornoCartao.jasper | Bin 0 -> 44751 bytes .../templates/RelatorioEstornoCartao.jrxml | 422 ++++++++++++++++++ .../ItemMenuRelatorioEstornoCartao.java | 33 ++ .../utilerias/menu/menu_original.properties | 1 + web/WEB-INF/i3-label_es_MX.label | 14 + web/WEB-INF/i3-label_pt_BR.label | 14 + .../filtroRelatorioEstornoCartao.zul | 116 +++++ 12 files changed, 1170 insertions(+), 51 deletions(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartao.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartaoController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_es.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_pt_BR.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioEstornoCartao.jasper create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioEstornoCartao.jrxml create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioEstornoCartao.java create mode 100644 web/gui/relatorios/filtroRelatorioEstornoCartao.zul diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java index f5f3a74fd..905cfe683 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java @@ -219,55 +219,4 @@ public class RelatorioCancelamentoVendaCartao extends Relatorio { return sql.toString(); } - /* - * private String getSql() { StringBuilder sql = new StringBuilder(); //Busca os boletos originais dos boletos que foram geradas OCDS //Esses boletos sofreram transferência. //O intuito dessa query é recuperar os dados originais de cartões de crédito sql.append(" WITH boletos_originais AS "); sql.append(" (SELECT distinct b.boleto_id as boleto_id_bo, ctj.numtarjeta as numtarjeta_bo, ptovta.numsitef as numsitef_bo, c.caja_id, c.fechorventa AS fechorventa_bo, "); - * sql.append(" CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo, "); sql.append(" ctj.nsu as nsu_bo, c.numoperacion AS numoperacion "); sql.append(" FROM boleto b, caja_det_pago cdt, caja c, caja_tarjeta ctj, ptovta_empresa ptovta "); sql.append(" WHERE b.boleto_id IN "); sql.append(" ( SELECT b.boletooriginal_id FROM OCD o "); sql.append(" INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append( - * " INNER JOIN caja c ON c.numoperacion = b.numoperacion "); sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" AND o.puntoventa_id IN (" + - * parametros.get("NUMPUNTOVENTA").toString() + ")"); } sql.append(" AND b.boletooriginal_id IS NOT NULL "); sql.append(")"); - * - * sql.append(" AND c.numoperacion = b.numoperacion "); //Para venda pela internet aparecer é preciso descomentar a linha abaixo sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" AND cdt.caja_id = c.caja_id "); sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); sql.append(" AND cdt.formapago_id IN (2) "); sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); if (parametros.get("EMPRESA_ID") != null) { //Para venda pela internet - * aparecer é preciso descomentar a linha abaixo sql.append(" AND ptovta.empresa_id = " + parametros.get("EMPRESA_ID")); } sql.append("), "); //Busca os boletos que foram vendidos pela internet(boleto originais) sql.append(" boletos_o_venda_internet AS( "); sql.append(" SELECT DISTINCT b.boleto_id AS boleto_id_bo_vi, ctj.numtarjeta AS numtarjeta_bo_vi, "); sql.append(" ptovta.numsitef AS numsitef_bo_vi, c.caja_id, c.fechorventa AS fechorventa_bo_vi, "); sql.append( - * " CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo_vi, "); sql.append(" ctj.nsu AS nsu_bo_vi, c.numoperacion AS numoperacion FROM boleto b, caja_det_pago cdt, caja c, "); sql.append(" caja_tarjeta ctj, ptovta_empresa ptovta WHERE b.boleto_id IN(SELECT b.boletooriginal_id "); sql.append(" FROM OCD o INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); - * sql.append(" and c.feccorrida = b.feccorrida "); sql.append(" and c.corrida_id = b.corrida_id "); sql.append(" and c.numasiento = b.numasiento "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if - * (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" AND o.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } sql.append(" AND b.boletooriginal_id IS NOT NULL "); sql.append(")"); sql.append(" AND c.numoperacion = b.numoperacion "); sql.append(" AND cdt.caja_id = c.caja_id "); sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); sql.append(" AND cdt.formapago_id IN (2) "); sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); - * sql.append(" AND b.feccorrida = c.feccorrida "); sql.append(" AND b.corrida_id = c.corrida_id "); sql.append(" AND b.numasiento = c.numasiento "); sql.append(" AND b.puntoventa_id = "); - * - * //Pega o ponto de venda Constante constante = constanteService.buscarPorNomeConstante("PUNTO_VENTA_INTERNET"); if(constante != null) { sql.append(constante.getValorconstante()); } else { sql.append("99999"); } sql.append(" ),"); //É o código do puntoventa de compras pela internet - * - * //Busca os boletos novos após a transferência e geração de OCD sql.append(" boletos_novos AS( "); sql.append(" SELECT c.caja_id as caja_id_bn, b.boleto_id as boleto_id_bn, b.boletooriginal_id as boleto_id_original_bn, "); sql.append(" b.puntoventa_id as puntoventa_id_bn, p.nombpuntoventa as nombpuntoventa_bn, c.fechorventa as fechorventa_bn, "); sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ "); sql.append( - * " coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda_bn, "); sql.append(" CASE WHEN o.VALOR_TARJETA is null OR o.VALOR_TARJETA = 0 THEN TO_CHAR(COALESCE(o.VALOR_PAGAR,0),'FM9999999.90')ELSE TO_CHAR(COALESCE(o.VALOR_TARJETA,0),'FM9999999.90') END as valor_cancelar_bn, "); sql.append(" c.numfoliosistema as numfoliosistema_bn, o.fecinc as datadevolucao_bn "); sql.append(" FROM OCD o "); sql.append( - * " INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append(" INNER JOIN caja c ON c.numoperacion = b.numoperacion "); sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" INNER JOIN punto_venta p "); sql.append(" ON p.puntoventa_id = b.puntoventa_id "); //sql.append(" AND o.VALOR_TARJETA <> 0 "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append( - * " INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } - * - * sql.append("),"); //Busca todas as OCD's exceto os boletos que foram transferidos antes da geração da OCD sql.append(" ocds AS(select distinct c.caja_id, b.boleto_id, p.nombpuntoventa, ctj.numtarjeta, c.fechorventa, ptovta.numsitef,"); sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda,"); sql.append( - * " TO_CHAR(coalesce(o.VALOR_TARJETA,0),'FM9999999.90') as valor_cancelar,"); sql.append(" 'OCD' as descmotivo, ctj.numautorizacion, ctj.nsu, c.numfoliosistema, o.fecinc as datadevolucao, c.numoperacion "); sql.append(" from OCD o"); sql.append(" inner join boleto b on o.BOLETO_ID = b.BOLETO_ID"); sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); //sql.append(" and c.numfoliosistema = b.numfoliosistema "); sql.append( - * " inner join caja_det_pago cdt ON cdt.caja_id = c.caja_id and cdt.formapago_id in (:formaPago1)"); sql.append(" inner join caja_tarjeta ctj on cdt.cajadetpago_id = ctj.cajadetpago_id"); sql.append(" inner join punto_venta p on p.puntoventa_id = b.puntoventa_id"); sql.append(" inner join ptovta_empresa ptovta on b.puntoventa_id = ptovta.puntoventa_id"); sql.append(" inner join marca m on m.marca_id = b.marca_id "); sql.append(" and m.EMPRESA_ID = ptovta.EMPRESA_ID "); - * if (parametros.get("EMPRESA_ID") != null) { sql.append(" inner join empresa e on e.empresa_id = m.empresa_id and m.empresa_id = " + parametros.get("EMPRESA_ID")); } sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } //sql.append(" order by c.fechorventa, o.fecinc ),"); sql.append(" ),"); sql.append( - * " ocds_total_compra AS "); //Busca com base no numoperacion da consulta "ocds" os valores totais da compra(Cesta de compras) sql.append(" (SELECT c.numoperacion AS numoperacion_cc,"); sql.append(" SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append(" FROM CAJA c INNER JOIN ocds o on c.caja_id = o.caja_id "); - * sql.append(" LEFT JOIN evento_extra e on e.boleto_id = o.boleto_id "); sql.append(" GROUP BY c.numoperacion),"); sql.append(" total_compra_bo_originais AS"); //Busca com base no numoperacion da consulta "boletos_originais" os valores totais da compra(Cesta de compras) sql.append(" (SELECT c.numoperacion AS numoperacion_cc, "); sql.append( - * " SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append(" FROM CAJA c"); sql.append(" INNER JOIN boletos_originais bo on c.caja_id = bo.caja_id "); sql.append(" LEFT JOIN evento_extra e on e.boleto_id = bo.boleto_id_bo "); sql.append(" GROUP BY c.numoperacion), "); //Busca com base no numoperacion da consulta - * "boletos_o_venda_internet" os valores totais da compra(Cesta de compras) sql.append(" total_compra_bo_internet AS "); sql.append(" (SELECT c.numoperacion AS numoperacion_cc, SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ "); sql.append(" COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append( - * " FROM CAJA c INNER JOIN boletos_o_venda_internet bo ON c.caja_id = bo.caja_id LEFT JOIN evento_extra e"); sql.append(" ON e.boleto_id = bo.boleto_id_bo_vi GROUP BY c.numoperacion)"); - * - * sql.append(" SELECT nombpuntoventa, fechorventa, datadevolucao, numtarjeta, numsitef, valor_venda, valor_cancelar, "); sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, valor_cesta "); sql.append(" FROM ( "); - * - * //Realiza o join entre as Views 'ocds' e ocds_total_compra afim de obter o total da cesta de compras sql.append(" SELECT caja_id, nombpuntoventa, numtarjeta, fechorventa, numsitef, valor_venda, valor_cancelar, "); sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, datadevolucao, valor_cesta "); sql.append(" FROM ocds "); sql.append(" INNER JOIN ocds_total_compra ocdst "); sql.append(" ON ocds.numoperacion = ocdst.numoperacion_cc "); - * - * sql.append(" UNION "); //Realiza o join entre as Views 'boletos_originais' e total_compra_bo_originais afim de obter o total da cesta de compras //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos transferidos os quais foram //geradas OCD´s sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo as numtarjeta, bo.fechorventa_bo as fechorventa, "); sql.append( - * " bo.numsitef_bo as numsitef, bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, "); sql.append(" bo.numautorizacion_bo as numautorizacion, bo.nsu_bo as nsu, numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_originais.valor_cesta"); sql.append(" FROM boletos_originais bo "); sql.append(" INNER JOIN total_compra_bo_originais total_c_bo_originais "); sql.append( - * " ON total_c_bo_originais.numoperacion_cc = bo.numoperacion "); sql.append(" INNER JOIN boletos_novos bn "); sql.append(" ON bo.boleto_id_bo = bn.boleto_id_original_bn "); - * - * sql.append(" UNION "); - * - * //Realiza o join entre as Views 'boletos_o_venda_internet' e total_compra_bo_internet afim de obter o total da cesta de compras //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos novos os quais foram //geradas OCD´s sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo_vi as numtarjeta, bo.fechorventa_bo_vi as fechorventa, bo.numsitef_bo_vi as numsitef, "); sql.append( - * " bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, bo.numautorizacion_bo_vi as numautorizacion, bo.nsu_bo_vi as nsu, "); sql.append(" numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_internet.valor_cesta FROM boletos_o_venda_internet bo "); sql.append(" INNER JOIN total_compra_bo_internet total_c_bo_internet ON total_c_bo_internet.numoperacion_cc = bo.numoperacion "); sql.append( - * " INNER JOIN boletos_novos bn ON bo.boleto_id_bo_vi = bn.boleto_id_original_bn "); - * - * sql.append(") ORDER BY datadevolucao "); - * - * return sql.toString(); - * - * } - */ - } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartao.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartao.java new file mode 100644 index 000000000..20b0caf1d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartao.java @@ -0,0 +1,145 @@ +/** + * + */ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.Timestamp; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.ArrayDataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +/** + * @author Thiago + * + */ +public class RelatorioEstornoCartao extends Relatorio { + + protected RelatorioEstornoCartao(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new ArrayDataSource(this) { + @Override + public void initDados() throws Exception { + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + String sql = getSql(); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); + + stmt.setTimestamp("data_inicial", new Timestamp(DateUtil.inicioFecha((Date) parametros.get("DATA_INICIAL")).getTime())); + stmt.setTimestamp("data_final", new Timestamp(DateUtil.fimFecha((Date) parametros.get("DATA_FINAL")).getTime())); + stmt.setInt("empresaId", Integer.valueOf(parametros.get("EMPRESA_ID") + "")); + if (parametros.get("DOCUMENTO_CPF") != null && parametros.get("DOCUMENTO_CPF") != "") { + stmt.setString("documentoCPF", parametros.get("DOCUMENTO_CPF").toString()); + } + if (parametros.get("CARTAO") != null && parametros.get("CARTAO") != "") { + stmt.setString("cartao", parametros.get("CARTAO").toString()); + } + + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + Map dataResult = new HashMap(); + dataResult.put("agencia", rset.getString("agencia")); + dataResult.put("bilheteiro", rset.getString("bilheteiro")); + dataResult.put("data", rset.getDate("data")); + dataResult.put("cliente", rset.getString("cliente")); + dataResult.put("cpf", rset.getString("cpf")); + dataResult.put("email", rset.getString("email")); + dataResult.put("telefone", rset.getString("telefone")); + dataResult.put("cartao", rset.getString("cartao")); + dataResult.put("numeroCartao", rset.getString("numeroCartao")); + dataResult.put("nsu", rset.getString("nsu")); + dataResult.put("autorizacao", rset.getString("autorizacao")); + dataResult.put("dataTransacao", rset.getDate("dataTransacao")); + dataResult.put("valorEstorno", rset.getBigDecimal("valorEstorno")); + dataResult.put("origem", rset.getString("origem")); + dataResult.put("destino", rset.getString("destino")); + dataResult.put("servico", rset.getInt("servico")); + dataResult.put("dataServico", rset.getDate("dataServico")); + dataResult.put("bilhete", rset.getString("bilhete")); + dataResult.put("valorTransacao", rset.getBigDecimal("valorTransacao")); + + this.dados.add(dataResult); + } + + this.resultSet = rset; + } + + + }); + } + + private String getSql() { + + StringBuilder sql = new StringBuilder(); + + sql.append(" SELECT "); + sql.append(" pv.NOMBPUNTOVENTA agencia, "); + sql.append(" u.CVEUSUARIO bilheteiro, "); + sql.append(" DEC.FECREGISTRO data, "); + sql.append(" DEC.NOMBTITULAR cliente, "); + sql.append(" DEC.DOCUMENTOCPF cpf, "); + sql.append(" DEC.EMAIL email, "); + sql.append(" DEC.TELEFONO telefone, "); + sql.append(" dec.TIPOCARTAO cartao, "); + sql.append(" DEC.NUMCARTAO numeroCartao, "); + sql.append(" DEC.NSU nsu, "); + sql.append(" DEC.NUMAUTORIZACAO autorizacao, "); + sql.append(" DEC.FECTRANSACAO dataTransacao, "); + sql.append(" DEC.IMPORTEESTORNADO valorEstorno, "); + sql.append(" pOrigen.CVEPARADA origem, "); + sql.append(" pDestino.CVEPARADA destino, "); + sql.append(" dec.CORRIDA_ID servico, "); + sql.append(" dec.FECCORRIDA dataServico, "); + sql.append(" DEC.NUMFOLIOSISTEMA bilhete, "); + sql.append(" DEC.IMPORTETOTAL valorTransacao "); + sql.append(" FROM "); + sql.append(" DADOS_ESTORNO_CARTAO DEC "); + sql.append(" JOIN punto_venta pv "); + sql.append(" ON "); + sql.append(" pv.PUNTOVENTA_ID = dec.PUNTOVENTA_ID "); + sql.append(" JOIN usuario u "); + sql.append(" ON "); + sql.append(" u.USUARIO_ID = DEC.USUARIO_ID "); + sql.append(" JOIN parada pOrigen "); + sql.append(" ON "); + sql.append(" pOrigen.PARADA_ID = DEC.ORIGEN_ID "); + sql.append(" JOIN parada pDestino "); + sql.append(" ON "); + sql.append(" pDestino.PARADA_ID = DEC.DESTINO_ID "); + sql.append(" JOIN MARCA m "); + sql.append(" ON "); + sql.append(" dec.MARCA_ID = m.MARCA_ID "); + sql.append(" JOIN EMPRESA e "); + sql.append(" ON "); + sql.append(" e.EMPRESA_ID = m.EMPRESA_ID "); + sql.append(" WHERE "); + sql.append(" dec.activo = 1 "); + if (parametros.get("NUMPUNTOVENTA") != null) { + sql.append(" AND dec.PUNTOVENTA_ID IN(" + parametros.get("NUMPUNTOVENTA") + ") "); + } + sql.append(" AND e.EMPRESA_ID = :empresaId "); + if (parametros.get("DOCUMENTO_CPF") != null && parametros.get("DOCUMENTO_CPF") != "") { + sql.append(" AND DEC.DOCUMENTOCPF = :documentoCPF "); + } + if (parametros.get("CARTAO") != null && parametros.get("CARTAO") != "") { + sql.append(" AND dec.TIPOCARTAO = :cartao "); + } + sql.append(" AND DEC.FECREGISTRO BETWEEN :data_inicial AND :data_final "); + + return sql.toString(); + } + @Override + protected void processaParametros() throws Exception { + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartaoController.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartaoController.java new file mode 100644 index 000000000..89f2a04b0 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstornoCartaoController.java @@ -0,0 +1,359 @@ +/** + * + */ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Calendar; +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.zhtml.Messagebox; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Paging; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +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.RenderRelatorioVendasBilheteiro; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRelatorioVendasBilheteiroSelecionados; + +/** + * @author Thiago + * + */ +@Controller("relatorioEstornoCartaoController") +@Scope("prototype") +public class RelatorioEstornoCartaoController extends MyGenericForwardComposer { + + /** + * + */ + private static final long serialVersionUID = 1L; + + private Datebox datInicial; + private Datebox datFinal; + private MyComboboxEstandar cmbEmpresa; + private List lsEmpresa; + private Paging pagingPuntoVenta; + private MyTextbox txtCpf; + private MyTextbox txtCartao; + private MyTextbox txtNombrePuntoVenta; + private MyListbox puntoVentaList; + private MyListbox puntoVentaSelList; + + @Autowired + private EmpresaService empresaService; + @Autowired + private DataSource dataSourceRead; + @Autowired + private transient PagedListWrapper plwPuntoVenta; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + super.doAfterCompose(comp); + puntoVentaList.setItemRenderer(new RenderRelatorioVendasBilheteiro()); + puntoVentaSelList.setItemRenderer(new RenderRelatorioVendasBilheteiroSelecionados()); + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + executarRelatorio(); + } + + /** + * @throws Exception + * + */ + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + { + if (datInicial != null && datFinal != null && datFinal.getValue().compareTo(datInicial.getValue()) < 0) { + try { + Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), + Labels.getLabel("relatorioEstornoCartaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } catch (InterruptedException ex) { + ex.printStackTrace(); + } + } else + { + Relatorio relatorio; + + Map parametros = new HashMap(); + + StringBuilder filtro = new StringBuilder(); + + filtro.append("Início período: "); + Calendar cal = Calendar.getInstance(); + cal.setTime(datInicial.getValue()); + filtro.append(cal.get(Calendar.DATE) + "/"); + filtro.append((cal.get(Calendar.MONTH) + 1) + "/"); + filtro.append(cal.get(Calendar.YEAR) + "; "); + + filtro.append("Fim período: "); + cal.setTime(datFinal.getValue()); + filtro.append(cal.get(Calendar.DATE) + "/"); + filtro.append((cal.get(Calendar.MONTH) + 1) + "/"); + filtro.append(cal.get(Calendar.YEAR) + "; "); + + parametros.put("DATA_INICIAL", datInicial.getValue()); + parametros.put("DATA_FINAL", datFinal.getValue()); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioEstornoCartaoController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + parametros.put("USUARIO_NOME", UsuarioLogado.getUsuarioLogado().getNombusuario()); + parametros.put("CARTAO", txtCartao.getValue()); + parametros.put("DOCUMENTO_CPF", txtCpf.getValue()); + + filtro.append("Empresa: "); + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + Empresa empresa = (Empresa) itemEmpresa.getValue(); + parametros.put("EMPRESA_ID", empresa.getEmpresaId()); + filtro.append(empresa.getNombempresa() + ";"); + } else { + filtro.append(" Todas;"); + } + + filtro.append("Agência: "); + String puntoVentas = ""; + List lsPuntoVentaSelecionados = new ArrayList(Arrays.asList(puntoVentaSelList.getData())); + if (lsPuntoVentaSelecionados.isEmpty()) { + puntoVentas = "Todas"; + } else { + StringBuilder puntoVentaIds = new StringBuilder(); + for (int i = 0; i < lsPuntoVentaSelecionados.size(); i++) { + PuntoVenta puntoVenta = lsPuntoVentaSelecionados.get(i); + puntoVentas = puntoVentas + puntoVenta.getNombpuntoventa() + ","; + if(puntoVentaIds.length() > 0) { + puntoVentaIds.append(","); + } + puntoVentaIds.append(puntoVenta.getPuntoventaId()); + } + parametros.put("NUMPUNTOVENTA", puntoVentaIds.toString()); + } + filtro.append(puntoVentas).append(";"); + parametros.put("FILTROS", filtro.toString()); + relatorio = new RelatorioEstornoCartao(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioEstornoCartaoController.window.title"), args, MODAL); + } + } + } + + private void executarPesquisa() { + HibernateSearchObject puntoVentaBusqueda = new HibernateSearchObject(PuntoVenta.class, pagingPuntoVenta.getPageSize()); + + puntoVentaBusqueda.addFilterILike("nombpuntoventa", "%" + txtNombrePuntoVenta.getValue() + "%"); + puntoVentaBusqueda.addFilterEqual("activo", Boolean.TRUE); + + puntoVentaBusqueda.addSortAsc("nombpuntoventa"); + + puntoVentaBusqueda.addFilterEqual("activo", Boolean.TRUE); + + plwPuntoVenta.init(puntoVentaBusqueda, puntoVentaList, pagingPuntoVenta); + + if (puntoVentaList.getData().length == 0) { + try { + Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), + Labels.getLabel("relatorioVendasBilheteiroController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } catch (InterruptedException ex) { + ex.printStackTrace(); + } + } + } + + public void onClick$btnPesquisa(Event ev) { + executarPesquisa(); + } + + public void onClick$btnLimpar(Event ev) { + puntoVentaList.setData(new ArrayList()); + txtNombrePuntoVenta.setText(""); + } + + public void onDoubleClick$puntoVentaSelList(Event ev) { + PuntoVenta puntoVenta = (PuntoVenta) puntoVentaSelList.getSelected(); + puntoVentaSelList.removeItem(puntoVenta); + } + + public void onDoubleClick$puntoVentaList(Event ev) { + PuntoVenta puntoVenta = (PuntoVenta) puntoVentaList.getSelected(); + puntoVentaSelList.addItemNovo(puntoVenta); + } + + /** + * @return the datInicial + */ + public Datebox getDatInicial() { + return datInicial; + } + + /** + * @param datInicial + * the datInicial to set + */ + public void setDatInicial(Datebox datInicial) { + this.datInicial = datInicial; + } + + /** + * @return the datFinal + */ + public Datebox getDatFinal() { + return datFinal; + } + + /** + * @param datFinal + * the datFinal to set + */ + public void setDatFinal(Datebox datFinal) { + this.datFinal = datFinal; + } + + /** + * @return the cmbEmpresa + */ + public MyComboboxEstandar getCmbEmpresa() { + return cmbEmpresa; + } + + /** + * @param cmbEmpresa + * the cmbEmpresa to set + */ + public void setCmbEmpresa(MyComboboxEstandar cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + + /** + * @return the lsEmpresa + */ + public List getLsEmpresa() { + return lsEmpresa; + } + + /** + * @param lsEmpresa + * the lsEmpresa to set + */ + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + /** + * @return the pagingPuntoVenta + */ + public Paging getPagingPuntoVenta() { + return pagingPuntoVenta; + } + + /** + * @param pagingPuntoVenta + * the pagingPuntoVenta to set + */ + public void setPagingPuntoVenta(Paging pagingPuntoVenta) { + this.pagingPuntoVenta = pagingPuntoVenta; + } + + /** + * @return the txtNombrePuntoVenta + */ + public MyTextbox getTxtNombrePuntoVenta() { + return txtNombrePuntoVenta; + } + + /** + * @param txtNombrePuntoVenta + * the txtNombrePuntoVenta to set + */ + public void setTxtNombrePuntoVenta(MyTextbox txtNombrePuntoVenta) { + this.txtNombrePuntoVenta = txtNombrePuntoVenta; + } + + /** + * @return the puntoVentaList + */ + public MyListbox getPuntoVentaList() { + return puntoVentaList; + } + + /** + * @param puntoVentaList + * the puntoVentaList to set + */ + public void setPuntoVentaList(MyListbox puntoVentaList) { + this.puntoVentaList = puntoVentaList; + } + + /** + * @return the puntoVentaSelList + */ + public MyListbox getPuntoVentaSelList() { + return puntoVentaSelList; + } + + /** + * @param puntoVentaSelList + * the puntoVentaSelList to set + */ + public void setPuntoVentaSelList(MyListbox puntoVentaSelList) { + this.puntoVentaSelList = puntoVentaSelList; + } + + /** + * @return the txtCpf + */ + public MyTextbox getTxtCpf() { + return txtCpf; + } + + /** + * @return the txtCartao + */ + public MyTextbox getTxtCartao() { + return txtCartao; + } + + /** + * @param txtCpf + * the txtCpf to set + */ + public void setTxtCpf(MyTextbox txtCpf) { + this.txtCpf = txtCpf; + } + + /** + * @param txtCartao + * the txtCartao to set + */ + public void setTxtCartao(MyTextbox txtCartao) { + this.txtCartao = txtCartao; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_es.properties new file mode 100644 index 000000000..10509478c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_es.properties @@ -0,0 +1,33 @@ +#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: + +#Labels header +agencia.label=Agência +bilheteiro.label=Bilheteiro +data.label=Data +cliente.label=Cliente +cpf.label=CPF +email.label=E-mail +telefone.label=Telefone +cartao.label=Cartão +numeroCartao.label=Número Cartão +nsu.label=NSU +autorizacao.label=Autorização +dataTransacao.label=Data Transação +valorEstorno.label= Valor Estorno +origem.label=Origem +destino.label=Destino +servico.label=Serviço +dataServico.label=Data Serviço +bilhete.label=Bilhete +valorTransacao.label=Valor Transação \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_pt_BR.properties new file mode 100644 index 000000000..10509478c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioEstornoCartao_pt_BR.properties @@ -0,0 +1,33 @@ +#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: + +#Labels header +agencia.label=Agência +bilheteiro.label=Bilheteiro +data.label=Data +cliente.label=Cliente +cpf.label=CPF +email.label=E-mail +telefone.label=Telefone +cartao.label=Cartão +numeroCartao.label=Número Cartão +nsu.label=NSU +autorizacao.label=Autorização +dataTransacao.label=Data Transação +valorEstorno.label= Valor Estorno +origem.label=Origem +destino.label=Destino +servico.label=Serviço +dataServico.label=Data Serviço +bilhete.label=Bilhete +valorTransacao.label=Valor Transação \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioEstornoCartao.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioEstornoCartao.jasper new file mode 100644 index 0000000000000000000000000000000000000000..07a2e30fb4ed785814bcdc2598b1d60fac88aace GIT binary patch literal 44751 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioEstornoCartao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioEstornoCartao.java new file mode 100644 index 000000000..3e94f042c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioEstornoCartao.java @@ -0,0 +1,33 @@ +/** + * + */ +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; + +/** + * @author Thiago + * + */ +public class ItemMenuRelatorioEstornoCartao extends DefaultItemMenuSistema { + + public ItemMenuRelatorioEstornoCartao() { + super("indexController.mniRelatorioEstornoCartao.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOESTORNOCARTAO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioEstornoCartao.zul", + Labels.getLabel("relatorioEstornoCartaoController.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 86146f924..d5344ecd9 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 @@ -157,6 +157,7 @@ analitico.gerenciais.financeiro.vendasBilheteiro=com.rjconsultores.ventaboletos. analitico.gerenciais.financeiro.receitaServico=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioReceitaServico analitico.gerenciais.financeiro.agenciaFechamento=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAgenciaFechamento analitico.gerenciais.financeiro.cancelamentoVendaCartao=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCancelamentoVendaCartao +analitico.gerenciais.financeiro.estornoCartao=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioEstornoCartao analitico.gerenciais.financeiro.j3=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCancelamentoTransacao analitico.gerenciais.financeiro.descontos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioDescontos analitico.gerenciais.financeiro.vendasComissao=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioVendasComissao diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 946fe2454..0a251201a 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -276,6 +276,7 @@ indexController.mniRelatorioDemandas.label = Demandas indexController.mniRelatorioReceitaServico.label = Ingreso por Servicio indexController.mniRelatorioReceitaEmbarcadaServico.label = Reporte de Ingreso Embarcado por Servicio indexController.mniRelatorioCancelamentoVendaCartao.label = Cancelación de Venta con Tarjeta +indexController.mniRelatorioEstornoCartao.label=Estorno Tarjeta indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Relátorio de Tabela de Preços indexController.mniRelatorioAIDF.label = Reporte AIDF @@ -649,6 +650,19 @@ relatorioCancelamentoVendaCartaoController.btnLimpar.label = Limpiar relatorioCancelamentoVendaCartaoController.lbNumero.value = Numero Agencia relatorioCancelamentoVendaCartaoController.lbBilheteiro.value = Asesor +#Relatorio de Estorno Cartão +relatorioEstornoCartaoController.window.title = Relatório de Estorno por Cartão +relatorioEstornoCartaoController.datainicial.value = Data Inicial +relatorioEstornoCartaoController.dataFinal.value = Data Final +relatorioEstornoCartaoController.lbPuntoVenta.value = Agência +relatorioEstornoCartaoController.lbEmpresa.value = Empresa +relatorioEstornoCartaoController.btnPesquisa.label = Buscar +relatorioEstornoCartaoController.btnLimpar.label = Limpar +relatorioEstornoCartaoController.lbNumero.value = Número Agência +relatorioEstornoCartaoController.lbBilheteiro.value = Bilheteiro +relatorioEstornoCartaoController.lbCpf.value = CPF +relatorioEstornoCartaoController.lbCartao.value = Cartão + #Relatorio Aidf relatorioAidfController.window.title = Reporte Aidf relatorioAidfController.datainicial.value = Fecha Inicial diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 3f0a32fa0..c487b03b4 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -281,6 +281,7 @@ indexController.mniRelatorioDemandas.label = Demandas indexController.mniRelatorioReceitaServico.label = Receita por Serviço indexController.mniRelatorioReceitaEmbarcadaServico.label =Receita Embarcada indexController.mniRelatorioCancelamentoVendaCartao.label = Cancelamento Venda a Cartão +indexController.mniRelatorioEstornoCartao.label=Estorno Cartão indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Tabela de Preços indexController.mniRelatorioAIDF.label = AIDF @@ -683,6 +684,19 @@ relatorioCancelamentoVendaCartaoController.btnLimpar.label = Limpar relatorioCancelamentoVendaCartaoController.lbNumero.value = Número Agência relatorioCancelamentoVendaCartaoController.lbBilheteiro.value = Bilheteiro +#Relatorio de Estorno Cartão +relatorioEstornoCartaoController.window.title = Relatório de Estorno por Cartão +relatorioEstornoCartaoController.datainicial.value = Data Inicial +relatorioEstornoCartaoController.dataFinal.value = Data Final +relatorioEstornoCartaoController.lbPuntoVenta.value = Agência +relatorioEstornoCartaoController.lbEmpresa.value = Empresa +relatorioEstornoCartaoController.btnPesquisa.label = Buscar +relatorioEstornoCartaoController.btnLimpar.label = Limpar +relatorioEstornoCartaoController.lbNumero.value = Número Agência +relatorioEstornoCartaoController.lbBilheteiro.value = Bilheteiro +relatorioEstornoCartaoController.lbCpf.value = CPF +relatorioEstornoCartaoController.lbCartao.value = Cartão + #Relatorio Aidf relatorioAidfController.window.title = Relatório Aidf relatorioAidfController.datainicial.value = Data Inicial diff --git a/web/gui/relatorios/filtroRelatorioEstornoCartao.zul b/web/gui/relatorios/filtroRelatorioEstornoCartao.zul new file mode 100644 index 000000000..547879f83 --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioEstornoCartao.zul @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + +