diff --git a/pom.xml b/pom.xml index d9cac40da..f6d687b0b 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.123.0 + 1.124.0 war 1.95.0 - 1.81.2 + 1.82.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDetalheContrato.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDetalheContrato.java index 631fdf63f..1aa7c8d8f 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDetalheContrato.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDetalheContrato.java @@ -59,21 +59,24 @@ public class RelatorioDetalheContrato extends Relatorio { while (rset.next()) { RelatorioDetalheContratoBean detalhe = new RelatorioDetalheContratoBean(); - detalhe.setBoleto(rset.getObject("contratoId").toString()); + detalhe.setTiquete(rset.getString("contratoId")); detalhe.setDataVenda((Date)rset.getObject("dataVenda")); - detalhe.setDestino(rset.getObject("destino").toString()); - detalhe.setOrigem(rset.getObject("origem").toString()); - detalhe.setEmpresa(rset.getObject("empresa").toString()); - detalhe.setEstado(rset.getObject("estado").toString()); - detalhe.setFatura(rset.getObject("fatura").toString()); - detalhe.setNomePassageiro(rset.getObject("cliente").toString()); - detalhe.setNomeUsuario(rset.getObject("usuario").toString()); + detalhe.setDestino(rset.getString("destino")); + detalhe.setOrigem(rset.getString("origem")); + detalhe.setEmpresa(rset.getString("empresa")); + detalhe.setEstado(rset.getString("estado")); + detalhe.setFatura(rset.getString("fatura")); + detalhe.setNomePassageiro(rset.getString("cliente")); + detalhe.setNomeUsuario(rset.getString("usuario")); detalhe.setPassageiroCod((Long)rset.getObject("clicod")); - detalhe.setPassagem(rset.getObject("passagem").toString()); + detalhe.setPassagem(rset.getString("passagem")); detalhe.setPrecioPagado((BigDecimal)rset.getBigDecimal("valorUnit")); detalhe.setPreco((BigDecimal)rset.getBigDecimal("valorTiquete")); - detalhe.setTipoDoc(rset.getObject("tipoDoc").toString()); - if (detalhe.getTipoDoc().equals("Evento Extra")) { + detalhe.setTipoDoc(rset.getString("tipoDoc")); + detalhe.setClienteId(rset.getLong("clientecorporativo_id")); + detalhe.setNomCliente(rset.getString("nomclientecorp")); + + if (detalhe.getTipoDoc() != null && detalhe.getTipoDoc().equals("Evento Extra")) { valorAdicionado.add(detalhe.getPrecioPagado()); } @@ -116,29 +119,33 @@ public class RelatorioDetalheContrato extends Relatorio { sb.append(" porigen.descparada as origem, "); sb.append(" pdestino.descparada as destino, "); sb.append(" 1 as passagem, "); - sb.append(" c.preciopagado as valorUnit, "); - sb.append(" c.preciobase as valorTiquete, "); + sb.append(" coalesce(c.preciopagado, 0) as valorUnit, "); + sb.append(" coalesce(c.preciobase, 0) as valorTiquete, "); sb.append(" t.nome_transportadora as empresa, "); sb.append(" c.cliente_id as clicod, "); sb.append(" cli.nombcliente cliente, "); - sb.append(" u.nombusuario as usuario "); + sb.append(" u.nombusuario as usuario, "); + sb.append(" clicorp.clientecorporativo_id, "); + sb.append(" clicorp.nomclientecorp "); sb.append("from caixa_contrato cc "); + sb.append("join contrato_corporativo corp on corp.contrato_id = cc.contrato_id "); + sb.append("join cliente_corporativo clicorp on clicorp.clientecorporativo_id = corp.clientecorporativo_id "); sb.append("left join caja c on cc.caja_id = c.caja_id "); sb.append("left join voucher v on v.voucher_id = cc.voucher_id "); sb.append("left join transportadora t on t.transportadora_id = v.transportadora_id "); sb.append("left join evento_extra e on e.eventoextra_id = cc.eventoextra_id "); - sb.append("join cliente cli on cli.cliente_id = c.cliente_id "); - sb.append("join parada porigen on c.origen_id = porigen.parada_id "); - sb.append("join parada pdestino on c.destino_id = pdestino.parada_id "); - sb.append("join usuario u on u.usuario_id = c.usuario_id "); + sb.append("left join cliente cli on cli.cliente_id = c.cliente_id "); + sb.append("left join parada porigen on c.origen_id = porigen.parada_id "); + sb.append("left join parada pdestino on c.destino_id = pdestino.parada_id "); + sb.append("left join usuario u on u.usuario_id = c.usuario_id "); sb.append("where 1 = 1 "); if(dataInicial != null && dataFinal != null){ sb.append(" and c.fechorventa between :dataInicial and :dataFinal "); if (geracao == DataGeracaoLegalizacaoEnum.GERACAO) { - sb.append(" and v.dataGeracao between :dataInicial and :dataFinal "); + sb.append(" and v.data_inclusao between :dataInicial and :dataFinal "); } else { - sb.append(" and v.dataLegalizacao between :dataInicial and :dataFinal "); + sb.append(" and v.data_legaliza between :dataInicial and :dataFinal "); } } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioSaldosDeContratos.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioSaldosDeContratos.java new file mode 100644 index 000000000..748638571 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioSaldosDeContratos.java @@ -0,0 +1,149 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + +import com.rjconsultores.ventaboletos.enums.EstadoBilheteConsultarEnum; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioSaldosContratosBean; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +public class RelatorioSaldosDeContratos extends Relatorio { + + private List lsDadosRelatorio; + + public RelatorioSaldosDeContratos(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new DataSource(this) { + @Override + public void initDados() throws Exception { + + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + + Date dataInicial = (Date) parametros.get("DATA_DE"); + Date dataFinal = (Date) parametros.get("DATA_ATE"); + Integer empresaId = (Integer) parametros.get("EMPRESA_ID"); + String numContrato = parametros.get("NUM_CONTRATO") != null ? parametros.get("NUM_CONTRATO").toString() : null; + Long grupoContratoId = (Long) parametros.get("GRUPOCONTRATO_ID"); + Integer status = (Integer) parametros.get("STATUS"); + + NamedParameterStatement nps = new NamedParameterStatement(conexao, getSql(dataInicial, + dataFinal, empresaId, numContrato, grupoContratoId, status)); + + if(dataInicial != null && dataFinal != null){ + nps.setDate("dataInicial", new java.sql.Date(dataInicial.getTime())); + nps.setDate("dataFinal", new java.sql.Date(dataFinal.getTime())); + } + + if (empresaId != null) { + nps.setLong("clienteId", empresaId); + } + + if (numContrato != null) { + nps.setString("numContrato", numContrato); + } + + if (grupoContratoId != null) { + nps.setLong("grupoContratoId", grupoContratoId); + } + + if (status != null) { + nps.setInt("status", status); + } + + ResultSet rset = nps.executeQuery(); + + List ls = new ArrayList(); + + while (rset.next()) { + + RelatorioSaldosContratosBean saldo = new RelatorioSaldosContratosBean(); + saldo.setAdicional(rset.getBigDecimal("adicao")); + saldo.setDataInicio(rset.getDate("data_inicial")); + saldo.setExecutado(rset.getBigDecimal("executado")); + saldo.setNit(rset.getString("identificacao")); + saldo.setNumContrato(rset.getString("numContrato")); + saldo.setRazaoSocial(rset.getString("nomclientecorp")); + saldo.setValorContrato(rset.getBigDecimal("valor_contrato")); + saldo.setSaldoAtual(saldo.getValorContrato().add(saldo.getAdicional()).subtract(saldo.getExecutado()).abs()); + + + ls.add(saldo); + } + + setLsDadosRelatorio(ls); + } + }); + } + + private String getSql(Date dataInicial, Date dataFinal, Integer empresaId, + String numContrato, Long grupoContratoId, Integer status) { + StringBuilder sb = new StringBuilder(); + sb.append("select "); + sb.append(" cli.identificacao, "); + sb.append(" cli.nomclientecorp, "); + sb.append(" c.numcontrato, "); + sb.append(" c.data_inicial, "); + sb.append(" coalesce(c.valor_contrato,0) as valor_contrato, "); + sb.append(" coalesce((select sum(cc2.valor) "); + sb.append(" from caixa_contrato cc2 "); + sb.append(" where cc2.contrato_id = c.contrato_id "); + sb.append(" and cc2.eventoextra_id is not null), 0) as adicao, "); + sb.append(" sum(cc.valor) as executado "); + sb.append("from contrato_corporativo c "); + sb.append("join caixa_contrato cc on cc.contrato_id = c.contrato_id "); + sb.append("join cliente_corporativo cli on cli.clientecorporativo_id = cli.clientecorporativo_id "); + sb.append("where 1 = 1 "); + + if(dataInicial != null && dataFinal != null){ + sb.append(" and cc.data_lancamento between :dataInicial and :dataFinal "); + } + + if (empresaId != null) { + sb.append(" and c.clientecorporativo_id = :clienteId "); + } + + if (numContrato != null) { + sb.append(" and c.numcontrato in (:numContrato) "); + } + + if (grupoContratoId != null) { + sb.append(" and c.grupocontrato_id = :grupoContratoId "); + } + + if (status != null) { + sb.append(" and c.status_contrato = :status "); + } + + sb.append("group by "); + sb.append(" c.contrato_id, "); + sb.append(" c.numcontrato, "); + sb.append(" cli.nomclientecorp, "); + sb.append(" c.numcontrato, "); + sb.append(" c.data_inicial, "); + sb.append(" c.valor_contrato "); + return sb.toString(); + } + + @Override + protected void processaParametros() throws Exception { + } + + public List getLsDadosRelatorio() { + return lsDadosRelatorio; + } + + public void setLsDadosRelatorio(List lsDadosRelatorio) { + this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + this.lsDadosRelatorio = lsDadosRelatorio; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_en.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_en.properties new file mode 100644 index 000000000..36545d2c1 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_en.properties @@ -0,0 +1,10 @@ +header.titulo.relatorio = CREDITS - CONTRACT BALANCES +label.adicional = Additional +label.contrato = Contract +label.executado = Executed +label.inicio = Start +label.nit = Nit +label.razaoSocial = Company Name +label.saldo = Balance +label.valorContrato = Contract Value +msg.noData = It was not possible to obtain data with the parameters entered. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_es.properties new file mode 100644 index 000000000..9e66f86d8 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_es.properties @@ -0,0 +1,10 @@ +header.titulo.relatorio = CRÉDITOS - SALDOS DE CONTRATO +label.adicional = Adicional +label.contrato = Contrato +label.executado = Ejecutado +label.inicio = Comenzar +label.nit = Nit +label.razaoSocial = Razón Social +label.saldo = Balance +label.valorContrato = Valor del contrato +msg.noData = No fue posible obtener datos con los parámetros ingresados. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_fr.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_fr.properties new file mode 100644 index 000000000..ba495b868 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_fr.properties @@ -0,0 +1,10 @@ +header.titulo.relatorio = CRÉDITS - SOLDES DU CONTRAT +label.adicional = Supplémentaire +label.contrato = Contracter +label.executado = Exécuté +label.inicio = Commencer +label.nit = Nit +label.razaoSocial = Raison d'entreprise +label.saldo = Équilibre +label.valorContrato = Valeur du contrat +msg.noData = Il n'a pas été possible d'obtenir des données avec les paramètres saisis. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_pt_BR.properties new file mode 100644 index 000000000..d890eef15 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioSaldosDeContratos_pt_BR.properties @@ -0,0 +1,12 @@ +#geral +header.titulo.relatorio = CRÉDITOS - SALDOS DE CONTRATOS +label.adicional = Adicional +label.contrato = Contrato +label.executado = Executado +label.inicio = Início +#Labels header +label.nit = Nit +label.razaoSocial = Razão Social +label.saldo = Saldo +label.valorContrato = Valor Contrato +msg.noData = Não foi possivel obter dados com os parâmetros informados. diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jasper index a75f031a4..92c6eca2c 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jrxml index 7797fdada..709f1ddbf 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDetalheContrato.jrxml @@ -16,7 +16,7 @@ - + @@ -31,6 +31,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -314,7 +352,7 @@ - + @@ -325,7 +363,7 @@ - + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jasper new file mode 100644 index 000000000..1031ed7d8 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jrxml new file mode 100644 index 000000000..4dda2b78e --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioSaldosDeContratos.jrxml @@ -0,0 +1,326 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="62" splitType="Stretch"> + <textField> + <reportElement uuid="96572021-01f9-4d05-938c-11ca5721f81c" x="0" y="20" width="149" height="20"/> + <textElement textAlignment="Left"/> + <textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="f6fe1c2b-09af-45e6-9883-f6aa7fe3016c" x="0" y="0" width="1015" height="20"/> + <textElement markup="none"> + <font size="14" isBold="true"/> + </textElement> + <textFieldExpression><![CDATA[$R{header.titulo.relatorio}]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDetalheContratoBean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDetalheContratoBean.java index 09ce958a2..274d6a2cb 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDetalheContratoBean.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDetalheContratoBean.java @@ -3,9 +3,14 @@ package com.rjconsultores.ventaboletos.relatorios.utilitarios; import java.math.BigDecimal; import java.util.Date; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter public class RelatorioDetalheContratoBean { - private String boleto; + private String tiquete; private Date dataVenda; private String tipoDoc; private String fatura; @@ -20,94 +25,7 @@ public class RelatorioDetalheContratoBean { private String nomePassageiro; private Integer legalizado; private String nomeUsuario; - public String getBoleto() { - return boleto; - } - public void setBoleto(String boleto) { - this.boleto = boleto; - } - public Date getDataVenda() { - return dataVenda; - } - public void setDataVenda(Date dataVenda) { - this.dataVenda = dataVenda; - } - public String getTipoDoc() { - return tipoDoc; - } - public void setTipoDoc(String tipoDoc) { - this.tipoDoc = tipoDoc; - } - public String getFatura() { - return fatura; - } - public void setFatura(String fatura) { - this.fatura = fatura; - } - public String getEstado() { - return estado; - } - public void setEstado(String estado) { - this.estado = estado; - } - public String getOrigem() { - return origem; - } - public void setOrigem(String origem) { - this.origem = origem; - } - public String getDestino() { - return destino; - } - public void setDestino(String destino) { - this.destino = destino; - } - public String getPassagem() { - return passagem; - } - public void setPassagem(String passagem) { - this.passagem = passagem; - } - public BigDecimal getPreco() { - return preco; - } - public void setPreco(BigDecimal preco) { - this.preco = preco; - } - public BigDecimal getPrecioPagado() { - return precioPagado; - } - public void setPrecioPagado(BigDecimal precioPagado) { - this.precioPagado = precioPagado; - } - public String getEmpresa() { - return empresa; - } - public void setEmpresa(String empresa) { - this.empresa = empresa; - } - public Long getPassageiroCod() { - return passageiroCod; - } - public void setPassageiroCod(Long passageiroCod) { - this.passageiroCod = passageiroCod; - } - public String getNomePassageiro() { - return nomePassageiro; - } - public void setNomePassageiro(String nomePassageiro) { - this.nomePassageiro = nomePassageiro; - } - public Integer getLegalizado() { - return legalizado; - } - public void setLegalizado(Integer legalizado) { - this.legalizado = legalizado; - } - public String getNomeUsuario() { - return nomeUsuario; - } - public void setNomeUsuario(String nomeUsuario) { - this.nomeUsuario = nomeUsuario; - } + private Long clienteId; + private String nomCliente; + } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioSaldosContratosBean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioSaldosContratosBean.java new file mode 100644 index 000000000..46c924dba --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioSaldosContratosBean.java @@ -0,0 +1,22 @@ +package com.rjconsultores.ventaboletos.relatorios.utilitarios; + +import java.math.BigDecimal; +import java.util.Date; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class RelatorioSaldosContratosBean { + + private String nit; + private String razaoSocial; + private String numContrato; + private Date dataInicio; + private BigDecimal valorContrato; + private BigDecimal adicional; + private BigDecimal executado; + private BigDecimal saldoAtual; + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDetalheContratoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDetalheContratoController.java index 1312f73ef..ce94d90c5 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDetalheContratoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDetalheContratoController.java @@ -21,6 +21,8 @@ import org.zkoss.zul.Radio; import com.rjconsultores.ventaboletos.entidad.ContratoCorporativo; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Parada; +import com.rjconsultores.ventaboletos.enums.DataGeracaoLegalizacaoEnum; +import com.rjconsultores.ventaboletos.enums.EstadoBilheteConsultarEnum; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioCorridas; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioDetalheContrato; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; @@ -58,6 +60,16 @@ public class RelatorioDetalheContratoController extends MyGenericForwardCompose Map parametros = new HashMap(); parametros.put("NUMCONTRATO", txtNumContrato.getValue()); + + if (datInicial.getValue() != null) { + parametros.put("DATA_DE", new java.sql.Date(((java.util.Date) datInicial.getValue()).getTime())); + } + if (datFinal.getValue() != null) { + parametros.put("DATA_ATE", new java.sql.Date(((java.util.Date) datFinal.getValue()).getTime())); + } + parametros.put("GERACAO", rdbCriacao.isChecked() ? DataGeracaoLegalizacaoEnum.GERACAO : DataGeracaoLegalizacaoEnum.LEGALIZACAO); + parametros.put("ESTADO_BILHETES", rdbFaturado.isChecked() ? EstadoBilheteConsultarEnum.FATURADO : rdbNaoFaturado.isChecked() ? EstadoBilheteConsultarEnum.NAO_FATURADO : EstadoBilheteConsultarEnum.TODOS); + Relatorio relatorio = new RelatorioDetalheContrato(parametros, dataSourceRead.getConnection()); Map args = new HashMap(); diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioSaldosContratosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioSaldosContratosController.java new file mode 100644 index 000000000..40878465f --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioSaldosContratosController.java @@ -0,0 +1,111 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Radio; +import org.zkoss.zul.Radiogroup; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.GrupoContrato; +import com.rjconsultores.ventaboletos.enums.EstadoBilheteConsultarEnum; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioSaldosDeContratos; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.GrupoContratoService; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox; + +@Controller("relatorioSaldosContratosController") +@Scope("prototype") +public class RelatorioSaldosContratosController extends MyGenericForwardComposer { + @Autowired + private DataSource dataSourceRead; + @Autowired + private EmpresaService empresaService; + @Autowired + private GrupoContratoService grupoContratoService; + + private Datebox datInicial; + private Datebox datFinal; + private MyTextbox txtNumContrato; + private MyComboboxEmpresa cmbEmpresa; + private MyComboboxEstandar cmbGrupoContrato; + private Radiogroup rdgStatus; + + private List lsEmpresa; + private List lsGrupoContrato; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + lsGrupoContrato = grupoContratoService.obtenerTodos(); + super.doAfterCompose(comp); + + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + + Map parametros = new HashMap(); + parametros.put("NUMCONTRATO", txtNumContrato.getValue()); + + Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem(); + if (cbiEmpresa != null) { + Empresa empresa = (Empresa) cbiEmpresa.getValue(); + parametros.put("EMPRESA_ID", empresa.getEmpresaId()); + } + + Comboitem cbiGrupoContrato = cmbGrupoContrato.getSelectedItem(); + if (cbiGrupoContrato != null) { + GrupoContrato grupo = (GrupoContrato) cbiGrupoContrato.getValue(); + parametros.put("GRUPOCONTRATO_ID", grupo.getGrupoContratoId()); + } + + if (datInicial.getValue() != null) { + parametros.put("DATA_DE", new java.sql.Date(((java.util.Date) datInicial.getValue()).getTime())); + } + + if (datFinal.getValue() != null) { + parametros.put("DATA_ATE", new java.sql.Date(((java.util.Date) datFinal.getValue()).getTime())); + } + parametros.put("STATUS", Integer.valueOf(rdgStatus.getSelectedItem().getValue())); + + + Relatorio relatorio = new RelatorioSaldosDeContratos(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioSaldosContratosController.window.title"), args, MODAL); + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public List getLsGrupoContrato() { + return lsGrupoContrato; + } + + public void setLsGrupoContrato(List lsGrupoContrato) { + this.lsGrupoContrato = lsGrupoContrato; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/negcorporativos/ItemMenuRelatorioSaldosContratos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/negcorporativos/ItemMenuRelatorioSaldosContratos.java new file mode 100644 index 000000000..3f67619c3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/negcorporativos/ItemMenuRelatorioSaldosContratos.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuRelatorioSaldosContratos extends DefaultItemMenuSistema { + + public ItemMenuRelatorioSaldosContratos() { + super("indexController.mniRelatorioSaldosContratos.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.CONFIGURACIONECCOMERCIALES.MENU.RELATORIOSALDOSCONTRATOS"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioSaldosContratos.zul", + Labels.getLabel("relatorioSaldosContratosController.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 df20bf8a7..87f5c02a1 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 @@ -67,6 +67,7 @@ confComerciales.negCorporativos.Contrato=com.rjconsultores.ventaboletos.web.util confComerciales.negCorporativos.Transportadora=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuTransportadora confComerciales.negCorporativos.Voucher=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuVoucher confComerciales.negCorporativos.RelatorioDetalhesContrato=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuRelatorioDetalheContrato +confComerciales.negCorporativos.RelatorioSaldosContratos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuRelatorioSaldosContratos confComerciales.impressaofiscal=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.SubMenuImpressaoFiscal confComerciales.impressaofiscal.totnaofiscalEmpresa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.ItemMenuTotnaofiscalEmpresa confComerciales.impressaofiscal.formapagoEmpresa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.ItemMenuFormapagoEmpresa diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index 398aae361..ac4298356 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -5094,6 +5094,7 @@ editarFechamentoParamgeralController.MSG.empresaNaoInformada = Necessary to info editarFechamentoParamgeralController.MSG.suscribirOK = Cta Cte and Boletoo Closing Configuration saved successfully. # Editar Configuração de Boleto editarFechamentoParamgeralController.window.title = Cta Cte and Boleto Closing Configuration - Edit General Parameter +editarFormAutorizacaoController.MSG.borrarOK = Record deleted successfully. editarFormAutorizacaoController.MSG.borrarPergunta = Do you want to delete this record ? editarFormAutorizacaoController.window.title = Authorization Form editarFormaPagoController.MSG.borrarOK = Payment Method Deleted Successfully. @@ -7946,6 +7947,7 @@ indexController.mniRelatorioResumoLinhas.label = Line Summary indexController.mniRelatorioResumoVendaOrgaoConcedente.label = Sale Summary Report Granting Authority # Retorno Bancario indexController.mniRelatorioRetornoBancario.label = Bank Return +indexController.mniRelatorioSaldosContratos.label = Contract Balances Report indexController.mniRelatorioSap.label = SAP indexController.mniRelatorioSegundaVia.label = Second Copy indexController.mniRelatorioServicoBloqueadoVendaInternet.label = Service Blocked on Internet Sales @@ -8234,6 +8236,7 @@ lb.filtro.linha = Line: lb.filtro.orgaoConcedente = Granting Body: lb.filtro.pdv = Agency: lb.filtro.usuario = User: +# Labels Default lb.id = ID lb.numBpe = BP-e number lb.puntoVentaSelList.codigo = Code @@ -9795,6 +9798,15 @@ relatorioRetornoBancario.MSG.extensaoInvalida = Only files in bank return format relatorioRetornoBancario.fileupload.label = Select File... relatorioRetornoBancario.lbEmpresa.value = Company relatorioRetornoBancario.window.title = Bank Return Processing +relatorioSaldosContratosController.lblDataFinal.value = End Date +relatorioSaldosContratosController.lblDataInicial.value = Start Date +relatorioSaldosContratosController.lblEstadoBilhete.value = Ticket Status +relatorioSaldosContratosController.lblFaturado.value = Invoiced +relatorioSaldosContratosController.lblGrupoContrato.value = Contract Group +relatorioSaldosContratosController.lblNaoFaturado.value = Not Billed +relatorioSaldosContratosController.lblNumContrato.value = Contract Number +relatorioSaldosContratosController.lblTodos.value = All +relatorioSaldosContratosController.window.title = Contract Balances Report relatorioSapController.MGS.alertaArquivoRemessaNaoGerado = Shipment file could not be created, please contact support. relatorioSapController.MGS.alertaCNABSemItens = There are no closing items to send to this company relatorioSapController.MGS.erroIntegraManual = Manual execution of integration with SAP diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index ece7612d8..ffc1669dd 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4164,7 +4164,7 @@ editarContigencia.tabela.motivo = MOTIVO editarContigencia.tabela.status = STATUS editarContigencia.tabela.usuario = USUARIO editarContigencia.window.title = Contingência -editarContratoController.MSG.camposObrigatorios = Es necesario informar los campos: Cliente Corporativo, Grupo de Contrato, Número de Contrato, Fecha de Inicio y Fecha de Fin +editarContratoController.MSG.camposObrigatorios = Es necesario informar los campos: Valor Legalizado, Valor Transportadora, Transportadora editarContratoController.MSG.camposObrigatoriosAdicao = Es necesario informar los campos: Valor, Observación, Operación editarContratoController.MSG.confirmacaoAdicao = Esta acción modificará el saldo del contrato, ¿confirmas la operación? editarContratoController.MSG.contratoExiste = Ya existe un registro con este número de contrato. @@ -4845,7 +4845,7 @@ editarEmpresaEquivalenciaController.cmbEmpresa.value = Empresa editarEmpresaEquivalenciaController.lbEquivalencia.value = Equivalencia # Editar Empresa Equivalencia editarEmpresaEquivalenciaController.window.title = Equivalencia Empresa -editarEmpresaImpostoController.bpe.value = Habilitar BPe\\\\\\\ +editarEmpresaImpostoController.bpe.value = Habilitar BPe editarEmpresaImpostoController.btnApagar.tooltiptext = Eliminar editarEmpresaImpostoController.btnFechar.tooltiptext = Cerrar editarEmpresaImpostoController.btnSalvar.tooltiptext = Guardar @@ -4882,7 +4882,7 @@ editarEmpresaImpostoController.lblJunho.value = Juño editarEmpresaImpostoController.lblMaio.value = Mayo editarEmpresaImpostoController.lblMarco.value = Marzo editarEmpresaImpostoController.lblNovembro.value = Noviembre -editarEmpresaImpostoController.lblOutrasUFBloqueadas.value = Bloqueo de demás UF\\\\\\\ +editarEmpresaImpostoController.lblOutrasUFBloqueadas.value = Bloqueo de demás UF editarEmpresaImpostoController.lblOutrosIsento.value = Tratar otros como isento editarEmpresaImpostoController.lblOutubro.value = Octubre editarEmpresaImpostoController.lblPedagio.value = Peaje @@ -5289,7 +5289,7 @@ editarManutencaoPacoteController.MSG.suscribirOK = Alteración de la Dirección editarManutencaoPacoteController.btnApagar.tooltiptext = Borrar editarManutencaoPacoteController.btnFechar.tooltiptext = Cerrar editarManutencaoPacoteController.btnSalvar.tooltiptext = Guardar dirección Apanhe -editarManutencaoPacoteController.btnVoucher.tooltiptext = Voucher +editarManutencaoPacoteController.btnVoucher.tooltiptext = Bono editarManutencaoPacoteController.lhCep.label = Cep editarManutencaoPacoteController.lhCiudad.label = Ciudad editarManutencaoPacoteController.lhColonia.label = Colonia @@ -6688,7 +6688,7 @@ editarSecretariaController.MSG.necessarioRemoverCupon.value = Existe registro co editarSecretariaController.MSG.pocentaje = Mas de un descuento permitido para rango de pasajes distintos editarSecretariaController.MSG.registroTraslapado = El numero de documento informado se traslapa con otro ya existente editarSecretariaController.MSG.suscribirOK = Secretaria se registró exitosamente -editarSecretariaController.MSG.voucherRodDuplicado.value = Já existe um registro marcado como Voucher Rod con esta forma de pagamento. Só é permitido 1 registro. +editarSecretariaController.MSG.voucherRodDuplicado.value = Já existe um registro marcado como Bono Rod con esta forma de pagamento. Só é permitido 1 registro. editarSecretariaController.MSG.voucherRodSemFormaPago.value = Es necesario elegir una forma de pago cuando el registro está marcado como Voucher Rodoviaria. editarSecretariaController.PrecioDescuento.value = Precio menos descuento por cobrar editarSecretariaController.PrecioTotal.value = Precio total @@ -6720,7 +6720,7 @@ editarSecretariaController.lbSerie.value = Série editarSecretariaController.lbSerieSubserie.value = Validar Série e Subsérie editarSecretariaController.lbSubserie.value = SubSérie editarSecretariaController.lbValidaFolio.value = Validar numero del documento -editarSecretariaController.lbVoucherRod.value = Voucher Rod +editarSecretariaController.lbVoucherRod.value = Bono Rod # Editar Secretaria editarSecretariaController.window.title = Orden de compra - Secretaria editarSecuenciaController.MSG.suscribirOK = Caseta(s) de Peaje registrada(s) existosamente. @@ -7956,6 +7956,7 @@ indexController.mniRelatorioResumoLinhas.label = Reporte resumen de rutas indexController.mniRelatorioResumoVendaOrgaoConcedente.label = Relatorio Resumo Venda Órgao Concedente # Retorno Bancario indexController.mniRelatorioRetornoBancario.label = Retorno Bancário +indexController.mniRelatorioSaldosContratos.label = Informe de saldos de contratos indexController.mniRelatorioSap.label = SAP indexController.mniRelatorioSegundaVia.label = Segunda Via indexController.mniRelatorioServicoBloqueadoVendaInternet.label = Corrida bloqueada en venta internet @@ -7985,7 +7986,7 @@ indexController.mniRelatorioVendasParcelamento.label = Ventas con Parcelamiento indexController.mniRelatorioVendasPercurso.label = Vendas no Percurso indexController.mniRelatorioVendasRequisicao.Detalhado.label = Informe Detallado de Ventas de Requisición (Orden de Servicio) indexController.mniRelatorioVendasRequisicao.label = Relatório Vendas Requisição(Ordem de Serviço) -indexController.mniRelatorioVoucher.label = Voucher +indexController.mniRelatorioVoucher.label = Bono indexController.mniRelatorioVoucherCancelados.label = Voucher Cancelados indexController.mniRelatorioW2I.label = Relatório Seguro W2I indexController.mniRelatorios.label = Reportes @@ -9824,6 +9825,15 @@ relatorioRetornoBancario.MSG.extensaoInvalida = Somente arquivos no formato de r relatorioRetornoBancario.fileupload.label = Selecionar Arquivo... relatorioRetornoBancario.lbEmpresa.value = Empresa relatorioRetornoBancario.window.title = Processamento de Retorno Bancário +relatorioSaldosContratosController.lblDataFinal.value = Fecha de finalización +relatorioSaldosContratosController.lblDataInicial.value = Fecha de inicio +relatorioSaldosContratosController.lblEstadoBilhete.value = Estado del billete +relatorioSaldosContratosController.lblFaturado.value = Facturado +relatorioSaldosContratosController.lblGrupoContrato.value = Grupo de contrato +relatorioSaldosContratosController.lblNaoFaturado.value = No facturado +relatorioSaldosContratosController.lblNumContrato.value = Número de contrato +relatorioSaldosContratosController.lblTodos.value = Todo +relatorioSaldosContratosController.window.title = Informe de saldos de contratos relatorioSapController.MGS.alertaArquivoRemessaNaoGerado = Arquivo de remessa não pôde ser criado, favor entrar em contato com o suporte. relatorioSapController.MGS.alertaCNABSemItens = Não há itens fechamento a enviar para esta empresa relatorioSapController.MGS.erroIntegraManual = Execução manual de integração com SAP diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index 40b599d6f..80d785e3a 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -4158,8 +4158,8 @@ editarContigencia.tabela.motivo = RAISON editarContigencia.tabela.status = STATUT editarContigencia.tabela.usuario = UTILISATEUR editarContigencia.window.title = Contingence -editarContratoController.MSG.camposObrigatorios = Il est nécessaire de renseigner les champs : Client Entreprise, Groupe de Contrat, Numéro de Contrat, Date de Début et Date de Fin -editarContratoController.MSG.camposObrigatoriosAdicao = Il est nécessaire d'informer les champs : Valor, Observation, Opération +editarContratoController.MSG.camposObrigatorios = Il est nécessaire d'informer les champs: Valeur légalisée, Transporteur valeur, Transporteur +editarContratoController.MSG.camposObrigatoriosAdicao = Il est nécessaire d'informer les champs : Valor, Observation, Opération editarContratoController.MSG.contratoExiste = Un enregistrement avec ce numéro de contrat existe déjà. editarContratoController.tab.cliente = Client editarContratoController.tab.config = Paramètres @@ -4685,7 +4685,7 @@ editarEmpresaController.lblInfoSafer.value = Informations sur le certificat editarEmpresaController.lblIntegracoesTipoPassagem.value = Intégrations de types de passage editarEmpresaController.lblMercadoPago.value = Marché Pago editarEmpresaController.lblMerchantId.value = IDmarchand -editarEmpresaController.lblMinutosCancela.value = minutes d'annulation +editarEmpresaController.lblMinutosCancela.value = Procès-verbal d'annulation editarEmpresaController.lblMsgCadastrarPOSMercadoPago.value = PDV enregistré avec succès editarEmpresaController.lblMsgCadastrarStoreMercadoPago.value = Magasin enregistré avec succès editarEmpresaController.lblOrgaoConcedenteIntegracao.value = Organisme concédant @@ -7942,6 +7942,7 @@ indexController.mniRelatorioResumoLinhas.label = Résumé de la ligne indexController.mniRelatorioResumoVendaOrgaoConcedente.label = Rapport sommaire de vente accordant le pouvoir # Retorno Bancario indexController.mniRelatorioRetornoBancario.label = Retour bancaire +indexController.mniRelatorioSaldosContratos.label = Rapport sur les soldes des contrats indexController.mniRelatorioSap.label = SAP indexController.mniRelatorioSegundaVia.label = Deuxième copie indexController.mniRelatorioServicoBloqueadoVendaInternet.label = Service bloqué sur les ventes Internet @@ -9734,7 +9735,7 @@ relatorioRemessaCNAB.exception.ValidacaoRemessaCidadeException = La ville du poi relatorioRemessaCNAB.exception.ValidacaoRemessaConvenioException = Le code de l'accord ne correspond pas au code de la banque \r\nVeuillez contacter le support ! relatorioRemessaCNAB.exception.ValidacaoRemessaEstadoException = L'état du point de vente {0} est hors normes, merci de corriger relatorioRemessaCNAB.exception.ValidacaoRemessaLogradouroException = L'adresse municipale du point de vente {0} est hors norme, merci de la corriger. -relatorioRemessaCNAB.exception.ValidacaoRemessaMontagemCabecalhoException = Une erreur s'est produite lors de l'assemblage de l'en-tête du fichier d'expédition.\r\nVeuillez contacter l'assistance ! +relatorioRemessaCNAB.exception.ValidacaoRemessaMontagemCabecalhoException = Une erreur s'est produite lors de l'assemblage de l'en-tête du fichier d'expédition.\r\nVeuillez contacter l'assistance ! relatorioRemessaCNAB.lbAte.label = jusqu'à relatorioRemessaCNAB.lbDataEmissao.value = Dt. Émission relatorioRemessaCNAB.lbDataVencimento.value = Dt. Maturité @@ -9786,6 +9787,15 @@ relatorioRetornoBancario.MSG.extensaoInvalida = Seuls les fichiers au format ret relatorioRetornoBancario.fileupload.label = Sélectionnez Fichier... relatorioRetornoBancario.lbEmpresa.value = Entreprise relatorioRetornoBancario.window.title = Traitement des retours bancaires +relatorioSaldosContratosController.lblDataFinal.value = Date de fin +relatorioSaldosContratosController.lblDataInicial.value = Date de début +relatorioSaldosContratosController.lblEstadoBilhete.value = Statut du billet +relatorioSaldosContratosController.lblFaturado.value = Facturé +relatorioSaldosContratosController.lblGrupoContrato.value = Groupe contractuel +relatorioSaldosContratosController.lblNaoFaturado.value = Non facturé +relatorioSaldosContratosController.lblNumContrato.value = Numéro de contrat +relatorioSaldosContratosController.lblTodos.value = Tous +relatorioSaldosContratosController.window.title = Rapport sur les soldes des contrats relatorioSapController.MGS.alertaArquivoRemessaNaoGerado = Le fichier d'expédition n'a pas pu être créé, veuillez contacter le support. relatorioSapController.MGS.alertaCNABSemItens = Il n'y a aucun élément de clôture à envoyer à cette société relatorioSapController.MGS.erroIntegraManual = Exécution manuelle de l'intégration avec SAP diff --git a/web/gui/relatorios/filtroRelatorioSaldosContratos.zul b/web/gui/relatorios/filtroRelatorioSaldosContratos.zul new file mode 100644 index 000000000..863844a57 --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioSaldosContratos.zul @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +