fixed bug #7437 - Criado Relatório de Numeração lógica(Posição de caixa analítico)

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@56288 d1611594-4594-4d17-8e1d-87c2c4800839
master
thiago 2016-05-23 22:13:34 +00:00
parent cef1200ad4
commit 1797b7ad14
12 changed files with 980 additions and 0 deletions

View File

@ -0,0 +1,115 @@
/**
*
*/
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.IndStatusBoleto;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
/**
* @author Thiago
*
*/
public class RelatorioPosicaoCaixaAnalitico extends Relatorio {
public RelatorioPosicaoCaixaAnalitico(Map<String, Object> 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<String, Object> parametros = this.relatorio.getParametros();
StringBuilder sql = new StringBuilder();
sql.append(" SELECT ");
sql.append(" C.NUMSERIEPREIMPRESA numSerie, ");
sql.append(" C.NUMFOLIOPREIMPRESO numFolioPreImpreso, ");
sql.append(" C.NUMFOLIOSISTEMA numFolioSistema, ");
sql.append(" DECODE(R.INDSENTIDOIDA,1,'IDA',0,'VOLTA') sentido, ");
sql.append(" TV.DESCTIPOVENTA tipoVenta, ");
sql.append(" C.FECHORVENTA fecHorVenta, ");
sql.append(" C.PRECIOPAGADO precioPagado, ");
sql.append(" C.IMPORTETAXAEMBARQUE importeTaxaEmbarque, ");
sql.append(" C.IMPORTEPEDAGIO importePedagio, ");
sql.append(" C.IMPORTESEGURO importeSeguro ");
sql.append(" FROM ");
sql.append(" caja c ");
sql.append(" JOIN TIPO_VENTA tv ");
sql.append(" ON ");
sql.append(" TV.TIPOVENTA_ID = C.TIPOVENTA_ID ");
sql.append(" JOIN ruta r ");
sql.append(" ON ");
sql.append(" R.RUTA_ID = C.RUTA_ID ");
sql.append(" JOIN marca m ");
sql.append(" ON ");
sql.append(" M.MARCA_ID = C.MARCA_ID ");
sql.append(" WHERE ");
sql.append(" C.FECCORTE BETWEEN :DATA_INICIAL AND :DATA_FINAL ");
if(parametros.get("MARCA_ID") != null){
sql.append(" AND M.EMPRESA_ID = :MARCA_ID ");
}
if (parametros.get("NUMPUNTOVENTA") != null) {
sql.append(" and c.PUNTOVENTA_ID IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")");
}
sql.append(" AND C.ACTIVO = 1 ");
sql.append(" AND C.INDREIMPRESION = 0 ");
sql.append(" AND C.MOTIVOCANCELACION_ID IS NULL ");
sql.append(" ORDER BY ");
sql.append(" C.NUMSERIEPREIMPRESA, ");
sql.append(" C.NUMFOLIOPREIMPRESO, ");
sql.append(" C.NUMFOLIOSISTEMA, ");
sql.append(" DECODE(R.INDSENTIDOIDA,1,'IDA',0,'VOLTA'), ");
sql.append(" TV.DESCTIPOVENTA, ");
sql.append(" C.FECHORVENTA, ");
sql.append(" C.PRECIOPAGADO, ");
sql.append(" C.IMPORTETAXAEMBARQUE, ");
sql.append(" C.IMPORTEPEDAGIO, ");
sql.append(" C.IMPORTESEGURO ");
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql.toString());
if(parametros.get("MARCA_ID") != null){
stmt.setInt("MARCA_ID", Integer.valueOf(parametros.get("MARCA_ID").toString()));
}
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()));
ResultSet rset = stmt.executeQuery();
while (rset.next()) {
Map<String, Object> dataResult = new HashMap<String, Object>();
dataResult.put("numSerie", rset.getString("numSerie"));
dataResult.put("numFolioPreImpreso", rset.getString("numFolioPreImpreso"));
dataResult.put("numFolioSistema", rset.getString("numFolioSistema"));
dataResult.put("sentido", rset.getString("sentido"));
dataResult.put("tipoVenta", rset.getString("tipoVenta"));
dataResult.put("fecHorVenta", rset.getDate("fecHorVenta"));
dataResult.put("precioPagado", rset.getBigDecimal("precioPagado"));
dataResult.put("importeTaxaEmbarque", rset.getBigDecimal("importeTaxaEmbarque"));
dataResult.put("importePedagio", rset.getBigDecimal("importePedagio"));
dataResult.put("importeSeguro", rset.getBigDecimal("importeSeguro"));
this.dados.add(dataResult);
}
}
});
}
@Override
protected void processaParametros() throws Exception {
}
}

