fixes bug#0012653

dev: valdevir
qua: josé

Implementação efetuada.

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@86922 d1611594-4594-4d17-8e1d-87c2c4800839
master
emerson 2018-11-09 20:03:58 +00:00
parent cb1f49e93d
commit 49d6c6c816
21 changed files with 787 additions and 173 deletions

View File

@ -1,110 +1,94 @@
package com.rjconsultores.ventaboletos.relatorios.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.ArrayCustomDataSourceRelatorio;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioAgenciasNaoImportadasBean;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.MoneyHelper;
import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
public class RelatorioIntegracaoAntiFraude extends Relatorio {
private List<RelatorioAgenciasNaoImportadasBean> lsDadosRelatorio;
public RelatorioIntegracaoAntiFraude(Map<String, Object> parametros, Connection conexao){
super(parametros, conexao);
try{
this.setCustomDataSource(new DataSource(this) {
@Override
public void initDados() throws Exception {
Connection conexao = this.relatorio.getConexao();
Map<String, Object> parametros = this.relatorio.getParametros();
String fecInicio = parametros.get("fecInicio").toString() + " 00:00:00";
String fecFinal = parametros.get("fecFinal").toString() + " 23:59:59";
String empresas = getEmpresas(conexao);
String sql = getSQL(empresas);
PreparedStatement stmt = conexao.prepareStatement(sql);
ResultSet rs = null;
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
stmt.setTimestamp(1, new java.sql.Timestamp(sdf.parse(fecInicio).getTime()));
stmt.setTimestamp(2, new java.sql.Timestamp(sdf.parse(fecFinal).getTime()));
rs = stmt.executeQuery();
lsDadosRelatorio = new ArrayList<RelatorioAgenciasNaoImportadasBean>();
while (rs.next()) {
RelatorioAgenciasNaoImportadasBean agencia = new RelatorioAgenciasNaoImportadasBean();
agencia.setNumpuntoventa(rs.getString(1));
agencia.setNombpuntoventa(rs.getString(2));
agencia.setFecha(rs.getDate(3));
lsDadosRelatorio.add(agencia);
}
if (lsDadosRelatorio.size() > 0) {
setLsDadosRelatorio(lsDadosRelatorio);
}
}
});
} catch (Exception e){
System.out.println(e.toString());
}
}
public void setLsDadosRelatorio(List<RelatorioAgenciasNaoImportadasBean> lsDadosRelatorio) {
this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio));
this.lsDadosRelatorio = lsDadosRelatorio;
}
@Override
protected void processaParametros() throws Exception {
setCustomDataSource(new ArrayCustomDataSource(this));
}
private String getEmpresas(Connection conexao){
String sql = "select valorconstante from constante where nombconstante = 'EMPRESAS_INTEGRACAO'";
try{
PreparedStatement stmt = conexao.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
if (rs.next()){
return rs.getString(1);
} else {
return "";
}
} catch (Exception e){
System.out.println(e.toString());
return "";
private final class ArrayCustomDataSource extends ArrayCustomDataSourceRelatorio {
public ArrayCustomDataSource(Relatorio relatorio) throws Exception {
super(relatorio);
}
}
private String getSQL(String empresas) {
// Custo da query: 40
StringBuilder sql = new StringBuilder();
sql.append(" select distinct p.numpuntoventa, p.nombpuntoventa, t.feccorte ");
sql.append(" from punto_venta p ");
sql.append(" inner join titulo_integracion t on t.puntoventa_id = p.puntoventa_id ");
sql.append(" where t.feccorte between ? AND ? and t.fecintegracion is null ");
sql.append(" order by t.feccorte, p.nombpuntoventa ");
@Override
protected void getSql(StringBuilder instrucaoSql, Map<String, Object> parametros) {
instrucaoSql.append("SELECT TK.KONDUTO_ID ID_KONDUTO, ");
instrucaoSql.append("LPAD(CASE WHEN CLI.TIPOIDENTIFICAUNO_ID = 2 THEN ");
instrucaoSql.append(" NUMIDENTIFICAUNO ");
instrucaoSql.append("WHEN CLI.TIPOIDENTIFICADOS_ID = 2 THEN ");
instrucaoSql.append(" NUMIDENTIFICADOS ");
instrucaoSql.append("END, 11, '0') CPF_COMPRADOR, CLI.NOMBCLIENTE NOME_COMPRADOR, ");
instrucaoSql.append("TO_CHAR(B.FECHORVENTA, 'DD/MM/YYYY') DATA_COMPRA, ");
instrucaoSql.append("TO_CHAR(B.FECHORVENTA, 'HH24:MI') HORA_COMPRA, ");
instrucaoSql.append("CT.NSU, CT.NUMAUTORIZACION AUTORIZACAO, ");
instrucaoSql.append("COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0) + ");
instrucaoSql.append("COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTEPEDAGIO,0) + COALESCE(B.IMPORTEOUTROS,0) AS VALOR_TOTAL, ");
instrucaoSql.append("B.CORRIDA_ID SERVICO, ");
instrucaoSql.append("TO_CHAR(B.FECHORVIAJE, 'DD/MM/YYYY') DATA_VIAGEM, ");
instrucaoSql.append("TO_CHAR(B.FECHORVIAJE, 'HH24:MI') HORA_VIAGEM, ");
instrucaoSql.append("PO.DESCPARADA ORIGEM, PD.DESCPARADA DESTINO, ");
instrucaoSql.append("B.NUMFOLIOSISTEMA BILHETE, ");
instrucaoSql.append("B.NUMASIENTO POLTRONA, ");
instrucaoSql.append("B.NOMBPASAJERO PASSAGEIRO ");
instrucaoSql.append("FROM BOLETO B ");
instrucaoSql.append("INNER JOIN TRANSACAO_KONDUTO TK ON B.BOLETO_ID = TK.BOLETO_ID ");
instrucaoSql.append("LEFT JOIN CLIENTE CLI ON B.CLIENTECOMPRADOR_ID = CLI.CLIENTE_ID ");
instrucaoSql.append("LEFT JOIN CAJA C ON B.BOLETO_ID = C.TRANSACAO_ID ");
instrucaoSql.append("LEFT JOIN CAJA_DET_PAGO CDP ON C.CAJA_ID = CDP.CAJA_ID ");
instrucaoSql.append("LEFT JOIN CAJA_TARJETA CT ON CDP.CAJADETPAGO_ID = CT.CAJADETPAGO_ID ");
instrucaoSql.append("LEFT JOIN PARADA PO ON B.ORIGEN_ID = PO.PARADA_ID ");
instrucaoSql.append("LEFT JOIN PARADA PD ON B.DESTINO_ID = PD.PARADA_ID ");
instrucaoSql.append("WHERE B.FECHORVENTA BETWEEN :dtInicial AND :dtFinal ");
instrucaoSql.append("AND TK.STATUSTRANSACAO IN("+parametros.get("statusKondutoId").toString()+") ");
instrucaoSql.append("AND B.MARCA_ID = :empresaId ");
}
@Override
protected void populaValoresDataResult(Map<String, Object> dataResult, ResultSet resultSet) throws SQLException {
dataResult.put("ID_KONDUTO", resultSet.getString("ID_KONDUTO"));
dataResult.put("CPF_COMPRADOR", resultSet.getString("CPF_COMPRADOR"));
dataResult.put("NOME_COMPRADOR", resultSet.getString("NOME_COMPRADOR"));
dataResult.put("DATA_COMPRA", resultSet.getString("DATA_COMPRA"));
dataResult.put("HORA_COMPRA", resultSet.getString("HORA_COMPRA"));
dataResult.put("NSU", resultSet.getString("NSU"));
dataResult.put("AUTORIZACAO", resultSet.getString("AUTORIZACAO"));
dataResult.put("VALOR_TOTAL", MoneyHelper.instanciar(resultSet.getBigDecimal("VALOR_TOTAL")));
dataResult.put("SERVICO", resultSet.getString("SERVICO"));
dataResult.put("DATA_VIAGEM", resultSet.getString("DATA_VIAGEM"));
dataResult.put("HORA_VIAGEM", resultSet.getString("HORA_VIAGEM"));
dataResult.put("ORIGEM", resultSet.getString("ORIGEM"));
dataResult.put("DESTINO", resultSet.getString("DESTINO"));
dataResult.put("BILHETE", resultSet.getString("BILHETE"));
dataResult.put("POLTRONA", resultSet.getString("POLTRONA"));
dataResult.put("PASSAGEIRO", resultSet.getString("PASSAGEIRO"));
}
@Override
protected void configuraParametrosConsultaSql(Map<String, Object> parametros, NamedParameterStatement stmt) throws SQLException {
stmt.setTimestamp("dtInicial", new Timestamp(DateUtil.inicioFecha((Date) parametros.get("dtInicial")).getTime()));
stmt.setTimestamp("dtFinal", new Timestamp(DateUtil.fimFecha((Date) parametros.get("dtFinal")).getTime()));
stmt.setObject("empresaId", parametros.get("empresaId"));
}
return sql.toString();
}
}

View File

@ -0,0 +1,13 @@
#geral
msg.noData = No se pudo obtener datos con los par\u00E1metros reportados.
#Labels cabeçalho
cabecalho.relatorio=Relatório:
cabecalho.periodo=Período:
cabecalho.periodoA=à
cabecalho.dataHora=Data/Hora:
cabecalho.impressorPor=Impresso por:
cabecalho.pagina=Página
cabecalho.de=de
cabecalho.filtros=Filtros:
cabecalho.empresa=Empresa:

View File

@ -0,0 +1,14 @@
#geral
msg.noData=Não foi possivel obter dados com os parâmetros informados.
#Labels header
cabecalho.relatorio=Relatório:
cabecalho.periodo=Período:
cabecalho.periodoA=à
cabecalho.dataHora=Data/Hora:
cabecalho.impressorPor=Impresso por:
cabecalho.pagina=Página
cabecalho.de=de
cabecalho.filtros=Filtros:
cabecalho.empresa=Empresa:
cabecalho.statusKonduto=Filtro Status Konduto:

View File

@ -12,3 +12,5 @@ cabecalho.de=de
cabecalho.filtros=Filtros:
cabecalho.empresa=Empresa:
cabecalho.linhas=Linha:
cabecalho.tipoData=Tipo de Data:
cabecalho.orgao=Orgão Concedente:

View File

@ -12,3 +12,5 @@ cabecalho.de=de
cabecalho.filtros=Filtros:
cabecalho.empresa=Empresa:
cabecalho.linhas=Linha:
cabecalho.tipoData=Tipo de Data:
cabecalho.orgao=Orgão Concedente:

View File

@ -0,0 +1,342 @@
<?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="RelatorioIntegracaoAntiFraude" pageWidth="842" pageHeight="595" orientation="Landscape" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="7e37af0b-caa1-4f25-831c-5cbb2bb78560">
<property name="ireport.zoom" value="1.2100000000000002"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="NOME_RELATORIO" class="java.lang.String"/>
<parameter name="empresa" class="java.lang.String"/>
<parameter name="statusKonduto" class="java.lang.String"/>
<parameter name="periodo" class="java.lang.String"/>
<field name="ID_KONDUTO" class="java.lang.String"/>
<field name="CPF_COMPRADOR" class="java.lang.String"/>
<field name="NOME_COMPRADOR" class="java.lang.String"/>
<field name="DATA_COMPRA" class="java.lang.String"/>
<field name="HORA_COMPRA" class="java.lang.String"/>
<field name="NSU" class="java.lang.String"/>
<field name="AUTORIZACAO" class="java.lang.String"/>
<field name="VALOR_TOTAL" class="java.math.BigDecimal"/>
<field name="SERVICO" class="java.lang.String"/>
<field name="DATA_VIAGEM" class="java.lang.String"/>
<field name="HORA_VIAGEM" class="java.lang.String"/>
<field name="ORIGEM" class="java.lang.String"/>
<field name="DESTINO" class="java.lang.String"/>
<field name="BILHETE" class="java.lang.String"/>
<field name="POLTRONA" class="java.lang.String"/>
<field name="PASSAGEIRO" class="java.lang.String"/>
<variable name="somaValorTotal" class="java.math.BigDecimal" calculation="Sum">
<variableExpression><![CDATA[$F{VALOR_TOTAL}]]></variableExpression>
</variable>
<background>
<band splitType="Stretch"/>
</background>
<pageHeader>
<band height="105" splitType="Stretch">
<textField isStretchWithOverflow="true">
<reportElement uuid="e4d992c9-eb58-4b1e-878c-51ae5c729ab5" x="0" y="0" width="802" height="25"/>
<textElement textAlignment="Center">
<font size="14" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$P{NOME_RELATORIO}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="b6b378f0-944f-4749-9a9d-3e472361e7f7" x="0" y="39" width="130" height="20"/>
<textElement textAlignment="Right">
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.empresa}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="8c699a77-f856-411f-9fac-501e7302c091" x="147" y="39" width="655" height="20"/>
<textElement>
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$P{empresa}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="50284f0b-f675-46bb-8631-39946652702e" x="0" y="59" width="130" height="20"/>
<textElement textAlignment="Right">
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.statusKonduto}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="82bb8887-102e-4aac-a389-754fc985b623" x="147" y="59" width="655" height="20"/>
<textElement>
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$P{statusKonduto}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="9d5eb781-7cdf-4c6e-95a6-d16b53a2d20e" x="0" y="79" width="130" height="20"/>
<textElement textAlignment="Right">
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{cabecalho.periodo}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="173b3e52-5b2e-4876-b40d-2774497dfbbe" x="147" y="79" width="655" height="20"/>
<textElement>
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$P{periodo}]]></textFieldExpression>
</textField>
<line>
<reportElement uuid="ef42d3b8-d503-4309-a5ea-8f2b934d6ca9" x="0" y="102" width="802" height="1"/>
</line>
</band>
</pageHeader>
<columnHeader>
<band height="23" splitType="Stretch">
<staticText>
<reportElement uuid="7dfac679-5777-44d4-ad71-1d3f9a357d6c" x="0" y="0" width="63" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[ID Konduto]]></text>
</staticText>
<staticText>
<reportElement uuid="97304743-de9a-4844-8e9d-379d072740cf" x="73" y="0" width="53" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[CPF Comprador]]></text>
</staticText>
<staticText>
<reportElement uuid="8d03ea0b-eb6f-4747-81d8-864d399fd64a" x="126" y="0" width="74" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Nome Comprador]]></text>
</staticText>
<staticText>
<reportElement uuid="4c1e5926-c37e-456d-94ce-5e31e7c27757" x="200" y="0" width="56" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Data Compra]]></text>
</staticText>
<staticText>
<reportElement uuid="d00c3059-6ba6-49f0-bd00-8b6152b9dae5" x="256" y="0" width="35" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Hora Compra]]></text>
</staticText>
<staticText>
<reportElement uuid="4f35ab49-374e-4e2c-9e74-228d741e9b57" x="291" y="0" width="39" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[NSU]]></text>
</staticText>
<staticText>
<reportElement uuid="b9eb76a8-f79d-4725-9443-aeb97b5e1a69" x="330" y="0" width="50" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Autorização]]></text>
</staticText>
<staticText>
<reportElement uuid="3516a9cc-6c22-4fa0-815a-3f31877197fb" x="380" y="0" width="56" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Valor Total]]></text>
</staticText>
<staticText>
<reportElement uuid="3ea703d0-9b0f-4977-ae63-04df3521e47b" x="436" y="0" width="39" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Serviço]]></text>
</staticText>
<staticText>
<reportElement uuid="5c38c141-cf4f-4d4c-b497-8dbe3e01473f" x="528" y="0" width="35" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Hora Viagem]]></text>
</staticText>
<staticText>
<reportElement uuid="1d79c1ce-b507-4738-a06a-39cb074f8c5f" x="475" y="0" width="53" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Data Viagem]]></text>
</staticText>
<staticText>
<reportElement uuid="1263b027-8974-4a64-bbdc-3b7b150f13aa" x="563" y="0" width="57" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Origem]]></text>
</staticText>
<staticText>
<reportElement uuid="706c9a98-e0f6-4941-8826-847d0a3127db" x="620" y="0" width="57" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Destino]]></text>
</staticText>
<staticText>
<reportElement uuid="d9cdf407-544a-439c-b161-bf7e79d99913" x="677" y="0" width="34" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Bilhete]]></text>
</staticText>
<staticText>
<reportElement uuid="a5528f8f-5767-40d0-b506-9f11c6e52848" x="711" y="0" width="36" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Poltrona]]></text>
</staticText>
<staticText>
<reportElement uuid="e6e8ba92-2ead-4ecb-a61c-06b25da28c38" x="747" y="0" width="55" height="23"/>
<textElement>
<font size="8"/>
</textElement>
<text><![CDATA[Passageiro]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="20" splitType="Stretch">
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="69fbf8f0-42ff-4ac1-b4c3-98cb8981756d" x="0" y="0" width="63" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{ID_KONDUTO}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="736fff80-1a77-49d3-ac6e-6db0455dea25" x="73" y="0" width="53" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{CPF_COMPRADOR}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="24dc6a67-c61b-455b-92cf-6513bf0dd395" x="126" y="0" width="74" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{NOME_COMPRADOR}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="1c152ef7-6a39-4213-89f2-6c132b72fec2" x="200" y="0" width="56" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{DATA_COMPRA}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="baef4435-91db-4234-a7dd-4f4c68dd4934" x="256" y="0" width="35" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{HORA_COMPRA}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement uuid="7b56a17d-dce8-44c3-9bfc-4e662ddb039a" x="291" y="0" width="39" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{NSU}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="50e5e2c2-aa07-40d8-9f9e-bc7317b4b3cc" x="330" y="0" width="50" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{AUTORIZACAO}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" pattern="">
<reportElement uuid="219b202b-d6c8-4a30-8571-184406a093ec" x="380" y="0" width="56" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{VALOR_TOTAL}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="f967b32f-1e8a-4847-9378-a9583ed64eb8" x="436" y="0" width="39" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{SERVICO}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="e295288e-747b-4c60-ba2c-79a650503a95" x="475" y="0" width="53" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{DATA_VIAGEM}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="3a0b2b6e-5ff7-487e-91fb-1a09b0b2d674" x="528" y="0" width="35" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{HORA_VIAGEM}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="6028c261-a71d-406e-a140-3e6a88dd81d6" x="563" y="0" width="57" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{ORIGEM}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="8dfd6984-4f8f-43b2-8f13-7693b3172a73" x="620" y="0" width="57" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{DESTINO}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="9782340c-2080-4c8a-94c9-78c62e48a6a3" x="677" y="0" width="34" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{BILHETE}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="9ad8048f-4355-44ef-b14d-e54825347828" x="711" y="0" width="36" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{POLTRONA}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<reportElement uuid="420a5c3e-4798-4c66-98c8-a6ea957712e0" x="747" y="0" width="55" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$F{PASSAGEIRO}]]></textFieldExpression>
</textField>
</band>
</detail>
<summary>
<band height="20" splitType="Stretch">
<textField>
<reportElement uuid="ca18f432-671a-4981-9cdb-650412bebc8a" x="380" y="0" width="95" height="20"/>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression><![CDATA[$V{somaValorTotal}]]></textFieldExpression>
</textField>
</band>
</summary>
<noData>
<band height="50">
<textField>
<reportElement uuid="09b96c81-b864-4947-8a86-27e7e007139d" x="24" y="24" width="530" height="26"/>
<textElement markup="none">
<font size="11" isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{msg.noData}]]></textFieldExpression>
</textField>
</band>
</noData>
</jasperReport>

