bug#22299

dev: GLEIMAR
qua: 

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@107919 d1611594-4594-4d17-8e1d-87c2c4800839
master
celio 2021-07-20 02:06:09 +00:00
parent 6bac350e7e
commit 6f64b6be29
10 changed files with 1374 additions and 0 deletions

View File

@ -0,0 +1,203 @@
package com.rjconsultores.ventaboletos.relatorios.impl;
import java.math.BigDecimal;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioMensalDAERBean;
import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
public class RelatorioMensalDAER extends Relatorio {
private List<RelatorioMensalDAERBean> lsDadosRelatorio;
private static Logger log = Logger.getLogger(RelatorioMensalDAER.class);
/**
* @param parametros
* @param conexao
*/
public RelatorioMensalDAER(final Map<String, Object> parametros, final Connection conexao) throws Exception {
super(parametros, conexao);
this.setCustomDataSource(new DataSource(this) {
@Override
public void initDados() throws Exception {
try {
String agencia = parametros.get("AGENCIA") != null ? parametros.get("AGENCIA").toString() : null;
Empresa empresa = parametros.get("EMPRESA") != null ? (Empresa) (parametros.get("EMPRESA")) : null;
// Executa query relatório e preenche objeto relatório
lsDadosRelatorio = preencheAgrupaRelatorioBean(preparaExecutaQuery(parametros, conexao, empresa, agencia));
parametros.put("RELATORIOLIST", lsDadosRelatorio);
setLsDadosRelatorio(lsDadosRelatorio);
} catch (Exception e) {
log.error("Erro ao executar relatório", e);
}
}
/**
* @param parametros
* @param conexao
* @param agencia
* @param empresa
* @return
* @throws SQLException
*/
private ResultSet preparaExecutaQuery(Map<String, Object> parametros, Connection conexao, Empresa empresa, String agencia) throws SQLException {
String sql = getSql();
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
ResultSet rset = null;
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
if (parametros.get("DATA_INICIO") != null) {
Date dataInicio = (Date) parametros.get("DATA_INICIO");
stmt.setString("DATA_INICIO", sdf.format(dataInicio));
}
if (parametros.get("DATA_FINAL") != null) {
Date dataFinal = (Date) parametros.get("DATA_FINAL");
stmt.setString("DATA_FINAL", sdf.format(dataFinal));
}
stmt.setInt("EMPRESA", empresa.getEmpresaId());
stmt.setString("AGENCIA", agencia);
rset = stmt.executeQuery();
return rset;
}
});
}
/**
* @param lsDadosRelatorio
*/
protected void setLsDadosRelatorio(List<RelatorioMensalDAERBean> lsDadosRelatorio) {
this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio));
this.lsDadosRelatorio = lsDadosRelatorio;
}
protected List<RelatorioMensalDAERBean> preencheAgrupaRelatorioBean(ResultSet rset) throws SQLException {
lsDadosRelatorio = new ArrayList<RelatorioMensalDAERBean>();
Integer qtBilhetes=null;
while (rset.next()) {
RelatorioMensalDAERBean relatorioMensalDAER = new RelatorioMensalDAERBean(rset.getInt("corrida_id"));
qtBilhetes = rset.getInt("qtdbilhetes");
if (!lsDadosRelatorio.contains(relatorioMensalDAER) && !qtBilhetes.equals(0)) {
String sentido = rset.getString("sentidoida").equals("0") ? "1" : "2";
float manifbilhetes = rset.getFloat("manifbilhetes");
BigDecimal comissaoDAER = BigDecimal.valueOf(manifbilhetes * (11.0f / 100.0f));
float comissao = comissaoDAER.floatValue();
BigDecimal taxaFiscal = BigDecimal.valueOf(comissao * (3.0f / 100.0f));
relatorioMensalDAER.setFecHorSalida(retornaHora(rset.getTimestamp("partida"),true));
relatorioMensalDAER.setFecMinSalida(retornaHora(rset.getTimestamp("partida"),false));
relatorioMensalDAER.setFecHorInicio(retornaHora(rset.getTimestamp("inicio"),true));
relatorioMensalDAER.setFecMinInicio(retornaHora(rset.getTimestamp("inicio"),false));
relatorioMensalDAER.setFecCorrida(rset.getDate("feccorrida"));
relatorioMensalDAER.setIndSentidoIda(sentido);
relatorioMensalDAER.setNumRuta(rset.getString("linha"));
relatorioMensalDAER.setModal(rset.getString("modal"));
relatorioMensalDAER.setCatVeiculo(rset.getString("catVeiculo"));
relatorioMensalDAER.setCodDER(rset.getInt("codemp"));
relatorioMensalDAER.setQtdServNormal(rset.getInt("normal"));
relatorioMensalDAER.setQtdServExtra(rset.getInt("extra"));
relatorioMensalDAER.setQtdBilhetes(rset.getInt("qtdbilhetes"));
relatorioMensalDAER.setManifBilhetes(rset.getBigDecimal("manifbilhetes"));
relatorioMensalDAER.setEncomendas(null);
relatorioMensalDAER.setComissaoPassagem(comissaoDAER);
relatorioMensalDAER.setTaxaFiscalizacao(taxaFiscal);
relatorioMensalDAER.setTaxaManutencao(rset.getBigDecimal("embarque"));
lsDadosRelatorio.add(relatorioMensalDAER);
}
}
return lsDadosRelatorio;
}
protected String getSql() {
StringBuilder sql = new StringBuilder();
sql.append("SELECT ");
sql.append("( case when ct.numsecuencia = 1 then null ");
sql.append(" else (SELECT cot.fechorsalida FROM corrida cot ");
sql.append(" INNER JOIN corrida_tramo ctt ON ( cot.corrida_id = ctt.corrida_id AND cot.feccorrida = ctt.feccorrida AND ctt.activo = 1 ) ");
sql.append(" where cot.feccorrida = co.feccorrida and cot.corrida_id = co.corrida_id and ctt.numsecuencia = 1) END ) AS inicio, ");
sql.append(" ct.fechorsalida AS partida, ");
sql.append(" co.feccorrida, ");
sql.append(" co.corrida_id, ");
sql.append(" ct.numsecuencia, ");
sql.append(" rut.indsentidoida AS sentidoida, ");
sql.append(" rut.numruta AS linha, ");
sql.append(" cs.claseservicio_id AS modal, ");
sql.append(" ' ' as catVeiculo, ");
sql.append(" e.codder AS codemp, ");
sql.append(" ( SELECT COUNT(cn.corrida_id) FROM corrida cn WHERE cn.corrida_id = co.corrida_id AND cn.tiposervicio_id = 1 ");
sql.append(" AND cn.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) as normal, ");
sql.append(" ( SELECT COUNT(ce.corrida_id) FROM corrida ce WHERE ce.corrida_id = co.corrida_id AND ce.tiposervicio_id = 2 ");
sql.append(" AND ce.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) as extra, ");
sql.append(" ( SELECT COUNT(caja_id) FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id ");
sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS qtdbilhetes, ");
sql.append(" ( SELECT SUM(caja.preciobase+caja.importeseguro)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id ");
sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS manifbilhetes, ");
sql.append(" ( SELECT SUM(caja.importetaxaembarque)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id ");
sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS embarque, ");
sql.append(" ' ' as encomendas ");
sql.append("FROM corrida co");
sql.append(" INNER JOIN empresa e ON ( e.empresa_id = co.empresacorrida_id) ");
sql.append(" INNER JOIN tipo_servicio ts ON ( ts.tiposervicio_id = co.tiposervicio_id) ");
sql.append(" INNER JOIN corrida_tramo ct ON ( co.corrida_id = ct.corrida_id AND co.feccorrida = ct.feccorrida AND ct.activo = 1 ) ");
sql.append(" INNER JOIN ruta rut ON ( rut.ruta_id = co.ruta_id AND rut.activo = 1 ) ");
sql.append(" INNER JOIN ORGAO_CONCEDENTE oc ON (rut.ORGAOCONCEDENTE_ID = OC.ORGAOCONCEDENTE_ID) ");
sql.append(" INNER JOIN clase_servicio cs ON ( cs.claseservicio_id = co.claseservicio_id ) ");
sql.append(" LEFT OUTER JOIN punto_venta pv ON ( pv.PARADA_ID = ct.origen_id ) ");
sql.append("WHERE co.activo = 1 ");
sql.append(" AND cs.descclase in ('CONVENCIONAL', 'EXECUTIVO', 'SEMI-DIRETO') ");
sql.append(" AND oc.descorgao like '%ANTT%' ");
sql.append(" AND co.empresacorrida_id = :EMPRESA ");
sql.append(" AND pv.puntoventa_Id = :AGENCIA ");
sql.append(" AND co.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY') ");
sql.append("ORDER BY ");
sql.append(" co.corrida_id, ");
sql.append(" rut.numruta, ");
sql.append(" ct.fechorsalida,");
sql.append(" ct.numsecuencia ");
return sql.toString();
}
public String retornaHora(Date horaCompleta, boolean ishora) {
String horaMin = null;
if(horaCompleta == null) {
return horaMin;
} else if (ishora) {
SimpleDateFormat simpleTimeFormat = new SimpleDateFormat("HH");
horaMin = simpleTimeFormat.format(horaCompleta);
return horaMin;
} else {
SimpleDateFormat simpleTimeFormat = new SimpleDateFormat("mm");
horaMin = simpleTimeFormat.format(horaCompleta);
return horaMin;
}
}
@Override
protected void processaParametros() throws Exception {
}
}