View File

@ -0,0 +1,30 @@
#geral
msg.noData=Não foi possivel obter dados com os parâmetros informados.
#Labels cabeçalho
cabecalho.nome=Relatório Vendas para Comissã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:
#Labels relatorio
empresa.label=Empresa:
puntoVenta.label=Agência:
fisico.label=FÍSICO
logico.label=LÓGICO
sentido.label=SENT.
tipoVenta.label=VENDA
fecVenta.label=DATA DE MOV.
fecLanzamiento.label=DATA DE LAN.
tarifa.label=TARIFA
taxaEmbarque.label=TAXA
pedagio.label=PEDAGIO
seguro.label=SEGURO
total.label=TOTAL
totalGeral.label=TOTAL GERAL:
serie.label=SÉRIE

View File

@ -0,0 +1,30 @@
#geral
msg.noData=Não foi possivel obter dados com os parâmetros informados.
#Labels cabeçalho
cabecalho.nome=Relatório Vendas para Comissã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:
#Labels relatorio
empresa.label=Empresa:
puntoVenta.label=Agência:
fisico.label=FÍSICO
logico.label=LÓGICO
sentido.label=SENT.
tipoVenta.label=VENDA
fecVenta.label=DATA DE MOV.
fecLanzamiento.label=DATA DE LAN.
tarifa.label=TARIFA
taxaEmbarque.label=TAXA
pedagio.label=PEDAGIO
seguro.label=SEGURO
total.label=TOTAL
totalGeral.label=TOTAL GERAL:
serie.label=SÉRIE

View File

@ -0,0 +1,344 @@
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="RelatorioPosicaoCaixaAnalitico" pageWidth="595" pageHeight="842" whenNoDataType="NoDataSection" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" resourceBundle="RelatorioPosicaoCaixaAnalitico" uuid="b911a1ae-6fda-4c13-9428-5b873b39e8bc">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="fecInicio" class="java.lang.String"/>
<parameter name="empresa" class="java.lang.String"/>
<parameter name="puntoVenta" class="java.lang.String"/>
<parameter name="fecFinal" class="java.lang.String"/>
<field name="numFolioPreImpreso" class="java.lang.String"/>
<field name="numFolioSistema" class="java.lang.String"/>
<field name="sentido" class="java.lang.String"/>
<field name="tipoVenta" class="java.lang.String"/>
<field name="fecHorVenta" class="java.util.Date"/>
<field name="precioPagado" class="java.math.BigDecimal"/>
<field name="importePedagio" class="java.math.BigDecimal"/>
<field name="importeTaxaEmbarque" class="java.math.BigDecimal"/>
<field name="importeSeguro" class="java.math.BigDecimal"/>
<field name="importeOutros" class="java.math.BigDecimal"/>
<field name="numSerie" class="java.lang.String"/>
<variable name="total" class="java.math.BigDecimal">
<variableExpression><![CDATA[$F{precioPagado}.add($F{importePedagio}).add($F{importeTaxaEmbarque}).add($F{importeSeguro})]]></variableExpression>
</variable>
<variable name="totalGeral" class="java.math.BigDecimal" calculation="Sum">
<variableExpression><![CDATA[$V{total}]]></variableExpression>
</variable>
<group name="Serie">
<groupExpression><![CDATA[$F{numSerie}]]></groupExpression>
<groupHeader>
<band height="20">
<textField isBlankWhenNull="true">
<reportElement uuid="44ff2674-8b2e-48a7-ab14-a2a8417e9eac" positionType="Float" x="0" y="0" width="100" height="20"/>
<textElement>
<font size="7" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{serie.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="d4f59572-ecd5-4116-8bdb-c0292a8d4c12" positionType="Float" x="100" y="0" width="100" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{numSerie}]]></textFieldExpression>
</textField>
</band>
</groupHeader>
</group>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="103" splitType="Stretch">
<textField>
<reportElement uuid="0fbfd2e2-c536-40d4-9991-7c220a916a94" x="0" y="41" width="316" height="20"/>
<textElement>
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.periodo} + " " + $P{fecInicio} + " " + $R{cabecalho.periodoA} + " " + $P{fecFinal}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="bea0c3f3-035e-4be8-9983-8920c73a1947" x="53" y="62" width="263" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$P{empresa}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="8a035cb9-84a7-43ea-85b9-963d50bf2b77" x="0" y="21" width="316" height="20"/>
<textElement markup="none">
<font size="14" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.nome}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="54cfabe9-f8d6-4a9e-beef-46d91d4adf1a" x="0" y="62" width="53" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$R{empresa.label}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="bbc260a6-ce45-4ced-8b20-2b6a9f2990c9" x="0" y="82" width="53" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$R{puntoVenta.label}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="42686c90-bfc5-469a-b81c-4e67d4bbb65f" x="53" y="82" width="263" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$P{puntoVenta}]]></textFieldExpression>
</textField>
<textField evaluationTime="Report" isBlankWhenNull="true">
<reportElement uuid="5c46feb2-d147-4c48-9102-233323a255af" x="515" y="0" width="40" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.FALSE: Boolean.TRUE]]></printWhenExpression>
</reportElement>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="43151e61-6111-4384-9495-4d2065cbbe33" x="450" y="0" width="65" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.FALSE: Boolean.TRUE]]></printWhenExpression>
</reportElement>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.pagina} +" "+$V{PAGE_NUMBER}+" "+$R{cabecalho.de}]]></textFieldExpression>
</textField>
<textField pattern="dd/MM/yyyy HH:mm">
<reportElement uuid="9486c809-433a-43a9-8181-68e49e0fafbd" x="271" y="0" width="164" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.FALSE: Boolean.TRUE]]></printWhenExpression>
</reportElement>
<textElement textAlignment="Right">
<font size="7" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
</textField>
<line>
<reportElement uuid="40d18495-6c4b-402f-8252-32cf40350d93" x="0" y="21" width="555" height="1"/>
</line>
</band>
</title>
<pageHeader>
<band height="20" splitType="Stretch">
<textField evaluationTime="Report" isBlankWhenNull="true">
<reportElement uuid="483a8b5a-d8c2-4033-b4f2-cd71e4f46a87" x="515" y="0" width="40" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.TRUE: Boolean.FALSE]]></printWhenExpression>
</reportElement>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="be61ddbb-5963-41c6-b244-10e697f48261" x="450" y="0" width="65" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.TRUE: Boolean.FALSE]]></printWhenExpression>
</reportElement>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.pagina} +" "+$V{PAGE_NUMBER}+" "+$R{cabecalho.de}]]></textFieldExpression>
</textField>
<textField pattern="dd/MM/yyyy HH:mm">
<reportElement uuid="79d73318-de72-4ced-af48-ca1ae82c7b37" x="271" y="0" width="164" height="20">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.TRUE: Boolean.FALSE]]></printWhenExpression>
</reportElement>
<textElement textAlignment="Right">
<font size="7" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
</textField>
<line>
<reportElement uuid="c77f86f5-82c1-4cdc-9e3e-5668be8b7cf9" x="0" y="19" width="555" height="1">
<printWhenExpression><![CDATA[$V{PAGE_NUMBER}.intValue() > 1 ? Boolean.TRUE: Boolean.FALSE]]></printWhenExpression>
</reportElement>
</line>
</band>
</pageHeader>
<columnHeader>
<band height="20" splitType="Stretch">
<textField isBlankWhenNull="true">
<reportElement uuid="acb6f26a-054a-484d-bb1d-049fe9d66007" positionType="Float" x="0" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{fisico.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="a27f05b8-93b5-4d88-9219-a69297d3a6c4" positionType="Float" x="50" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{logico.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="3358e9d6-1ac2-479e-aac0-d47f2249f74d" positionType="Float" x="100" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{sentido.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="763a9433-ae37-4314-955c-da2f6b942073" positionType="Float" x="150" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{tipoVenta.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="6e920193-c007-4a76-b3e3-4ae7dcd4c158" positionType="Float" x="200" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{fecVenta.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="b0b79a5e-9645-4f1e-88a1-a44ea114d5d8" positionType="Float" x="250" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{fecLanzamiento.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="39503240-5301-4d37-a82b-6b514b4bc995" positionType="Float" x="300" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{tarifa.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="f0dafe4c-0c84-4315-8172-6ebeb6b47d8c" positionType="Float" x="350" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{taxaEmbarque.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="2bcf74f7-1a20-4ee8-b62d-e2adebeab8ba" positionType="Float" x="400" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{pedagio.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="c516cc3a-5e96-4367-bcad-ed39e4522f0e" positionType="Float" x="450" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{seguro.label}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="e9afb308-8946-49a4-97ae-883072d5adba" positionType="Float" x="500" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{total.label}]]></textFieldExpression>
</textField>
</band>
</columnHeader>
<detail>
<band height="20" splitType="Stretch">
<textField isBlankWhenNull="true">
<reportElement uuid="96fe8f66-d025-4575-82f4-fe4bd28d7e43" positionType="Float" x="0" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{numFolioPreImpreso}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="dcd67949-911f-43c4-b382-895c68ff8761" positionType="Float" x="50" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{numFolioSistema}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="5d54b38a-d3f6-487b-8f9e-45a614c7c360" positionType="Float" x="100" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{sentido}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="9cabff3d-f0c3-485c-a328-4d02080b6962" positionType="Float" x="150" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{tipoVenta}]]></textFieldExpression>
</textField>
<textField pattern="dd/MM/yyyy" isBlankWhenNull="true">
<reportElement uuid="e08bcbc5-d31f-432b-b415-44953d19aa50" positionType="Float" x="200" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{fecHorVenta}]]></textFieldExpression>
</textField>
<textField pattern="dd/MM/yyyy" isBlankWhenNull="true">
<reportElement uuid="54938a3d-a159-47c0-bd90-8458a3e073ad" positionType="Float" x="250" y="0" width="50" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{fecHorVenta}]]></textFieldExpression>
</textField>
<textField pattern="###0.00" isBlankWhenNull="true">
<reportElement uuid="7556807f-a0be-4d07-b8bf-c058c63ee309" positionType="Float" x="300" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{precioPagado}]]></textFieldExpression>
</textField>
<textField pattern="###0.00" isBlankWhenNull="true">
<reportElement uuid="2d0685ef-9384-4d4f-9bc5-780d17758e73" positionType="Float" x="350" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{importeTaxaEmbarque}]]></textFieldExpression>
</textField>
<textField pattern="###0.00" isBlankWhenNull="true">
<reportElement uuid="931051ee-8a01-4889-b3f5-46c0761ba3a5" positionType="Float" x="400" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{importePedagio}]]></textFieldExpression>
</textField>
<textField pattern="###0.00" isBlankWhenNull="true">
<reportElement uuid="df755858-5320-4559-aaea-19e33ea65e14" positionType="Float" x="450" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$F{importeSeguro}]]></textFieldExpression>
</textField>
<textField pattern="###0.00" isBlankWhenNull="true">
<reportElement uuid="955fd0d9-5f35-46e4-be15-b036364a336f" positionType="Float" x="500" y="0" width="50" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$V{total}]]></textFieldExpression>
</textField>
</band>
</detail>
<summary>
<band height="42" splitType="Stretch">
<textField pattern="###0.00">
<reportElement uuid="4519c2ac-c38a-42d2-ac77-3a65a0af4d77" positionType="Float" x="455" y="10" width="100" height="20"/>
<textElement textAlignment="Right">
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$V{totalGeral}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="78e5c1d5-2431-40f0-9b31-0d4cff5b24f0" positionType="Float" x="400" y="10" width="55" height="20"/>
<textElement>
<font size="7"/>
</textElement>
<textFieldExpression><![CDATA[$R{totalGeral.label}]]></textFieldExpression>
</textField>
</band>
</summary>
<noData>
<band height="20">
<textField>
<reportElement uuid="1f1f7201-b3cc-4ff4-8db1-fd9b547ecf21" x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$R{msg.noData}]]></textFieldExpression>
</textField>
</band>
</noData>
</jasperReport>

View File

@ -0,0 +1,202 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
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.Bandbox;
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.impl.RelatorioPosicaoCaixaAnalitico;
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.RenderRelatorioPosicaoCaixaAnalitico;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRelatorioVendasBilheteiroSelecionados;
@Controller("relatorioPosicaoCaixaAnaliticoController")
@Scope("prototype")
public class RelatorioPosicaoCaixaAnaliticoController extends MyGenericForwardComposer {
/**
*
*/
private static final long serialVersionUID = 1L;
@Autowired
private DataSource dataSourceRead;
@Autowired
private EmpresaService empresaService;
private Datebox datInicial;
private Datebox datFinal;
private MyComboboxEstandar cmbEmpresa;
private List<Empresa> lsEmpresa;
@Autowired
private transient PagedListWrapper<PuntoVenta> plwPuntoVenta;
private MyTextbox txtNombrePuntoVenta;
private Bandbox bbPesquisaPuntoVenta;
private MyListbox puntoVentaList;
private MyListbox puntoVentaSelList;
private Paging pagingPuntoVenta;
@Override
public void doAfterCompose(Component comp) throws Exception {
setLsEmpresa(empresaService.obtenerTodos());
super.doAfterCompose(comp);
puntoVentaList.setItemRenderer(new RenderRelatorioPosicaoCaixaAnalitico());
puntoVentaSelList.setItemRenderer(new RenderRelatorioVendasBilheteiroSelecionados());
}
public void onClick$btnExecutarRelatorio(Event ev) throws Exception {
executarRelatorio();
}
private void executarPesquisa() {
HibernateSearchObject<PuntoVenta> puntoVentaBusqueda =
new HibernateSearchObject<PuntoVenta>(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("relatorioPosicaoCaixaAnaliticoController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
} catch (InterruptedException ex) {
ex.printStackTrace();
}
}
}
public void onClick$btnPesquisa(Event ev) {
executarPesquisa();
}
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);
}
public void onClick$btnLimpar(Event ev) {
puntoVentaList.setData(new ArrayList<PuntoVenta>());
bbPesquisaPuntoVenta.setText("");
}
/**
* @throws Exception
*
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
private void executarRelatorio() throws Exception {
Relatorio relatorio;
Map<String, Object> parametros = new HashMap<String, Object>();
StringBuilder filtro = new StringBuilder();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
Date dataDe = datInicial.getValue();
Date dataAte = datFinal.getValue();
String puntoVentaIds = "";
String puntoVentas = "";
List<PuntoVenta> lsPuntoVentaSelecionados = new ArrayList(Arrays.asList(puntoVentaSelList.getData()));
if (lsPuntoVentaSelecionados.isEmpty()) {
puntoVentas = "Todas";
} else {
for (int i = 0; i < lsPuntoVentaSelecionados.size(); i++) {
PuntoVenta puntoVenta = lsPuntoVentaSelecionados.get(i);
puntoVentas = puntoVentas + puntoVenta.getNombpuntoventa() + ",";
puntoVentaIds = puntoVentaIds + puntoVenta.getPuntoventaId() + ",";
}
// removendo ultima virgula
puntoVentaIds = puntoVentaIds.substring(0, puntoVentaIds.length() - 1);
puntoVentas = puntoVentas.substring(0, puntoVentas.length() - 1);
parametros.put("NUMPUNTOVENTA", puntoVentaIds);
}
filtro.append(puntoVentas).append(";");
parametros.put("puntoVenta", filtro.toString());
parametros.put("DATA_INICIAL", (java.util.Date) this.datInicial.getValue());
parametros.put("fecInicio", sdf.format(dataDe));
parametros.put("fecFinal", sdf.format(dataAte));
parametros.put("DATA_FINAL", (java.util.Date) this.datFinal.getValue());
parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioPosicaoCaixaAnaliticoController.window.title"));
parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString());
filtro.append(" Empresa: ");
Comboitem itemEmpresa = cmbEmpresa.getSelectedItem();
if (itemEmpresa != null) {
Empresa empresa = (Empresa) itemEmpresa.getValue();
parametros.put("MARCA_ID", empresa.getEmpresaId());
parametros.put("empresa", empresa.getNombempresa());
} else {
parametros.put("empresa", "Todas;");
}
parametros.put("FILTROS", filtro.toString());
relatorio = new RelatorioPosicaoCaixaAnalitico(parametros, dataSourceRead.getConnection());
Map args = new HashMap();
args.put("relatorio", relatorio);
openWindow("/component/reportView.zul",
Labels.getLabel("relatorioPosicaoCaixaAnaliticoController.window.title"), args, MODAL);
}
/**
* @return the lsEmpresa
*/
public List<Empresa> getLsEmpresa() {
return lsEmpresa;
}
/**
* @param lsEmpresa the lsEmpresa to set
*/
public void setLsEmpresa(List<Empresa> lsEmpresa) {
this.lsEmpresa = lsEmpresa;
}
}