View File

@ -0,0 +1,6 @@
package com.rjconsultores.ventaboletos.relatorios.utilitarios;
public interface ValidaForm {
public boolean isValido();
}

View File

@ -1,57 +0,0 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios;
import java.text.SimpleDateFormat;
import java.util.HashMap;
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.event.Event;
import org.zkoss.zul.Datebox;
import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioAgenciasNaoImportadas;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@Controller("relatorioIntegracaoAntiFraudeController")
@Scope("prototype")
public class RelatorioIntegracaoAntiFraudeController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(RelatorioIntegracaoAntiFraudeController.class);
@Autowired
private DataSource dataSourceRead;
private Datebox datInicial;
private Datebox datFinal;
private void executarRelatorio() throws Exception {
Map<String, Object> parametros = new HashMap<String, Object>();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
parametros.put("fecInicio", sdf.format(this.datInicial.getValue()));
parametros.put("fecFinal", sdf.format(this.datFinal.getValue()));
parametros.put("TITULO", Labels.getLabel("indexController.mniRelatorioAgenciasNaoImportadas.label"));
Relatorio relatorio = new RelatorioAgenciasNaoImportadas(parametros, dataSourceRead.getConnection());
Map<String, Object> args = new HashMap<String, Object>();
args.put("relatorio", relatorio);
openWindow("/component/reportView.zul",
Labels.getLabel("indexController.mniRelatorioAgenciasNaoImportadas.label"), args, MyGenericForwardComposer.MODAL);
}
public void onClick$btnExecutarRelatorio(Event ev) throws Exception {
executarRelatorio();
}
}