View File

@ -0,0 +1,35 @@
#geral
msg.noData=Não foi possivel obter dados com os parâmetros informados.
msg.a=à
#Labels header
header.titulo.relatorio=BOLETIM ESTATÍSTICO MENSAL DE ESTAÇÕES RODIVIÁRIAS
header.mes=M-S
header.ano=ANO
header.tr=TR
header.tl=TL
header.nl=NL
header.estacao=NUM.ESTAC.
header.filtro.rodoviaria= Rodoviária de:
#Labels detail
detail.horarioInicial=HORARIO INICIAL
detail.hora=HH
detail.min=MM
detail.horarioPartida=HORARIO PARTIDA
detail.sentido=SENTIDO
detail.numeroLinha=NUMERO DA LINHA
detail.modal=MODAL
detail.empresa=NUM DA EMPRESA
detail.categoria=CAT VEIC
detail.viagens=NUM DE VIAGENS
detail.viagensNormais=NORM
detail.viagensExtras=EXTRA
detail.qtdViagens=QTDE PASS VENDIDAS
detail.valorManifest=VALOR MANIFESTADO R$
detail.passagens=PASSAGENS
detail.encom=ENCOMENDAS
detail.comissoes=COMISSOES
detail.taxa=TAXA MANUTENÇÃO
detail.taxaF=TAXA FISCALIZAÇÃO