View File

@ -0,0 +1,32 @@
/**
*
*/
package com.rjconsultores.ventaboletos.web.utilerias.menu.item.contacorrente;
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 ItemMenuRelatorioPosicaoCaixaAnalitico extends DefaultItemMenuSistema {
public ItemMenuRelatorioPosicaoCaixaAnalitico() {
super("indexController.mniRelatorioPosicaoCaixaAnalitico.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIODEPOSITOS"/*"COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOPOSICAOCAIXAANALITICO"*/;
}
@Override
public void ejecutar() {
PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioPosicaoCaixaAnalitico.zul",
Labels.getLabel("indexController.mniRelatorioPosicaoCaixaAnalitico.label"), getArgs() ,desktop);
}
}

View File

@ -0,0 +1,43 @@
/**
*
*/
package com.rjconsultores.ventaboletos.web.utilerias.render;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
/**
* @author Thiago
*
*/
public class RenderRelatorioPosicaoCaixaAnalitico implements ListitemRenderer {
@Override
public void render(Listitem lstm, Object o) throws Exception {
PuntoVenta puntoVenta = (PuntoVenta) o;
Listcell lc = new Listcell(puntoVenta.getNombpuntoventa());
lc.setParent(lstm);
Empresa empresa = puntoVenta.getEmpresa();
if (empresa != null) {
lc = new Listcell(empresa.getNombempresa());
} else {
lc = new Listcell("");
}
lc.setParent(lstm);
lc = new Listcell(puntoVenta.getNumPuntoVenta());
lc.setParent(lstm);
lstm.setAttribute("data", puntoVenta);
}
}