View File

@ -0,0 +1,32 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.integracaoantifraude;
public enum EStatusKonduto {
PENDENTE("P", "Pendente"),
APROVADO("A", "Aprovado"),
NEGADO("N", "Negado");
private String id;
private String descricao;
private EStatusKonduto(String id, String descricao) {
this.id = id;
this.descricao = descricao;
}
public String getId() {
return id;
}
public String getDescricao() {
return descricao;
}
public static EStatusKonduto getStatusKondutoPorId(String id) {
for (EStatusKonduto status : EStatusKonduto.values()) {
if (status.getId().equals(id)) {
return status;
}
}
throw new IllegalArgumentException("Status Konduto não encontrado.");
}
}

View File

@ -0,0 +1,87 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.integracaoantifraude;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.zkoss.util.resource.Labels;
import org.zkoss.zk.ui.event.EventListener;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioIntegracaoAntiFraude;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.utils.FormataUtil;
import com.rjconsultores.ventaboletos.web.utilerias.EventListenerExecutarRelatorio;
public class EventListenerExecutarRelatorioIntegracaoAntiFraude extends EventListenerExecutarRelatorio<RelatorioIntegracaoAntiFraudeController> implements EventListener {
private static final String MASCARA_DATA_COMPLETA = "dd/MM/yyyy hh:mm:ss";
public EventListenerExecutarRelatorioIntegracaoAntiFraude(RelatorioIntegracaoAntiFraudeController controller) {
super(controller);
}
@Override
protected String getTituloRelatorio() {
return RelatorioIntegracaoAntiFraudeController.TITULO_RELATORIO;
}
@Override
protected boolean filtrosValidos(RelatorioIntegracaoAntiFraudeController controller) {
return new ValidaFormRelatorioIntegracaoAntiFraude(controller).isValido();
}
@Override
protected Relatorio configuraRelatorio(RelatorioIntegracaoAntiFraudeController controller) throws SQLException {
return new RelatorioIntegracaoAntiFraude(getParametros(), controller.getDataSource().getConnection());
}
private Map<String, Object> getParametros() {
Map<String, Object> parametros = new HashMap<String, Object>();
parametros.put("NOME_RELATORIO", Labels.getLabel(getTituloRelatorio()));
parametros.put("dtInicial", getController().getDtInicial().getValue());
parametros.put("dtFinal", getController().getDtFinal().getValue());
parametros.put("periodo", obtemPeriodo());
Empresa empresa = getController().getCmbEmpresa().getSelecteObject(Empresa.class);
parametros.put("empresaId", empresa.getEmpresaId());
parametros.put("empresa", empresa.getNombempresa());
List<StringBuilder> statusKondutoSelecionados = obtemIdsEDescricaoStatusKondutoSelecionados();
parametros.put("statusKondutoId", statusKondutoSelecionados.get(0).toString());
parametros.put("statusKonduto", statusKondutoSelecionados.get(1).toString());
return parametros;
}
private List<StringBuilder> obtemIdsEDescricaoStatusKondutoSelecionados() {
StringBuilder idsKonduto = new StringBuilder();
StringBuilder descricaoKonduto = new StringBuilder();
List<Object> statusKondutoSelecionados = getController().getKondutoList().getItensSelecionados();
populaKondutoSelecionados(idsKonduto, descricaoKonduto, statusKondutoSelecionados);
ArrayList<StringBuilder> kondutosSelecionados = new ArrayList<StringBuilder>();
kondutosSelecionados.add(idsKonduto);
kondutosSelecionados.add(descricaoKonduto);
return kondutosSelecionados;
}
private void populaKondutoSelecionados(StringBuilder idsKonduto, StringBuilder descricaoKonduto, List<Object> statusKondutoSelecionados) {
for (int i = 0; i < statusKondutoSelecionados.size(); i++) {
EStatusKonduto statusKonduto = (EStatusKonduto)statusKondutoSelecionados.get(i);
idsKonduto.append("'"+statusKonduto.getId()+"'");
descricaoKonduto.append(statusKonduto.getDescricao());
if (i != statusKondutoSelecionados.size()-1) {
idsKonduto.append(", ");
descricaoKonduto.append(", ");
}
}
}
private String obtemPeriodo() {
return FormataUtil.formataDataToString((Date)getController().getDtInicial().getValue(), "", MASCARA_DATA_COMPLETA)
+" até "+FormataUtil.formataDataToString((Date)getController().getDtFinal().getValue(), "", MASCARA_DATA_COMPLETA);
}
}

