diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoes.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoes.java index c28b9ee70..873562b5d 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoes.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoes.java @@ -23,8 +23,8 @@ import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; public class RelatorioVendasCartoes extends Relatorio { - - private static Logger log = Logger.getLogger(RelatorioMovimentacaoEstoque.class); + + private static Logger log = Logger.getLogger(RelatorioVendasCartoes.class); List list = null; @@ -36,10 +36,10 @@ public class RelatorioVendasCartoes extends Relatorio { public void initDados() throws Exception { Connection conexao = this.relatorio.getConexao(); Map parametros = this.relatorio.getParametros(); - + NamedParameterStatement stmt = null; ResultSet rset = null; - + String dataInicial = parametros.get("DATA_INICIAL").toString() + " 00:00:00"; String dataFinal = parametros.get("DATA_FINAL").toString() + " 23:59:59"; Empresa empresa = (Empresa) parametros.get("EMPRESA"); @@ -47,28 +47,29 @@ public class RelatorioVendasCartoes extends Relatorio { Usuario usuario = (Usuario) parametros.get("USUARIO"); Estacion estacao = (Estacion) parametros.get("ESTACION"); String tipoAgencias = (String) parametros.get("TIPOPUNTOVENTA"); - + String sql = getSql(dataInicial, dataFinal, empresa, puntoVenta, tipoAgencias, usuario, estacao, buscarPorDataDaVenda); - + log.info("query= " + sql); + try { stmt = new NamedParameterStatement(conexao, sql); - - if(empresa != null){ + + if (empresa != null) { stmt.setInt("empresaId", empresa.getEmpresaId()); } - if(puntoVenta != null){ + if (puntoVenta != null) { stmt.setInt("puntoventaId", puntoVenta.getPuntoventaId()); } - if(dataInicial != null){ - stmt.setString("dataInicial",dataInicial); + if (dataInicial != null) { + stmt.setString("dataInicial", dataInicial); } - if(dataFinal != null){ + if (dataFinal != null) { stmt.setString("dataFinal", dataFinal); } - if(estacao != null){ + if (estacao != null) { stmt.setInt("estacionId", estacao.getEstacionId()); } - if(usuario != null){ + if (usuario != null) { stmt.setInt("usuarioId", usuario.getUsuarioId()); } @@ -77,50 +78,50 @@ public class RelatorioVendasCartoes extends Relatorio { list = new ArrayList(); BigDecimal valorTotal = BigDecimal.ZERO; while (rset.next()) { - + RelatorioVendasCartoesBean bean = new RelatorioVendasCartoesBean(); - + bean.setDataVenda(rset.getDate("dataVenda")); - bean.setDataOperacao(rset.getString("dataOperacao") != null ? DateUtil.getDateFromString(rset.getString("dataOperacao"), "ddMMyy") : null); - bean.setDescPagamento(rset.getString("descPagamento") != null ? rset.getString("descPagamento") : null); - bean.setValor(rset.getBigDecimal("valor") != null ? rset.getBigDecimal("valor") : null); - bean.setAutorizacao(rset.getString("autorizacao") != null ? rset.getString("autorizacao") : null); + bean.setDataOperacao(rset.getString("dataOperacao") != null ? DateUtil.getDateFromString(rset.getString("dataOperacao"), "ddMMyy") : null); + bean.setDescPagamento(rset.getString("descPagamento") != null ? rset.getString("descPagamento") : null); + bean.setValor(rset.getBigDecimal("valor") != null ? rset.getBigDecimal("valor") : null); + bean.setAutorizacao(rset.getString("autorizacao") != null ? rset.getString("autorizacao") : null); bean.setQtdParcelas(rset.getInt("qtdParcelas")); bean.setNumeroPuntoVenta(rset.getInt("numeroPuntoVenta")); - bean.setNomePuntoVenta(rset.getString("nomePuntoVenta") != null ? rset.getString("nomePuntoVenta") : null); - bean.setDescOperadoraCartao(rset.getString("descOperadoraCartao") != null ? rset.getString("descOperadoraCartao") : null); - bean.setNSU(rset.getString("nsu") != null ? rset.getString("nsu") : null); - bean.setNumeroCartao(rset.getString("numeroCartao") != null ? rset.getString("numeroCartao") : null); - bean.setBandeira(rset.getString("bandeira") != null ? rset.getString("bandeira") : null); - bean.setEstabelecimento(rset.getString("estabelecimento") != null ? rset.getString("estabelecimento") : null); - bean.setTerminal(rset.getString("terminal") != null ? rset.getString("terminal") : null); - valorTotal = valorTotal.add(bean.getValor() != null ? bean.getValor() : BigDecimal.ZERO); + bean.setNomePuntoVenta(rset.getString("nomePuntoVenta") != null ? rset.getString("nomePuntoVenta") : null); + bean.setDescOperadoraCartao(rset.getString("descOperadoraCartao") != null ? rset.getString("descOperadoraCartao") : null); + bean.setNSU(rset.getString("nsu") != null ? rset.getString("nsu") : null); + bean.setNumeroCartao(rset.getString("numeroCartao") != null ? rset.getString("numeroCartao") : null); + bean.setBandeira(rset.getString("bandeira") != null ? rset.getString("bandeira") : null); + bean.setEstabelecimento(rset.getString("estabelecimento") != null ? rset.getString("estabelecimento") : null); + bean.setTerminal(rset.getString("terminal") != null ? rset.getString("terminal") : null); + valorTotal = valorTotal.add(bean.getValor() != null ? bean.getValor() : BigDecimal.ZERO); bean.setValorTotal(valorTotal); - + list.add(bean); } } catch (Exception e) { log.error(e.getMessage(), e); } finally { - if(rset != null && !rset.isClosed()) { + if (rset != null && !rset.isClosed()) { rset.close(); } - if(stmt != null && !stmt.isClosed()) { + if (stmt != null && !stmt.isClosed()) { stmt.close(); } } } }); - + this.setCollectionDataSource(new JRBeanCollectionDataSource(list)); } - - private RelatorioVendasCartoesBean calcTotalValor(RelatorioVendasCartoesBean bean) { - BigDecimal valorTotal = bean.getValorTotal().add(bean.getValorTotal()); - bean.setValorTotal(valorTotal); - return bean; - } - + + // private RelatorioVendasCartoesBean calcTotalValor(RelatorioVendasCartoesBean bean) { + // BigDecimal valorTotal = bean.getValorTotal().add(bean.getValorTotal()); + // bean.setValorTotal(valorTotal); + // return bean; + // } + @Override protected void processaParametros() throws Exception { } @@ -128,9 +129,9 @@ public class RelatorioVendasCartoes extends Relatorio { private String getSql(String dataInicial, String dataFinal, Empresa empresa, PuntoVenta puntoVenta, String tipoAgencias, Usuario usuario, Estacion estacion, Boolean buscarPorDataDaVenda) { StringBuilder sb = new StringBuilder(); - + sb.append("SELECT caja.descpago as descPagamento,"); - sb.append(" to_char(caja.dataoperacao, 'ddMMyyyy') as dataOperacao,"); + sb.append(" to_char(caja.dataoperacao, 'ddMMyyyy') as dataOperacao,"); sb.append(" caja.autorizacao as autorizacao,"); sb.append(" coalesce(caja.qtdparcelas, 1) as qtdParcelas ,"); sb.append(" caja.datavenda as dataVenda, "); @@ -150,8 +151,8 @@ public class RelatorioVendasCartoes extends Relatorio { sb.append(" ct.cantparcelas AS qtdparcelas,"); sb.append(" c.fechorventa AS datavenda,"); sb.append(" case when c.motivocancelacion_id is null then cfp.importe else cfp.importe * -1 end AS preco,"); - sb.append(" pt.numpuntoventa as numeroPuntoVenta, "); - sb.append("pt.nombpuntoventa as nomePuntoVenta, "); + sb.append(" pt.numpuntoventa as numeroPuntoVenta, "); + sb.append("pt.nombpuntoventa as nomePuntoVenta, "); sb.append("ct.descoperadoracartao as descoperadoracartao, "); sb.append("ct.nsu as NSU, "); sb.append(" ct.numtarjeta as numeroCartao, "); @@ -169,38 +170,36 @@ public class RelatorioVendasCartoes extends Relatorio { sb.append(" LEFT JOIN estacion_sitef estsitef ON ( estsitef.estacion_id = c.estacion_id and estsitef.activo = 1) "); sb.append(" WHERE c.indreimpresion = 0 "); - if(empresa!= null){ + if (empresa != null) { sb.append("and ma.empresa_id = :empresaId "); } - - if(puntoVenta != null){ + + if (puntoVenta != null) { sb.append("AND c.puntoventa_id = :puntoventaId "); } - - if(estacion!= null){ + + if (estacion != null) { sb.append("AND c.estacion_id = :estacionId "); } - - if(usuario!= null){ + + if (usuario != null) { sb.append(" and c.usuario_id = :usuarioId "); } - - if(dataInicial != null && buscarPorDataDaVenda){ + + if (dataInicial != null && buscarPorDataDaVenda) { sb.append("AND c.fechorventa >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); } else if (dataInicial != null && !buscarPorDataDaVenda) { sb.append("AND c.feccorte >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); } - - if(dataFinal != null && buscarPorDataDaVenda){ + + if (dataFinal != null && buscarPorDataDaVenda) { sb.append("AND c.fechorventa <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); - } else if (dataInicial != null && !buscarPorDataDaVenda) { + } else if (dataInicial != null && !buscarPorDataDaVenda) { sb.append("AND c.feccorte <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); } sb.append(tipoAgencias.equals("-1") || tipoAgencias.equals("TODAS") ? "" : " and pt.tipoptovta_id not in (" + tipoAgencias + ") "); - - sb.append(" AND fp.formapago_id IN(2,3)"); sb.append(" AND c.activo = 1) caja "); sb.append("GROUP BY caja.descpago,"); @@ -217,7 +216,7 @@ public class RelatorioVendasCartoes extends Relatorio { sb.append(" caja.estabelecimento, "); sb.append(" caja.terminal "); sb.append("ORDER BY caja.nomePuntoVenta, caja.datavenda "); - + return sb.toString(); } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoesAlternativo.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoesAlternativo.java new file mode 100644 index 000000000..c59b0ab9c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasCartoesAlternativo.java @@ -0,0 +1,240 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.apache.log4j.Logger; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.Estacion; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.entidad.Usuario; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioVendasCartoesBean; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +public class RelatorioVendasCartoesAlternativo extends Relatorio { + + private static Logger log = Logger.getLogger(RelatorioVendasCartoesAlternativo.class); + + List list = null; + + public RelatorioVendasCartoesAlternativo(Map parametros, Connection conexao, final Boolean buscarPorDataDaVenda) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new DataSource(this) { + + public void initDados() throws Exception { + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + + NamedParameterStatement stmt = null; + ResultSet rset = null; + + String dataInicial = parametros.get("DATA_INICIAL").toString() + " 00:00:00"; + String dataFinal = parametros.get("DATA_FINAL").toString() + " 23:59:59"; + Empresa empresa = (Empresa) parametros.get("EMPRESA"); + PuntoVenta puntoVenta = (PuntoVenta) parametros.get("PUNTOVENTA"); + Usuario usuario = (Usuario) parametros.get("USUARIO"); + Estacion estacao = (Estacion) parametros.get("ESTACION"); + String tipoAgencias = (String) parametros.get("TIPOPUNTOVENTA"); + + String sql = getSql(dataInicial, dataFinal, empresa, puntoVenta, tipoAgencias, usuario, estacao, buscarPorDataDaVenda); + + log.info("query=" + sql); + + try { + stmt = new NamedParameterStatement(conexao, sql); + + if (empresa != null) { + stmt.setInt("empresaId", empresa.getEmpresaId()); + } + if (puntoVenta != null) { + stmt.setInt("puntoventaId", puntoVenta.getPuntoventaId()); + } + if (dataInicial != null) { + stmt.setString("dataInicial", dataInicial); + } + if (dataFinal != null) { + stmt.setString("dataFinal", dataFinal); + } + if (estacao != null) { + stmt.setInt("estacionId", estacao.getEstacionId()); + } + if (usuario != null) { + stmt.setInt("usuarioId", usuario.getUsuarioId()); + } + + rset = stmt.executeQuery(); + + list = new ArrayList(); + BigDecimal valorTotal = BigDecimal.ZERO; + while (rset.next()) { + + RelatorioVendasCartoesBean bean = new RelatorioVendasCartoesBean(); + + bean.setDataVenda(rset.getDate("dataVenda")); + bean.setDataOperacao(rset.getString("dataOperacao") != null ? DateUtil.getDateFromString(rset.getString("dataOperacao"), "ddMMyy") : null); + bean.setDescPagamento(rset.getString("descPagamento") != null ? rset.getString("descPagamento") : null); + bean.setValor(rset.getBigDecimal("valor") != null ? rset.getBigDecimal("valor") : null); + bean.setAutorizacao(rset.getString("autorizacao") != null ? rset.getString("autorizacao") : null); + bean.setQtdParcelas(rset.getInt("qtdParcelas")); + + valorTotal = valorTotal.add(bean.getValor() != null ? bean.getValor() : BigDecimal.ZERO); + bean.setValorTotal(valorTotal); + + list.add(bean); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + if (rset != null && !rset.isClosed()) { + rset.close(); + } + if (stmt != null && !stmt.isClosed()) { + stmt.close(); + } + } + } + }); + + this.setCollectionDataSource(new JRBeanCollectionDataSource(list)); + } + + // private RelatorioVendasCartoesBean calcTotalValor(RelatorioVendasCartoesBean bean) { + // BigDecimal valorTotal = bean.getValorTotal().add(bean.getValorTotal()); + // bean.setValorTotal(valorTotal); + // return bean; + // } + + @Override + protected void processaParametros() throws Exception { + } + + private String getSql(String dataInicial, String dataFinal, Empresa empresa, PuntoVenta puntoVenta, String tipoAgencias, Usuario usuario, Estacion estacion, Boolean buscarPorDataDaVenda) { + + StringBuilder sb = new StringBuilder(); + + sb.append("SELECT caja.descpago as descPagamento,"); + sb.append(" to_char(caja.dataoperacao, 'ddMMyyyy') as dataOperacao,"); + sb.append(" caja.autorizacao as autorizacao,"); + sb.append(" coalesce(caja.qtdparcelas, 1) as qtdParcelas ,"); + sb.append(" trunc(caja.datavenda) as dataVenda, "); + sb.append(" sum(caja.preco) as valor "); + sb.append("FROM"); + sb.append(" (SELECT fp.descpago AS descpago,"); + sb.append(" ct.fecoperacion AS dataoperacao,"); + sb.append(" ct.numautorizacion AS autorizacao,"); + sb.append(" ct.cantparcelas AS qtdparcelas,"); + sb.append(" c.fechorventa AS datavenda,"); + sb.append(" case when c.motivocancelacion_id is null then cfp.importe else cfp.importe * -1 end AS preco"); + sb.append(" FROM caja c"); + sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id=cfp.caja_id AND cfp.activo = 1 "); + sb.append(" INNER JOIN marca ma on ma.marca_id = c.marca_id "); + sb.append(" INNER JOIN forma_pago fp ON cfp.formapago_id=fp.formapago_id"); + sb.append(" LEFT JOIN caja_det_pago cdp ON (c.caja_id = cdp.caja_id and cdp.cajaformapago_id = cfp.cajaformapago_id)"); + sb.append(" LEFT JOIN caja_tarjeta ct ON (ct.cajadetpago_id = cdp.cajadetpago_id)"); + sb.append(" INNER JOIN punto_venta pt ON (pt.puntoventa_id = c.puntoventa_id) "); + sb.append(" WHERE c.indreimpresion = 0 "); + + if (empresa != null) { + sb.append("and ma.empresa_id = :empresaId "); + } + + if (puntoVenta != null) { + sb.append("AND c.puntoventa_id = :puntoventaId "); + } + + if (estacion != null) { + sb.append("AND c.estacion_id = :estacionId "); + } + + if (usuario != null) { + sb.append(" and c.usuario_id = :usuarioId "); + } + + if (dataInicial != null && buscarPorDataDaVenda) { + sb.append("AND c.fechorventa >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); + } else if (dataInicial != null && !buscarPorDataDaVenda) { + sb.append("AND c.feccorte >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); + } + + if (dataFinal != null && buscarPorDataDaVenda) { + sb.append("AND c.fechorventa <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); + } else if (dataInicial != null && !buscarPorDataDaVenda) { + sb.append("AND c.feccorte <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); + } + + sb.append(tipoAgencias.equals("-1") || tipoAgencias.equals("TODAS") ? "" : " and pt.tipoptovta_id not in (" + tipoAgencias + ") "); + + sb.append(" AND fp.formapago_id IN(2,3)"); + sb.append(" AND c.activo = 1 "); + + sb.append(" UNION "); + sb.append(" SELECT "); + sb.append(" fp.descpago as descpago, "); + sb.append(" ct.fecoperacion as dataoperacao, "); + sb.append(" ct.numautorizacion as autorizacao, "); + sb.append(" coalesce(ct.cantparcelas, 1) as qtdparcelas, "); + sb.append(" coalesce(c.fechorventa, cd.fechorvta) as datavenda, "); + sb.append(" case when cdp.importe < 0 and fp.formapago_id in (3, 2) then 0 else cdp.importe end as preco "); + sb.append(" FROM caja_diversos cd "); + sb.append(" JOIN caja_diversos_pago cdp on cdp.cajadiversos_id = cd.cajadiversos_id "); + sb.append(" INNER JOIN forma_pago fp on fp.formapago_id = cdp.formapago_id "); + sb.append(" INNER JOIN evento_extra ee on ee.eventoextra_id = cd.eventoextra_id "); + sb.append(" LEFT JOIN boleto c on c.boleto_id = ee.boleto_id "); + sb.append(" LEFT JOIN caja_tarjeta ct on ( cdp.cajatarjeta_id = ct.cajatarjeta_id) "); + sb.append(" WHERE cd.activo = 1 "); + sb.append(" AND (ee.boleto_id is null or ee.boleto_id = c.boleto_id) "); + sb.append(" AND fp.formapago_id in (3, 2) "); + + if (empresa != null) { + sb.append("and ee.empresa_id = :empresaId "); + } + + if (puntoVenta != null) { + sb.append("AND cd.puntoventa_id = :puntoventaId "); + } + + if (estacion != null) { + sb.append("AND cd.estacion_id = :estacionId "); + } + + if (usuario != null) { + sb.append(" AND cd.usuario_id = :usuarioId "); + } + + if (dataInicial != null && buscarPorDataDaVenda) { + sb.append(" AND cd.fechorvta >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); + } else if (dataInicial != null && !buscarPorDataDaVenda) { + sb.append(" AND cd.feccorte >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI:SS') "); + } + + if (dataFinal != null && buscarPorDataDaVenda) { + sb.append(" AND cd.fechorvta <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); + } else if (dataInicial != null && !buscarPorDataDaVenda) { + sb.append(" AND cd.feccorte <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI:SS') "); + } + + sb.append(tipoAgencias.equals("-1") || tipoAgencias.equals("TODAS") ? "" : " and pt.tipoptovta_id not in (" + tipoAgencias + ") "); + sb.append(" ) caja "); + + sb.append("GROUP BY caja.descpago,"); + sb.append(" to_char(caja.dataoperacao, 'ddMMyyyy'),"); + sb.append(" caja.autorizacao,"); + sb.append(" caja.qtdparcelas,"); + sb.append(" trunc(caja.datavenda) "); + sb.append("ORDER BY caja.descpago, trunc(caja.datavenda), caja.autorizacao"); + + return sb.toString(); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_es.properties new file mode 100644 index 000000000..58a8630a3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_es.properties @@ -0,0 +1,35 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. +msg.a=à + +#Labels header +header.titulo.relatorio=Relatório Vendas de Cartões +header.periodo=Per\u00EDodo\: +header.data.hora=Data/Hora\: +header.pagina=P\u00E1gina\: +header.filtro=Filtro\: +header.filtro.servico=Servi\u00E7o\: +header.filtro.empresa=Empresa: +header.filtro.agencia=Agência: +header.filtro.estacao=Estação: +header.filtro.bilheteiro=Bilheteiro: +header.filtro.grupo=Grupo de Linhas\: + +#Labels detail + +detail.dataOperacao=Data Operação +detail.dataVenda=Data Venda +detail.autorizacao=Autorização +detail.qtdParcelas=Quantidade Parcelas +detail.valorTotal=Valor Total +detail.valor=Valor R$ + +#Group + +group.total=Total Geral: +sub.total=Sub Total: +total.debito=Total Débito: +total.credito=Total Crédito: +linhas=Linhas + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_pt_BR.properties new file mode 100644 index 000000000..58a8630a3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasCartoesAlternativo_pt_BR.properties @@ -0,0 +1,35 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. +msg.a=à + +#Labels header +header.titulo.relatorio=Relatório Vendas de Cartões +header.periodo=Per\u00EDodo\: +header.data.hora=Data/Hora\: +header.pagina=P\u00E1gina\: +header.filtro=Filtro\: +header.filtro.servico=Servi\u00E7o\: +header.filtro.empresa=Empresa: +header.filtro.agencia=Agência: +header.filtro.estacao=Estação: +header.filtro.bilheteiro=Bilheteiro: +header.filtro.grupo=Grupo de Linhas\: + +#Labels detail + +detail.dataOperacao=Data Operação +detail.dataVenda=Data Venda +detail.autorizacao=Autorização +detail.qtdParcelas=Quantidade Parcelas +detail.valorTotal=Valor Total +detail.valor=Valor R$ + +#Group + +group.total=Total Geral: +sub.total=Sub Total: +total.debito=Total Débito: +total.credito=Total Crédito: +linhas=Linhas + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jasper new file mode 100644 index 000000000..872ca2d46 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jrxml new file mode 100644 index 000000000..4d85a22bc --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasCartoesAlternativo.jrxml @@ -0,0 +1,268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band splitType="Stretch"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioVendasCartoesController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioVendasCartoesController.java index 4df5347d4..0380c26ca 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioVendasCartoesController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioVendasCartoesController.java @@ -28,6 +28,7 @@ import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.entidad.TipoPuntoVenta; import com.rjconsultores.ventaboletos.entidad.Usuario; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioVendasCartoes; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioVendasCartoesAlternativo; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.TipoPuntoVentaService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; @@ -40,7 +41,6 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; -import com.rjconsultores.ventaboletos.web.utilerias.render.RenderPuntoVentaSimple; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderTipoPuntoVenta; import com.trg.search.Filter; @@ -51,7 +51,7 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { private static final long serialVersionUID = 1L; private Datebox dataInicial; - private Datebox dataFinal; + private Datebox dataFinal; private MyComboboxEstandar cmbEmpresa; private MyComboboxPuntoVenta cmbPuntoVenta; private MyComboboxEstacion cmbEstacion; @@ -69,16 +69,16 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { private static final String TODOS_VALUE = new Integer(-1).toString(); private static final String TODOS = "TODAS"; private Bandbox bbPesquisaPuntoVenta; - + private Radio radioDataVenda; - + @Autowired - private DataSource dataSourceRead; - + private DataSource dataSourceRead; + @Override public void doAfterCompose(Component comp) throws Exception { - super.doAfterCompose(comp); + super.doAfterCompose(comp); lsEmpresa = UsuarioLogado.getUsuarioLogado().getEmpresa(); lsTipoPuntoVenta = tipoPuntoVentaService.obtenerTodos(); tipoPuntoVentaSelList.setItemRenderer(new RenderTipoPuntoVenta()); @@ -89,18 +89,17 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { * */ @SuppressWarnings({ "rawtypes", "unchecked" }) - private void executarRelatorio() throws Exception { + private void executarRelatorio(boolean isLayoutAlternatico) throws Exception { Map parametros = new HashMap(); - - if(dataInicial.getValue() == null){ + if (dataInicial.getValue() == null) { return; } - if(dataFinal.getValue() == null){ + if (dataFinal.getValue() == null) { return; } parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioVendasCartoesController.window.title")); - + lsTipoPuntoVenta = new ArrayList(Arrays.asList(tipoPuntoVentaSelList.getData())); if (lsTipoPuntoVenta.size() > 0) { @@ -118,13 +117,13 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { parametros.put("TIPOPUNTOVENTA_ID", TODOS_VALUE); parametros.put("TIPOPUNTOVENTA", TODOS); } - + StringBuilder filtro = new StringBuilder("Filtros\n"); Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); if (itemEmpresa != null) { Empresa empresa = (Empresa) itemEmpresa.getValue(); - if(empresa.getEmpresaId() > -1) { + if (empresa.getEmpresaId() > -1) { parametros.put("EMPRESA", empresa); parametros.put("NOME_EMPRESA", empresa.getNombempresa()); filtro.append(empresa.getNombempresa()); @@ -134,48 +133,56 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { } else { filtro.append("Todas"); } + Comboitem itemPuntoVenta = cmbPuntoVenta.getSelectedItem(); if (itemPuntoVenta != null) { PuntoVenta puntoVenta = (PuntoVenta) itemPuntoVenta.getValue(); - if(puntoVenta.getPuntoventaId() > -1) { + if (puntoVenta.getPuntoventaId() > -1) { parametros.put("PUNTOVENTA", puntoVenta); parametros.put("NOME_AGENCIA", puntoVenta.getNombpuntoventa()); } else { parametros.put("NOME_AGENCIA", "Todas"); - } - }else { + } + } else { parametros.put("NOME_AGENCIA", "Todas"); } + Comboitem cbiUsuario = cmbUsuario.getSelectedItem(); if (cbiUsuario != null) { Usuario usuario = (Usuario) cbiUsuario.getValue(); - if(usuario.getUsuarioId() > -1) { + if (usuario.getUsuarioId() > -1) { parametros.put("USUARIO", usuario); parametros.put("NOME_USUARIO", usuario.getNombUsuarioCompleto()); } else { parametros.put("NOME_USUARIO", "Todos"); } - }else { + } else { parametros.put("NOME_USUARIO", "Todos"); } + Comboitem itemEstacion = cmbEstacion.getSelectedItem(); if (itemEstacion != null) { Estacion estacion = (Estacion) itemEstacion.getValue(); - if(estacion.getEstacionId() > -1) { + if (estacion.getEstacionId() > -1) { parametros.put("ESTACION", estacion); parametros.put("ESTACAO", estacion.getDescestacion()); - } - else { + } else { parametros.put("ESTACAO", "Todas"); } - }else { + } else { parametros.put("ESTACAO", "Todas"); } + parametros.put("DATA_INICIAL", DateUtil.getStringDate(dataInicial.getValue(), "dd/MM/yyyy")); parametros.put("DATA_FINAL", DateUtil.getStringDate(dataFinal.getValue(), "dd/MM/yyyy")); - - parametros.put("FILTROS", filtro.toString()); - Relatorio relatorio = new RelatorioVendasCartoes(parametros, dataSourceRead.getConnection(), radioDataVenda.isSelected()); + + parametros.put("FILTROS", filtro.toString()); + Relatorio relatorio = null; + if (isLayoutAlternatico) { + relatorio = new RelatorioVendasCartoesAlternativo(parametros, dataSourceRead.getConnection(), radioDataVenda.isSelected()); + } else { + relatorio = new RelatorioVendasCartoes(parametros, dataSourceRead.getConnection(), radioDataVenda.isSelected()); + } Map args = new HashMap(); args.put("relatorio", relatorio); @@ -183,8 +190,7 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { openWindow("/component/reportView.zul", Labels.getLabel("relatorioVendasCartoesController.window.title"), args, MODAL); } - - + public void onClick$btnPesquisa(Event ev) { executarPesquisa(); } @@ -193,7 +199,7 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { HibernateSearchObject tipoPuntoVentaBusqueda = new HibernateSearchObject(TipoPuntoVenta.class, pagingtipoPuntoVenta.getPageSize()); - + tipoPuntoVentaBusqueda.addFilterOr(Filter.like("desctipo", "%" + txtPalavraPesquisa.getText().trim().toUpperCase().concat("%")), Filter.like("desctipo", "%" + txtPalavraPesquisa.getText().trim().toUpperCase().concat("%"))); tipoPuntoVentaBusqueda.addSortAsc("desctipo"); @@ -211,27 +217,26 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { } } } - public void onClick$btnExecutarRelatorio(Event ev) throws Exception{ - executarRelatorio(); - } - - public void onDoubleClick$tipoPuntoVentaList(Event ev) { + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + executarRelatorio(false); + } + + public void onClick$btnExecutarRelatorioAlternativo(Event ev) throws Exception { + executarRelatorio(true); + } + + public void onDoubleClick$tipoPuntoVentaList(Event ev) { TipoPuntoVenta puntoVentaSel = (TipoPuntoVenta) tipoPuntoVentaList.getSelected(); tipoPuntoVentaSelList.addItemNovo(puntoVentaSel); - } - - public void onDoubleClick$tipoPuntoVentaSelList(Event ev) { + public void onDoubleClick$tipoPuntoVentaSelList(Event ev) { TipoPuntoVenta puntoVentaSel = (TipoPuntoVenta) tipoPuntoVentaSelList.getSelected(); tipoPuntoVentaSelList.removeItem(puntoVentaSel); - } - private void limparPesquisaTipoAgencia() { - tipoPuntoVentaList.clearSelection(); lsTipoPuntoVenta.clear(); this.bbPesquisaPuntoVenta.setValue(""); @@ -240,12 +245,11 @@ public class RelatorioVendasCartoesController extends MyGenericForwardComposer { public Datebox getDatInicial() { return dataInicial; } - + public void onClick$btnLimpar(Event ev) { limparPesquisaTipoAgencia(); } - public void setDatInicial(Datebox datInicial) { this.dataInicial = datInicial; } diff --git a/web/gui/relatorios/filtroRelatorioVendasCartoes.zul b/web/gui/relatorios/filtroRelatorioVendasCartoes.zul index 78fe89098..e180dfa3c 100644 --- a/web/gui/relatorios/filtroRelatorioVendasCartoes.zul +++ b/web/gui/relatorios/filtroRelatorioVendasCartoes.zul @@ -124,6 +124,8 @@