View File

@ -0,0 +1,54 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zul.Button;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
public class RenderRelatorioPosicaoCaixaAnaliticoSelecionado implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
PuntoVenta puntoVenta = (PuntoVenta) o;
Listcell lc = new Listcell(puntoVenta.getNombpuntoventa());
lc.setParent(lstm);
Empresa empresa = puntoVenta.getEmpresa();
if (empresa != null) {
lc = new Listcell(empresa.getNombempresa());
} else {
lc = new Listcell("");
}
lc.setParent(lstm);
lc = new Listcell(puntoVenta.getNumPuntoVenta());
lc.setParent(lstm);
Button btn = new Button();
lc = new Listcell();
lc.setParent(lstm);
btn.setWidth("16");
btn.setHeight("16");
btn.setImage("/gui/img/remove.png");
btn.addEventListener("onClick", new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
MyListbox listBox = (MyListbox) event.getTarget().getParent().getParent().getParent();
Listitem listItem = (Listitem) event.getTarget().getParent().getParent();
listBox.removeItem((PuntoVenta) listItem.getAttribute("data"));
}
});
lc.appendChild(btn);
lstm.setAttribute("data", puntoVenta);
}
}

View File

@ -300,6 +300,14 @@ indexController.mniRelatorioDescontos.label = Reporte Descuentos
indexController.mniRelatorioDepositos.label=Cierre Cnt Contábil / Depósitos
indexController.mniRelatorioDepositosDetalhados.label=Depósitos Detallados
indexController.mniRelatorioPosicaoCaixaAnalitico.label=Relatório de Numeração Lógica
relatorioPosicaoCaixaAnaliticoController.lbPuntoVenta.value=Punto de Venta
relatorioPosicaoCaixaAnaliticoController.lbEmpresa.value=Empresa
relatorioPosicaoCaixaAnaliticoController.lbNumero.value=Número punto de venta
relatorioPosicaoCaixaAnaliticoController.lbDatInicial.value=Fecha Inicio
relatorioPosicaoCaixaAnaliticoController.lbDatFinal.value=Fecha Fin
relatorioPosicaoCaixaAnaliticoController.window.title=Relatório de Numeração Lógica
indexController.mniRelatorioGratuidadeIdosoDeficiente.label = Relatório Gratuidade Idoso/Deficiente
#PARTE REALIZADA POR MANUEL
@ -742,6 +750,7 @@ editarCategoriaController.btnApagar.tooltiptext = Eliminar
editarCategoriaController.btnSalvar.tooltiptext = Guardar
editarCategoriaController.btnFechar.tooltiptext = Cerrar
editarCategoriaController.lbNome.value = Descripción
editarCategoriaController.lbDescImpresionGratuidade.value=Descripción Impresión Gratuidad
editarCategoriaController.lbGrupoCategoria.value=Grupo categoria
editarCategoriaController.MSG.suscribirOK = Tipo de pasaje se registró exitosamente
editarCategoriaController.MSG.borrarPergunta = Deseas eliminar este tipo de pasaje?