View File

@ -0,0 +1,672 @@
<?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="RelatorioMensalDAER" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="NoDataSection" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="ae2cbb01-bc79-4d18-8206-3b59273fe793">
<property name="ireport.zoom" value="1.5026296018031553"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="NOMBEMPRESA" class="java.lang.String"/>
<parameter name="DATA_INICIO" class="java.sql.Timestamp">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
</parameter>
<parameter name="DATA_FINAL" class="java.sql.Timestamp"/>
<parameter name="USUARIO_ID" class="java.lang.String"/>
<parameter name="NOME_USUARIO" class="java.lang.String"/>
<parameter name="RELATORIOLIST" class="java.util.List"/>
<parameter name="RODOVIARIA" class="java.lang.String"/>
<parameter name="ESTACION" class="java.lang.String"/>
<parameter name="ANO" class="java.lang.String"/>
<parameter name="MES" class="java.lang.String"/>
<queryString>
<![CDATA[]]>
</queryString>
<field name="fecHorInicio" class="java.lang.String"/>
<field name="fecMinInicio" class="java.lang.String"/>
<field name="indSentidoIda" class="java.lang.String"/>
<field name="numRuta" class="java.lang.String"/>
<field name="modal" class="java.lang.String"/>
<field name="catVeiculo" class="java.lang.String"/>
<field name="codDER" class="java.lang.Integer"/>
<field name="qtdServNormal" class="java.lang.Integer"/>
<field name="qtdServExtra" class="java.lang.Integer"/>
<field name="qtdBilhetes" class="java.lang.Integer"/>
<field name="manifBilhetes" class="java.math.BigDecimal"/>
<field name="encomendas" class="java.math.BigDecimal"/>
<field name="comissaoPassagem" class="java.math.BigDecimal"/>
<field name="taxaFiscalizacao" class="java.math.BigDecimal"/>
<field name="taxaManutencao" class="java.math.BigDecimal"/>
<field name="fecHorSalida" class="java.lang.String"/>
<field name="fecMinSalida" class="java.lang.String"/>
<field name="empresaId" class="java.lang.String"/>
<field name="comissaoEncomenda" class="java.math.BigDecimal"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band splitType="Stretch"/>
</title>
<pageHeader>
<band height="91" splitType="Stretch">
<textField>
<reportElement uuid="2523431f-2c2c-4a2b-a34f-785b8ea8f9dd" mode="Opaque" x="2" y="1" width="427" height="15" backcolor="#FFFFFF"/>
<textElement verticalAlignment="Middle">
<font size="11"/>
</textElement>
<textFieldExpression><![CDATA[$R{header.titulo.relatorio}]]></textFieldExpression>
</textField>
<line>
<reportElement uuid="27a77abc-db13-4836-9261-8208f3825802" x="1" y="30" width="802" height="1"/>
</line>
<textField>
<reportElement uuid="c0f124b2-3691-4f49-9b86-69d76f249584" x="1" y="79" width="26" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.hora}]]></textFieldExpression>
</textField>
<line>
<reportElement uuid="b6bdef50-f793-4c23-b188-505c0fb7bf18" x="0" y="90" width="803" height="1"/>
</line>
<textField>
<reportElement uuid="e87d0055-94ea-4d7a-900e-24944a6c5f0f" mode="Opaque" x="2" y="15" width="320" height="15" backcolor="#FFFFFF"/>
<textElement verticalAlignment="Middle">
<font size="11"/>
</textElement>
<textFieldExpression><![CDATA[$P{NOMBEMPRESA}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="54b7bccf-285c-437b-9bb7-278957c49147" mode="Opaque" x="633" y="1" width="28" height="15" backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$R{header.tr}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="ae41723b-d733-42f0-a30a-c602d0a6358f" mode="Opaque" x="718" y="1" width="22" height="15" backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$R{header.mes}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="eaadd392-2951-4d7a-acad-e1875fa3d77e" mode="Opaque" x="661" y="1" width="26" height="15" backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$R{header.tl}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="ae2defb7-458e-4353-98c8-7204fc6d9fca" mode="Opaque" x="687" y="1" width="31" height="15" backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$R{header.nl}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="false">
<reportElement uuid="7e838a0c-f3c5-435d-9bb6-9216b8ffee4e" mode="Opaque" x="740" y="1" width="61" height="15" backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$R{header.ano}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="3fd2b247-2bd1-4b8e-9089-6b6572e0f9ff" x="740" y="16" width="61" height="14"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle">
<font size="10"/>
</textElement>
<textFieldExpression><![CDATA[$P{ANO}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="e745d1e2-e21b-4a74-bb7d-4ac20a45f20e" x="718" y="16" width="22" height="14"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle">
<font size="10"/>
</textElement>
<textFieldExpression><![CDATA[$P{MES}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="85e6203f-258f-4ac3-8b5f-913448e58f93" x="687" y="16" width="31" height="14"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement>
<font size="6"/>
</textElement>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="a612b60a-9e15-40d5-ba1a-9336f3187654" x="661" y="16" width="26" height="14"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement>
<font size="6"/>
</textElement>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="089b2cff-6cb8-40fe-a9da-87dc0bb75128" x="633" y="16" width="28" height="14"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement>
<font size="6"/>
</textElement>
</textField>
<textField>
<reportElement uuid="906ee568-33aa-488d-88a0-e7050b316b24" x="1" y="31" width="52" height="49"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.horarioInicial}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="e691721c-a2ba-4f35-9586-a06dd7dcd627" x="27" y="79" width="26" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.min}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="e8c52931-daa9-4ab3-bc48-2e3ce235ad95" x="79" y="79" width="26" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.min}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="b0de678b-f6c3-40eb-9727-8db8463c05e9" x="53" y="31" width="52" height="49"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.horarioPartida}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="9ffbfe45-e881-4ddc-9fa1-bbf27978760a" x="54" y="79" width="26" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.hora}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="bf68a45f-5b58-46ee-ba82-60847813bc23" x="105" y="30" width="17" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" rotation="Right" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.sentido}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="99b4ee1b-df01-4bba-9710-fad1775b7461" x="122" y="30" width="51" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.numeroLinha}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="476db22b-203a-4336-882d-3722f77cc719" x="173" y="30" width="30" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" rotation="Right" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.modal}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="37aba3dc-5c14-409a-80b5-844340350e9d" x="203" y="30" width="51" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.empresa}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="18790d03-b77d-4c6e-aca9-10d76bcfcd60" x="254" y="30" width="25" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" rotation="Right" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.categoria}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="7e097b84-5669-448e-be00-8f7192494bf4" x="279" y="30" width="86" height="49"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.viagens}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="fb500a1a-5980-442e-8961-d5f7fb8c6dc6" x="279" y="79" width="43" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.viagensNormais}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="a0e83672-6a46-4eb5-b5e8-3c9b65077cb9" x="322" y="79" width="43" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.viagensExtras}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="fdfdd3e8-64b2-4aab-9009-b21f1e291ab2" x="365" y="30" width="51" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.qtdViagens}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="904c0efb-8174-49a1-be41-801c5f3ed690" x="416" y="79" width="70" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.passagens}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="01ecdbd1-f3d0-429c-944d-cd124e9ca17d" x="416" y="30" width="140" height="49"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.valorManifest}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="75fe7266-96f0-4dfe-afab-bbcda25a63a4" x="486" y="79" width="70" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.encom}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="5bf11b71-f113-4085-b416-de6bc60d208f" x="556" y="30" width="126" height="49"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.comissoes}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="3bf0d1e9-d033-457f-9cc3-82eb3f8bc5c0" x="619" y="79" width="63" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.encom}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="6f7f0fe4-818a-441b-979f-e05fdbc62c03" x="556" y="79" width="63" height="10"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="6" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.passagens}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="094248dc-dc69-4554-b784-3ad93800fb17" x="682" y="30" width="58" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.taxa}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="65f21290-f4d3-414b-8da0-ab52edb48c24" x="740" y="30" width="61" height="59"/>
<box>
<topPen lineWidth="1.0"/>
<leftPen lineWidth="1.0"/>
<bottomPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle" markup="none">
<font size="11" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$R{detail.taxaF}]]></textFieldExpression>
</textField>
</band>
</pageHeader>
<columnHeader>
<band splitType="Stretch"/>
</columnHeader>
<detail>
<band height="14" splitType="Stretch">
<textField>
<reportElement uuid="506f2040-2627-42fe-94ee-74f59309d096" x="105" y="0" width="17" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{indSentidoIda}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="b5f9bcda-5402-4267-a2f1-29a7d4a68e7a" x="0" y="0" width="26" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{fecHorInicio}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="df910c9c-51bd-4aaf-ada0-94dd601c091a" x="27" y="0" width="26" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{fecMinInicio}
]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="65b14685-7b36-49fb-a030-b9baf7b0574d" x="53" y="0" width="26" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{fecHorSalida}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="cda6a382-b618-4d7e-ae23-1bd69ad88eeb" x="79" y="0" width="26" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{fecMinSalida}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="f816f928-ba3d-434b-8d2f-3b3834d035cc" x="122" y="0" width="51" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{numRuta}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="44bdf042-df78-4a2e-8612-3bf7b05b7aea" x="173" y="0" width="30" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{modal}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="47bf9de6-3b6a-465f-aa72-f62f4cbf90e9" x="203" y="0" width="51" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{codDER}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="4e00753c-73d2-4b12-8dff-48dbb2027dc1" x="254" y="0" width="25" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{catVeiculo}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="33cc61af-6620-4f95-aacf-892f026df6df" x="279" y="0" width="43" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{qtdServNormal}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="cf141e8d-5730-469f-a76a-5abf1c08dd08" x="322" y="0" width="43" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{qtdServExtra}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="856c26d1-19d3-413c-ac5d-af1f26bfe15d" x="365" y="0" width="51" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{qtdBilhetes}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="c451ed25-e098-4109-b83f-5b3cd68142ab" x="416" y="0" width="70" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{manifBilhetes}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="7de8361d-c038-4aa7-bc2a-ef6e943baba1" x="486" y="0" width="70" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{encomendas}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="60441537-f807-4a95-b890-43e6d66a1b13" x="557" y="0" width="62" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{comissaoPassagem}.setScale(2,BigDecimal.ROUND_HALF_UP)]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="5d8d7ed2-9920-4468-933d-cbd8a31f1331" x="740" y="0" width="61" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{taxaFiscalizacao}.setScale(2,BigDecimal.ROUND_HALF_UP)]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="51e88203-9586-4991-9889-45d490d3a454" x="682" y="0" width="58" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{taxaManutencao}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement uuid="ec833fe3-3591-4b7e-b0aa-585d2673d3ec" x="619" y="0" width="63" height="14"/>
<box>
<leftPen lineWidth="1.0"/>
<rightPen lineWidth="1.0"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$F{comissaoEncomenda}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band splitType="Stretch"/>
</pageFooter>
<lastPageFooter>
<band/>
</lastPageFooter>
<summary>
<band height="11" splitType="Stretch">
<line>
<reportElement uuid="54af9115-a2ad-4af8-8c41-3262d81ba1f7" x="0" y="0" width="801" height="1"/>
</line>
</band>
</summary>
</jasperReport>