View File

@ -0,0 +1,89 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.integracaoantifraude;
import java.util.Arrays;
import java.util.List;
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.zk.ui.Component;
import org.zkoss.zul.Button;
import org.zkoss.zul.Datebox;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.enums.TypeEventListener;
import com.rjconsultores.ventaboletos.service.EmpresaService;
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.render.RenderPersonalizado;
@Controller("relatorioIntegracaoAntiFraudeController")
@Scope("prototype")
public class RelatorioIntegracaoAntiFraudeController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
public static final String TITULO_RELATORIO = "indexController.mniRelatorioIntegracaoAntifraude.label";
@Autowired
private DataSource dataSource;
private Datebox dtInicial;
private Datebox dtFinal;
@Autowired
private EmpresaService empresaService;
private List<Empresa> lsEmpresa;
private MyComboboxEstandar cmbEmpresa;
private List<EStatusKonduto> lsStatusKonduto;
private MyListbox kondutoList;
private Button btnExecutarRelatorio;
@Override
public void doAfterCompose(Component comp) throws Exception {
lsEmpresa = empresaService.obtenerTodos();
super.doAfterCompose(comp);
kondutoList.setItemRenderer(new RenderPersonalizado<EStatusKonduto>(Arrays.asList("descricao")));
kondutoList.setData(Arrays.asList(EStatusKonduto.values()));
configuraEventosExecucaoRelatorio();
}
private void configuraEventosExecucaoRelatorio() {
btnExecutarRelatorio.addEventListener(TypeEventListener.ON_CLICK.getEvent(),
new EventListenerExecutarRelatorioIntegracaoAntiFraude(this));
}
public Datebox getDtInicial() {
return dtInicial;
}
public Datebox getDtFinal() {
return dtFinal;
}
public MyListbox getKondutoList() {
return kondutoList;
}
public MyComboboxEstandar getCmbEmpresa() {
return cmbEmpresa;
}
public DataSource getDataSource() {
return dataSource;
}
public List<EStatusKonduto> getLsStatusKonduto() {
return lsStatusKonduto;
}
public List<Empresa> getLsEmpresa() {
return lsEmpresa;
}
}