View File

@ -305,6 +305,14 @@ indexController.mniRelatorioDescontos.label = Relatório Descontos
indexController.mniRelatorioDepositos.label=Fechamento Cnt Corrente / Depósitos
indexController.mniRelatorioDepositosDetalhados.label=Depósitos Detalhados
indexController.mniRelatorioPosicaoCaixaAnalitico.label=Relatório de Numeração Lógica
relatorioPosicaoCaixaAnaliticoController.lbPuntoVenta.value=Punto de Venta
relatorioPosicaoCaixaAnaliticoController.lbEmpresa.value=Empresa
relatorioPosicaoCaixaAnaliticoController.lbNumero.value=Número punto de venta
relatorioPosicaoCaixaAnaliticoController.lbDatInicial.value=Fecha Inicio
relatorioPosicaoCaixaAnaliticoController.lbDatFinal.value=Fecha Fin
relatorioPosicaoCaixaAnaliticoController.window.title=Relatório de Numeração Lógica
#PARTE REALIZADA POR MANUEL
indexController.mnCortesias.label = Cortesias Para Funcionários
indexController.mniTipoCortesiaD.label = Desconto por Tipo de Cortesia
@ -771,6 +779,7 @@ editarCategoriaController.btnSalvar.tooltiptext = Salvar
editarCategoriaController.btnFechar.tooltiptext = Fechar
editarCategoriaController.lbNome.value = Descrição
editarCategoriaController.lbGrupoCategoria.value=Grupo Categoria
editarCategoriaController.lbDescImpresionGratuidade.value=Descrição Impressão Gratuidade
editarCategoriaController.MSG.suscribirOK = Tipo de Passagem Registrado com Sucesso.
editarCategoriaController.MSG.borrarPergunta = Deseja Eliminar este tipo de passagem?
editarCategoriaController.MSG.borrarOK = Tipo de Passagem Excluido com Sucesso.