View File

@ -0,0 +1,226 @@
package com.rjconsultores.ventaboletos.relatorios.utilitarios;
import java.math.BigDecimal;
import java.util.Date;
public class RelatorioMensalDAERBean {
private Integer corridaId;
private String fecHorSalida;
private String fecMinSalida;
private String fecHorInicio;
private String fecMinInicio;
private String empresaId;
private Date fecCorrida;
private String indSentidoIda;
private String numRuta;
private String modal;
private String catVeiculo;
private Integer codDER;
private Integer qtdServNormal;
private Integer qtdServExtra;
private Integer qtdBilhetes;
private BigDecimal manifBilhetes;
private Integer encomendas;
private BigDecimal comissaoPassagem;
private BigDecimal comissaoEncomenda;
private BigDecimal taxaFiscalizacao;
private BigDecimal taxaManutencao;
public String getEmpresaId() {
return empresaId;
}
public void setEmpresaId(String empresaId) {
this.empresaId = empresaId;
}
public Integer getCorridaId() {
return corridaId;
}
public RelatorioMensalDAERBean(Integer corridaId) {
this.corridaId = corridaId;
}
public void setCorridaId(Integer corridaId) {
this.corridaId = corridaId;
}
public String getFecHorSalida() {
return fecHorSalida;
}
public void setFecHorSalida(String fecHorSalida) {
this.fecHorSalida = fecHorSalida;
}
public String getFecHorInicio() {
return fecHorInicio;
}
public void setFecHorInicio(String fecHorInicio) {
this.fecHorInicio = fecHorInicio;
}
public String getFecMinSalida() {
return fecMinSalida;
}
public void setFecMinSalida(String fecMinSalida) {
this.fecMinSalida = fecMinSalida;
}
public String getFecMinInicio() {
return fecMinInicio;
}
public void setFecMinInicio(String fecMinInicio) {
this.fecMinInicio = fecMinInicio;
}
public Date getFecCorrida() {
return fecCorrida;
}
public void setFecCorrida(Date fecCorrida) {
this.fecCorrida = fecCorrida;
}
public String getIndSentidoIda() {
return indSentidoIda;
}
public void setIndSentidoIda(String indRentidoIda) {
this.indSentidoIda = indRentidoIda;
}
public String getNumRuta() {
return numRuta;
}
public void setNumRuta(String numRuta) {
this.numRuta = numRuta;
}
public String getModal() {
return modal;
}
public void setModal(String modal) {
this.modal = modal;
}
public String getCatVeiculo() {
return catVeiculo;
}
public void setCatVeiculo(String catVeiculo) {
this.catVeiculo = catVeiculo;
}
public Integer getCodDER() {
return codDER;
}
public void setCodDER(Integer codDER) {
this.codDER = codDER;
}
public Integer getQtdServNormal() {
return qtdServNormal;
}
public void setQtdServNormal(Integer qtdServNormal) {
this.qtdServNormal = qtdServNormal;
}
public Integer getQtdServExtra() {
return qtdServExtra;
}
public void setQtdServExtra(Integer qtdServExtra) {
this.qtdServExtra = qtdServExtra;
}
public Integer getQtdBilhetes() {
return qtdBilhetes;
}
public void setQtdBilhetes(Integer qtdBilhetes) {
this.qtdBilhetes = qtdBilhetes;
}
public BigDecimal getManifBilhetes() {
return manifBilhetes;
}
public void setManifBilhetes(BigDecimal manifBilhetes) {
this.manifBilhetes = manifBilhetes;
}
public Integer getEncomendas() {
return encomendas;
}
public void setEncomendas(Integer encomendas) {
this.encomendas = encomendas;
}
public BigDecimal getTaxaFiscalizacao() {
return taxaFiscalizacao;
}
public void setTaxaFiscalizacao(BigDecimal taxaFiscalizacao) {
this.taxaFiscalizacao = taxaFiscalizacao;
}
public BigDecimal getTaxaManutencao() {
return taxaManutencao;
}
public void setTaxaManutencao(BigDecimal taxaManutencao) {
this.taxaManutencao = taxaManutencao;
}
public BigDecimal getComissaoPassagem() {
return comissaoPassagem;
}
public void setComissaoPassagem(BigDecimal comissaoPassagem) {
this.comissaoPassagem = comissaoPassagem;
}
public BigDecimal getComissaoEncomenda() {
return comissaoEncomenda;
}
public void setComissaoEcomenda(BigDecimal comissaoEncomenda) {
this.comissaoEncomenda = comissaoEncomenda;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((corridaId == null) ? 0 : corridaId.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
RelatorioMensalDAERBean other = (RelatorioMensalDAERBean) obj;
if (corridaId == null) {
if (other.corridaId != null)
return false;
} else if (!corridaId.equals(other.corridaId))
return false;
return true;
}
}

View File

@ -0,0 +1,141 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.sql.DataSource;
import org.apache.log4j.Logger;
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.Combobox;
import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.UsuarioUbicacion;
import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMensalDAER;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.service.EmpresaService;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@Controller("relatorioMensalDAERController")
@Scope("prototype")
public class RelatorioMensalDAERController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(RelatorioMensalDAERController.class);
@Autowired
private DataSource dataSourceRead;
@Autowired
private EmpresaService empresaService;
//private Datebox datCompetencia;
private Textbox txtCompetencia;
private List<Empresa> lsEmpresas;
private Combobox cmbEmpresa;
private List<UsuarioUbicacion> lsAgencias;
private String agenciasUsuario;
private void executarRelatorio(boolean enviarEmail) throws Exception {
try {
Map<String, Object> parametros = new HashMap<String, Object>();
// Filtro Data Inicial
String competencia = txtCompetencia.getValue().toString();
Date periodo = DateUtil.getDateFromString("01/"+competencia, "dd/MM/yyyy");
Date dateInicio = DateUtil.inicioFecha(periodo);
parametros.put("DATA_INICIO", dateInicio);
// Filtro Data Final
competencia = txtCompetencia.getValue().toString();
parametros.put("MES", competencia.substring(0,2));
parametros.put("ANO", competencia.substring(3));
Date dateFim = DateUtil.getDataFinalCompetencia(competencia);
parametros.put("DATA_FINAL", dateFim);
// Filtro Empresa
Empresa empresa = null;
if (cmbEmpresa.getSelectedItem() != null) {
empresa = (Empresa) cmbEmpresa.getSelectedItem().getValue();
}
parametros.put("EMPRESA", empresa);
parametros.put("NOMBEMPRESA", empresa != null ? empresa.getNombempresa() : "TODOS");
// Filtro Usuário Id
parametros.put("USUARIO_ID", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString());
// Filtro nome usuário
parametros.put("NOME_USUARIO", UsuarioLogado.getUsuarioLogado().getNombusuario().toString());
parametros.put("AGENCIA", agenciasUsuario);
parametros.put("RODOVIARIA", UsuarioLogado.getUsuarioLogado().getUsuarioUbicacionList().get(0).getPuntoVenta().getNombpuntoventa().toString());
parametros.put("ESTACION", "");
// Instancia o relatório
Relatorio relatorio = new RelatorioMensalDAER(parametros, dataSourceRead.getConnection());
Map<String, Object> args = new HashMap<String, Object>();
args.put("relatorio", relatorio);
// Abre a janela do relatório
openWindow("/component/reportView.zul",
Labels.getLabel("relatorioMensalDAERController.window.title"), args, MODAL);
} catch (Exception e) {
log.error("Erro ao executar relatório", e);
}
}
public void onClick$btnEnviarEmailMensalDAER(Event ev) throws Exception {
executarRelatorio(true);
}
public void onClick$btnExecutarRelatorio(Event ev) throws Exception {
executarRelatorio(false);
}
@Override
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
lsEmpresas = UsuarioLogado.getUsuarioLogado().getEmpresa();
lsAgencias = UsuarioLogado.getUsuarioLogado().getUsuarioUbicacionActivoList();
StringBuilder agencias = new StringBuilder();
for (int i =0; i< lsAgencias.size() ; i++) {
agencias.append(lsAgencias.get(i).getPuntoVenta().getPuntoventaId().toString());
if(lsAgencias.size() > 1 && i < lsAgencias.size() -1) {
agencias.append(", ");
}
}
this.agenciasUsuario = agencias.toString();
}
public List<Empresa> getLsEmpresas() {
return lsEmpresas;
}
public void setLsEmpresa(List<Empresa> lsEmpresas) {
this.lsEmpresas = lsEmpresas;
}
public List<UsuarioUbicacion> getLsAgencias() {
return lsAgencias;
}
public void setLsAgencia(List<UsuarioUbicacion> lsAgencias) {
this.lsAgencias = lsAgencias;
}
}

