From eec408b813f10e84b1f1c34ec18b057d55d60fe7 Mon Sep 17 00:00:00 2001 From: wilian Date: Wed, 11 Apr 2018 14:19:48 +0000 Subject: [PATCH] bug#10801 dev:fabio qua:renato git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@80720 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../impl/RelatorioVendasConexao.java | 190 ++++++++++++ .../RelatorioVendasConexao_es.properties | 19 ++ .../RelatorioVendasConexao_pt_BR.properties | 19 ++ .../templates/RelatorioVendasConexao.jasper | Bin 0 -> 41199 bytes .../templates/RelatorioVendasConexao.jrxml | 271 ++++++++++++++++++ .../RelatorioVendasConexaoBean.java | 62 ++++ .../EditarConexionConfController.java | 4 +- .../EditarConexionController.java | 1 - .../RelatorioVendasConexaoController.java | 115 ++++++++ .../ItemMenuRelatorioVendasConexao.java | 25 ++ .../utilerias/menu/menu_original.properties | 1 + .../render/RenderConexionDescuento.java | 3 + web/WEB-INF/i3-label_es_MX.label | 12 + web/WEB-INF/i3-label_pt_BR.label | 6 +- .../editarConexionConf.zul | 9 + .../filtroRelatorioVendasComissao.zul | 1 + .../filtroRelatorioVendasConexao.zul | 58 ++++ 17 files changed, 793 insertions(+), 3 deletions(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasConexao.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_es.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_pt_BR.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jasper create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jrxml create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioVendasConexaoBean.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioVendasConexaoController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioVendasConexao.java create mode 100644 web/gui/relatorios/filtroRelatorioVendasConexao.zul diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasConexao.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasConexao.java new file mode 100644 index 000000000..ed8963ddd --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasConexao.java @@ -0,0 +1,190 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.apache.log4j.Logger; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioVendasConexaoBean; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +public class RelatorioVendasConexao extends Relatorio { + + private static Logger log = Logger.getLogger(RelatorioVendasConexao.class); + + private List lsDadosRelatorio; + + private Timestamp fecInicio; + private Timestamp fecFinal; + private Integer empresaId; + private Integer puntoventaId; + + public RelatorioVendasConexao(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new DataSource(this) { + + @Override + public void initDados() throws Exception { + Map parametros = this.relatorio.getParametros(); + fecInicio = (Timestamp) parametros.get("dataFiltroInicial"); + fecFinal = (Timestamp) parametros.get("dataFiltroFinal"); + if(parametros.get("EMPRESA_ID")!=null){ + empresaId = Integer.valueOf(parametros.get("EMPRESA_ID").toString()); + } + if(parametros.get("PUNTOVENTA_ID")!=null){ + puntoventaId = Integer.valueOf(parametros.get("PUNTOVENTA_ID").toString()); + } + + Connection conexao = this.relatorio.getConexao(); + processarVendasConexao(conexao); + + setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + } + + }); + } + + private void processarVendasConexao(Connection conexao) { + ResultSet rset = null; + NamedParameterStatement stmt = null; + + try { + + stmt = carregarNamedParameterStatement(conexao); + rset = stmt.executeQuery(); + processarResultado(rset); + fecharConexaoBanco(conexao, stmt, rset); + + } catch (Exception e) { + log.error(e.getMessage(), e); + } + + } + + private void fecharConexaoBanco(Connection conexao, NamedParameterStatement stmt, ResultSet rset) { + try { + if(rset != null && !rset.isClosed()) { + rset.close(); + } + if(stmt != null && !stmt.isClosed()) { + stmt.close(); + } + if(conexao != null && !conexao.isClosed()) { + conexao.close(); + } + } catch (SQLException e) { + log.error(e.getMessage(), e); + } + } + + private void processarResultado(ResultSet rset) throws SQLException { + if(lsDadosRelatorio == null) { + lsDadosRelatorio = new ArrayList(); + } + + while (rset.next()) { + RelatorioVendasConexaoBean bean = new RelatorioVendasConexaoBean(); + bean.setNombpuntoventa(rset.getString("NOMBPUNTOVENTA")); + bean.setNombempresa(rset.getString("NOMBEMPRESA")); + bean.setEmpresaId(rset.getInt("EMPRESA_ID")); + bean.setDescpago(rset.getString("DESCPAGO")); + bean.setImporte(rset.getBigDecimal("IMPORTE")); + bean.setNegate(!bean.getEmpresaId().equals(empresaId)); + + lsDadosRelatorio.add(bean); + } + + } + + private NamedParameterStatement carregarNamedParameterStatement(Connection conexao) throws SQLException { + String sql = getSql(); + log.info(sql); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); + + if(fecInicio != null) { + stmt.setTimestamp("fecInicio", fecInicio); + } + if(fecFinal != null) { + stmt.setTimestamp("fecFinal", fecFinal); + } + if(empresaId != null) { + stmt.setInt("EMPRESA_ID", empresaId); + } + if(puntoventaId != null && puntoventaId > -1) { + stmt.setInt("PUNTOVENTA_ID", puntoventaId); + } + + return stmt; + } + + protected String getSql() { + + StringBuilder sQuery = new StringBuilder(); + sQuery.append("SELECT PV.NOMBPUNTOVENTA, E.NOMBEMPRESA, E.EMPRESA_ID, NVL(CT.NUMTARJETA,FP.DESCPAGO) AS DESCPAGO, CFP.FORMAPAGO_ID, SUM(CFP.IMPORTE) AS IMPORTE ") + .append("FROM CAJA C ") + .append("JOIN CAJA_FORMAPAGO CFP ON CFP.CAJA_ID = C.CAJA_ID ") + .append("LEFT JOIN CAJA_DET_PAGO CDP ON CDP.CAJAFORMAPAGO_ID = CFP.CAJAFORMAPAGO_ID ") + .append("LEFT JOIN CAJA_TARJETA CT ON CT.CAJADETPAGO_ID = CDP.CAJADETPAGO_ID ") + .append("JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = CFP.FORMAPAGO_ID ") + .append("JOIN MARCA M ON C.MARCA_ID = M.MARCA_ID ") + .append("JOIN EMPRESA E ON E.EMPRESA_ID = M.EMPRESA_ID ") + .append("JOIN PUNTO_VENTA PV ON PV.PUNTOVENTA_ID = C.PUNTOVENTA_ID ") + .append("WHERE C.INDCONEXION = 1 ") + .append("AND C.INDREIMPRESION = 0 ") + .append("AND C.TIPOVENTA_ID <> 6 ") + .append("AND C.NUMOPERACION IN ( ") + .append(" SELECT C.NUMOPERACION ") + .append(" FROM CAJA C ") + .append(" JOIN MARCA M ON C.MARCA_ID = M.MARCA_ID ") + .append(" JOIN EMPRESA E ON E.EMPRESA_ID = M.EMPRESA_ID ") + .append(" JOIN PUNTO_VENTA PV ON PV.PUNTOVENTA_ID = C.PUNTOVENTA_ID ") + .append(" WHERE C.INDCONEXION = 1 ") + .append(" AND C.INDREIMPRESION = 0 ") + .append(" AND C.TIPOVENTA_ID <> 6 "); + + if(fecInicio != null) { + sQuery.append("AND NVL(C.FECHORVENTA_H,C.FECHORVENTA) >= :fecInicio "); + } + if(fecFinal != null) { + sQuery.append("AND NVL(C.FECHORVENTA_H,C.FECHORVENTA) <= :fecFinal "); + } + if(empresaId != null) { + sQuery.append("AND E.EMPRESA_ID = :EMPRESA_ID "); + } + if(puntoventaId != null && puntoventaId > -1) { + sQuery.append("AND C.PUNTOVENTA_ID = :PUNTOVENTA_ID "); + } + + sQuery.append(") ") + .append("GROUP BY PV.NOMBPUNTOVENTA, E.NOMBEMPRESA, E.EMPRESA_ID, NVL(CT.NUMTARJETA,FP.DESCPAGO), CFP.FORMAPAGO_ID ") + .append("ORDER BY PV.NOMBPUNTOVENTA, NVL(CT.NUMTARJETA,FP.DESCPAGO)"); + + return sQuery.toString(); + + } + + @Override + protected void processaParametros() throws Exception { + } + + public List getLsDadosRelatorio() { + return lsDadosRelatorio; + } + + @Override + public String getNome() { + return super.getNome(); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_es.properties new file mode 100644 index 000000000..7ec40b885 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_es.properties @@ -0,0 +1,19 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.nome=Relatório Vendas de Conexão +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.usuario=Usuário: +label.nombPuntoVenta=Agência +label.total=Total +label.puntoVenta=Agência: +label.diferenca=Diferença +label.descpago=Forma Pag./Num. Cartão \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_pt_BR.properties new file mode 100644 index 000000000..7ec40b885 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioVendasConexao_pt_BR.properties @@ -0,0 +1,19 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.nome=Relatório Vendas de Conexão +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.usuario=Usuário: +label.nombPuntoVenta=Agência +label.total=Total +label.puntoVenta=Agência: +label.diferenca=Diferença +label.descpago=Forma Pag./Num. Cartão \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jasper new file mode 100644 index 0000000000000000000000000000000000000000..8916fec6565b595280f19981875d7ba7270861c1 GIT binary patch literal 41199 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�mO=l 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 literal 0 HcmV?d00001 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jrxml new file mode 100644 index 000000000..ced6de36f --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioVendasConexao.jrxml @@ -0,0 +1,271 @@ + + + + + +