View File

@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<?page contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="winFiltroRelatorioPosicaoCaixaAnalitico"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winFiltroRelatorioPosicaoCaixaAnalitico"
apply="${relatorioPosicaoCaixaAnaliticoController}"
contentStyle="overflow:auto" height="320px" width="550px"
border="normal">
<grid fixedLayout="true">
<columns>
<column width="20%"/>
<column width="30%"/>
<column width="20%"/>
<column width="30%"/>
</columns>
<rows>
<row>
<label
value="${c:l('relatorioPosicaoCaixaAnaliticoController.lbDatInicial.value')}" />
<datebox id="datInicial" width="90%"
format="dd/MM/yyyy" lenient="true" constraint="no empty"
maxlength="10" />
<label
value="${c:l('relatorioPosicaoCaixaAnaliticoController.lbDatFinal.value')}" />
<datebox id="datFinal" width="90%"
format="dd/MM/yyyy" lenient="true" constraint="no empty"
maxlength="10" />
</row>
</rows>
</grid>
<grid fixedLayout="true">
<columns>
<column width="20%"/>
<column width="80%"/>
</columns>
<rows>
<row spans="1,1,2">
<label
value="${c:l('relatorioPosicaoCaixaAnaliticoController.lbEmpresa.value')}" />
<combobox id="cmbEmpresa"
buttonVisible="true" constraint="no empty"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winFiltroRelatorioPosicaoCaixaAnalitico$composer.lsEmpresa}"
width="95%" />
</row>
<row spans="1,3">
<label
value="Agencia" />
<bandbox id="bbPesquisaPuntoVenta" width="100%"
mold="rounded" readonly="true">
<bandpopup>
<vbox>
<hbox>
<label
value="${c:l('relatorioPosicaoCaixaAnaliticoController.lbPuntoVenta.value')}" />
<textbox id="txtNombrePuntoVenta"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox"
width="300px" mold="rounded" />
<button id="btnPesquisa"
image="/gui/img/find.png"
label="${c:l('relatorioLinhaOperacionalController.btnPesquisa.label')}" />
<button id="btnLimpar"
image="/gui/img/eraser.png"
label="${c:l('relatorioLinhaOperacionalController.btnLimpar.label')}" />
</hbox>
<paging id="pagingPuntoVenta"
pageSize="10" />
<listbox id="puntoVentaList"
mold="paging"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
vflex="true" height="100%" width="700px">
<listhead>
<listheader
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbPuntoVenta.value')}" />
<listheader width="35%"
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbEmpresa.value')}" />
<listheader width="20%"
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbNumero.value')}" />
</listhead>
</listbox>
</vbox>
</bandpopup>
</bandbox>
</row>
<row spans="4">
<listbox id="puntoVentaSelList" mold="paging"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
vflex="true" height="100px" width="100%">
<listhead>
<listheader
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbPuntoVenta.value')}" />
<listheader width="35%"
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbEmpresa.value')}" />
<listheader width="20%"
label="${c:l('relatorioPosicaoCaixaAnaliticoController.lbNumero.value')}" />
<listheader width="5%" />
</listhead>
</listbox>
<paging id="pagingSelPuntoVenta" pageSize="10" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnExecutarRelatorio" image="/gui/img/find.png"
label="${c:l('relatorio.lb.btnExecutarRelatorio')}" />
</toolbar>
</window>
</zk>