View File

@ -0,0 +1,65 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.integracaoantifraude;
import static com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.integracaoantifraude.RelatorioIntegracaoAntiFraudeController.TITULO_RELATORIO;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.ValidaForm;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.ValidarDatas;
import com.rjconsultores.ventaboletos.web.utilerias.MensagensUtils;
public class ValidaFormRelatorioIntegracaoAntiFraude implements ValidaForm {
private static final String MSG_PERIODO_NAO_INFORMADO = "relatorioPosicaoVendaBilheteIdosoController.MSG.informarFiltroData";
private static final String MSG_PERIODO_INCOMPLETO = "relatorioPosicaoVendaBilheteIdosoController.MSG.informarData";
private static final String MSG_DATA_INICIAL_MAIOR_FINAL = "relatorioPosicaoVendaBilheteIdosoController.MSG.dataInicialMaiorFinal";
private static final String MSG_EMPRESA_NAO_INFORMADO = "relatorioPosicaoVendaBilheteIdosoController.MSG.informarEmpresa";
private static final String MSG_STATUS_KONDUTO_NAO_INFORMADO = "relatorioIntegracaoAntiFraudeController.MSG.informarStatusKonduto";
private RelatorioIntegracaoAntiFraudeController controller;
public ValidaFormRelatorioIntegracaoAntiFraude(RelatorioIntegracaoAntiFraudeController controller) {
this.controller = controller;
}
@Override
public boolean isValido() {
return isDatasValidas()
&& isFiltrosValidos();
}
private boolean isFiltrosValidos() {
return possuiEmpresaSelecionada()
&& possuiStatusKondutoSelecionado();
}
private Boolean possuiStatusKondutoSelecionado() {
if (controller.getKondutoList().getSelectedsItens().isEmpty()) {
MensagensUtils.showMessageInformation(MSG_STATUS_KONDUTO_NAO_INFORMADO, TITULO_RELATORIO);
return false;
}
return true;
}
private boolean possuiEmpresaSelecionada() {
if (controller.getCmbEmpresa().getSelectedItem() == null) {
MensagensUtils.showMessageInformation(MSG_EMPRESA_NAO_INFORMADO, TITULO_RELATORIO);
return false;
}
return true;
}
private boolean isDatasValidas() {
ValidarDatas validadorData = new ValidarDatas(controller.getDtInicial(), controller.getDtFinal());
if (validadorData.isPeriodoNaoInformado()) {
MensagensUtils.showMessageInformation(MSG_PERIODO_NAO_INFORMADO, TITULO_RELATORIO);
return false;
}
if (validadorData.isPeriodoParcialmenteInformado()) {
MensagensUtils.showMessageInformation(MSG_PERIODO_INCOMPLETO, TITULO_RELATORIO);
return false;
}
return !validadorData.validarDataInicioMaiorQueTermino(MSG_DATA_INICIAL_MAIOR_FINAL, TITULO_RELATORIO);
}
}