View File

@ -0,0 +1,25 @@
package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios;
import org.zkoss.util.resource.Labels;
import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria;
import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema;
public class ItemMenuRelatorioMensalDAER extends DefaultItemMenuSistema {
public ItemMenuRelatorioMensalDAER() {
super("indexController.mniRelatorioMensalDAER.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOMENSALDAER";
}
@Override
public void ejecutar() {
PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioMensalDAER.zul",
Labels.getLabel("relatorioMensalDAERController.window.title"), getArgs() ,desktop);
}
}

View File

@ -178,6 +178,7 @@ analitico.gerenciais.estatisticos.passageirosViajar=com.rjconsultores.ventabolet
analitico.gerenciais.estatisticos.origemDestino=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioOrigemDestino analitico.gerenciais.estatisticos.origemDestino=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioOrigemDestino
analitico.gerenciais.estatisticos.relatorioCorridas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCorridas analitico.gerenciais.estatisticos.relatorioCorridas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCorridas
analitico.gerenciais.estatisticos.gratuidades=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeANTT analitico.gerenciais.estatisticos.gratuidades=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeANTT
analitico.gerenciais.estatisticos.mensalDAER=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioMensalDAER
analitico.gerenciais.estatisticos.gratuidadeARTESP=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeARTESP analitico.gerenciais.estatisticos.gratuidadeARTESP=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeARTESP
analitico.gerenciais.estatisticos.gratuidadeAGER=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeAGER analitico.gerenciais.estatisticos.gratuidadeAGER=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidadeAGER
analitico.gerenciais.estatisticos.gratuidadesANTT=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidade analitico.gerenciais.estatisticos.gratuidadesANTT=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioGratuidade

View File

@ -526,6 +526,9 @@ editarGrupoRutaController.MSG.borrarOK = Grupo de linha excluido com sucesso.
#Relatório IRK #Relatório IRK
relatorioIRKController.window.title= Relatório Indice IRK relatorioIRKController.window.title= Relatório Indice IRK
#Relatório Mensal DAER
relatorioMensalDAERController.window.title= Boletim Estatistico Mensal DAER
#Resumo de linhas #Resumo de linhas
relatorioResumoLinhasController.window.title = Relatório Resumo de Linhas relatorioResumoLinhasController.window.title = Relatório Resumo de Linhas
relatorioResumoLinhasAnaliticoSumarizadoCompletoController.window.title = Relatório Resumo de Linhas Analítico Sumarizado Completo relatorioResumoLinhasAnaliticoSumarizadoCompletoController.window.title = Relatório Resumo de Linhas Analítico Sumarizado Completo
@ -684,6 +687,19 @@ relatorioIndiceIRKController.rdTodos.label = Todos
relatorioIndiceIRKController.lbHoraSaidaInicial.value = Hora Saída relatorioIndiceIRKController.lbHoraSaidaInicial.value = Hora Saída
relatorioIndiceIRKController.lbHoraSaidaFinal.value = à relatorioIndiceIRKController.lbHoraSaidaFinal.value = à
#Relatório Mensal DAER
relatorioMensalDAERController.window.title= Boletim Estatistico Mensal Rodoviarias DAER
relatorioMensalDAERController.lbCompetenciaLayout.label = (MM/YYYY)
relatorioMensalDAERController.lbCompetencia.label = Mes e Ano
relatorioMensalDAERController.lbEmpresa.value = Empresa
relatorioMensalDAERController.labelTipoPassagems.value=Tipos de Passagens
relatorioMensalDAERController.tipo.obrigatoria = Tipo de passagens é obrigatório
relatorioMensalDAERController.lbTipoPassgens.value = Tipos de Passagens
relatorioMensalDAERController.labelRemoveTipoPassagem.value = Remover tipo Passagem
relatorioMensalDAERController.labelAdicionaTipoPassagem.value = Adicionar tipo Passagem
relatorioMensalDAERController.lbRelatorio.value = Emitir Relatório
relatorioMensalDAERController.lbEnviarEmailDAER.label = E-mail Recibo
#Relatorio Trecho Vendido #Relatorio Trecho Vendido
relatorioTrechoVendidoController.lbDataIni.value = Data Inicial relatorioTrechoVendidoController.lbDataIni.value = Data Inicial
relatorioTrechoVendidoController.lbDataFin.value = Data Final relatorioTrechoVendidoController.lbDataFin.value = Data Final