View File

@ -1,6 +0,0 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.vendabilheteidoso;
public interface ValidaForm {
public boolean isValido();
}

View File

@ -2,6 +2,7 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.vendabil
import static com.rjconsultores.ventaboletos.web.gui.controladores.relatorios.vendabilheteidoso.RelatorioPosicaoVendaBilheteIdosoController.TITULO_RELATORIO;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.ValidaForm;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.ValidarDatas;
import com.rjconsultores.ventaboletos.web.utilerias.MensagensUtils;

View File

@ -125,6 +125,16 @@ public class MyListbox extends Listbox {
return selecteds;
}
public List<Object> getItensSelecionados() {
int qtd = this.getSelectedCount();
List<Object> selecteds = new ArrayList<Object>();
for (int i = 0; i < qtd; i++) {
selecteds.add(modelList.get(((Listitem)getSelectedItems().toArray()[i]).getIndex()));
}
return selecteds;
}
public List<Object> getSelectedItemsByIndex() {
List<Object> selecteds = new ArrayList<Object>();
Set<Listitem> selList = this.getSelectedItems();

View File

@ -2,18 +2,19 @@ package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios;
import org.zkoss.util.resource.Labels;
import com.rjconsultores.ventaboletos.constantes.ConstantesFuncionSistema;
import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria;
import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema;
public class ItemMenuRelatorioIntegracaoAntiFraude extends DefaultItemMenuSistema {
public ItemMenuRelatorioIntegracaoAntiFraude() {
super("indexController.mniRelatorioIntegracaoAntiFraude.label");
super("indexController.mniRelatorioIntegracaoAntifraude.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOINTEGRACAOANTIFRAUDE";
return ConstantesFuncionSistema.CLAVE_INTEGRACAO_ANTI_FRAUDE;
}
@Override

View File

@ -217,8 +217,8 @@ analitico.integracion.relatorioFiscal.importacionFiscalReducaoZ=com.rjconsultore
analitico.integracion.relatorioFiscal.importacionNaoFiscal=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal.ItemMenuImportacionNaoFiscal
analitico.integracion.relatorioFiscal.importacionEcFPendencia=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal.ItemMenuImportacionFiscalEcFPendencia
analitico.integracion.relatorioFiscal.importacionReducaoZPendencia=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal.ItemMenuImportacionFiscalReducaoZPendencia
analitico.integracion.agenciasNaoImportadas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioIntegracaoAntiFraude
analitico.integracion.integracaoAntiFraude=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAgenciasNaoImportadas
analitico.integracion.agenciasNaoImportadas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAgenciasNaoImportadas
analitico.integracion.integracaoAntiFraude=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioIntegracaoAntiFraude
analitico.integracion.bgm=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.integracion.bgm.SubMenuBgm
analitico.integracion.bgm.arquivo=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioArquivoBGM
analitico.integracion.bgm.erro=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioErrosIntegracaoBGM

View File

@ -279,6 +279,7 @@ indexController.mniRelatorioGratuidadeIdosoDeficiente.label = Gratuidades Idoso/
indexController.mniRelatorioVendasBilheteiro.label = Ventas por agente de pasajes
indexController.mniRelatorioVendasBilheteiroSintetico.label = Ventas por agentes sintético
indexController.mniRelatorioAgenciasNaoImportadas.label = Reporte puntos venta no importados
indexController.mniRelatorioIntegracaoAntifraude.label = Relatório de Integração com Anti-Fraude
indexController.mniRelatorioCheckin.label = Checkin's
indexController.mniFechamentoParamgeral.label = Cierre cuenta
indexController.mniFechamentoParamptovta.label = Cierre cuenta contábil punto de venta
@ -6737,6 +6738,13 @@ indexController.mniRelatorioAgenciaFechamento.label= Cierre de Agencias
integracion.totvs=ERRO ao fazer integracion com a TOTVS
integracion.totvs.ja.cadastrado = Esta agencia ya tiene registrado en el sistema de TOTVS. Los datos de integración no serán enviados nuevamente
#Relatório de Integração com Anti-Fraude
relatorioIntegracaoAntiFraudeController.lblDataIni.value = Período Inicial
relatorioIntegracaoAntiFraudeController.lblDataFin.value = Período Final
relatorioIntegracaoAntiFraudeController.lblEmpresa.value = Empresa
relatorioIntegracaoAntiFraudeController.lblStatusKonduto.value = Status Konduto
relatorioIntegracaoAntiFraudeController.MSG.informarStatusKonduto = Favor informar ao menos um status Konduto.
# Búsqueda Hotel
busquedaHotelController.window.title = Hotel
busquedaHotelController.btnRefresh.tooltiptext = Actualizar

View File

@ -7225,6 +7225,13 @@ editarRelgerencialEmpresaController.MSG.erroTipoRelgerencial=Tipo Relatório Ger
filtroRelatorioAgenciasNaoImportadas.lbDataIni.value = Data Inicio
filtroRelatorioAgenciasNaoImportadas.lbDataFin.value = Data Final
#Relatório de Integração com Anti-Fraude
relatorioIntegracaoAntiFraudeController.lblDataIni.value = Período Inicial
relatorioIntegracaoAntiFraudeController.lblDataFin.value = Período Final
relatorioIntegracaoAntiFraudeController.lblEmpresa.value = Empresa
relatorioIntegracaoAntiFraudeController.lblStatusKonduto.value = Status Konduto
relatorioIntegracaoAntiFraudeController.MSG.informarStatusKonduto = Favor informar ao menos um status Konduto.
# Buscar Manutenção Pacote
busquedaManutencaoPacoteController.window.title = Pesquisar Venda Pacotes
busquedaManutencaoPacoteController.btnRefresh.tooltiptext = Atualizar

View File

@ -1,37 +1,51 @@
<?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="winRelatorioAgenciasNaoImportadas"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="winfiltroRelatorioIntegracaoAntiFraude"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winfiltroRelatorioIntegracaoAntiFraude"
apply="${relatorioRelatorioIntegracaoAntiFraude"Controller}"
contentStyle="overflow:auto" height="250px" width="560px"
border="normal">
<grid fixedLayout="true">
<window id="winfiltroRelatorioIntegracaoAntiFraude" apply="${relatorioIntegracaoAntiFraudeController}"
contentStyle="overflow:auto"
height="480x" width="500px" border="normal">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="25%" />
<column width="30%" />
<column width="20%" />
<column width="15%" />
<column width="30%" />
</columns>
<rows>
<row>
<label
value="${c:l('filtroRelatorioAgenciasNaoImportadas.lbDataIni.value')}" />
<datebox id="datInicial" width="90%"
format="dd/MM/yyyy" constraint="no empty"
maxlength="10" />
value="${c:l('relatorioIntegracaoAntiFraudeController.lblDataIni.value')}" />
<datebox id="dtInicial" width="100%" mold="rounded"
format="dd/MM/yyyy" maxlength="10" />
<label
value="${c:l('filtroRelatorioAgenciasNaoImportadas.lbDataFin.value')}" />
<datebox id="datFinal" width="90%"
format="dd/MM/yyyy" constraint="no empty"
maxlength="10" />
value="${c:l('relatorioIntegracaoAntiFraudeController.lblDataFin.value')}" />
<datebox id="dtFinal" width="100%" mold="rounded"
format="dd/MM/yyyy" maxlength="10" />
</row>
<row spans="1,3">
<label
value="${c:l('relatorioIntegracaoAntiFraudeController.lblEmpresa.value')}" />
<combobox id="cmbEmpresa" mold="rounded"
buttonVisible="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winfiltroRelatorioIntegracaoAntiFraude$composer.lsEmpresa}"
width="100%" />
</row>
<row spans="1, 3">
<label
value="${c:l('relatorioIntegracaoAntiFraudeController.lblStatusKonduto.value')}" />
<listbox id="kondutoList" rows="3" vflex="false"
width="100%" multiple="true" checkmark="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox">
</listbox>
</row>
</rows>
</grid>
<toolbar>
<button id="btnExecutarRelatorio" image="/gui/img/find.png"
label="${c:l('relatorio.lb.btnExecutarRelatorio')}" />