View File

@ -0,0 +1,55 @@
<?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="winFiltroRelatorioMensalDAER"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winFiltroRelatorioMensalDAER"
apply="${relatorioMensalDAERController}" contentStyle="overflow:auto"
height="135px" width="550px" border="normal">
<grid fixedLayout="true">
<columns>
<column width="25%" />
<column width="75%" />
</columns>
<rows>
<row id="rowCompetencia" spans="1,3">
<label
value="${c:l('relatorioMensalDAERController.lbCompetenciaLayout.label')}" />
<hbox>
<textbox id="txtCompetencia" width="100px"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
<label
value="${c:l('relatorioMensalDAERController.lbCompetenciaLayout.label')}" />
</hbox>
</row>
<row>
<label
value="${c:l('relatorioMensalDAERController.lbEmpresa.value')}" />
<combobox id="cmbEmpresa" width="100%"
maxlength="60" mold="rounded" buttonVisible="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winFiltroRelatorioMensalDAER$composer.lsEmpresas}" />
</row>
</rows>
</grid>
<grid fixedLayout="true">
<columns>
<column width="100%" />
</columns>
</grid>
<toolbar>
<button id="btnExecutarRelatorio" image="/gui/img/find.png"
label="${c:l('relatorioMensalDAERController.lbRelatorio.value')}" />
<button id="btnEnviarEmailMensalDAER"
image="/gui/img/email.png"
label="${c:l('relatorioMensalDAERController.lbEnviarEmailDAER.label')}" />
</toolbar>
</window>
</zk>