From 98e910c33bbcb0fd06344cf1c0f149f3136e3237 Mon Sep 17 00:00:00 2001 From: frederico Date: Tue, 23 Feb 2016 17:24:57 +0000 Subject: [PATCH] =?UTF-8?q?fixed=20bug=20#7112=20-=20altera=C3=A7=C3=B5es?= =?UTF-8?q?=20relat=C3=B3rio=20de=20tabela=20de=20pre=C3=A7os?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@53178 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../relatorios/impl/RelatorioTabelaPreco.java | 27 +- .../RelatorioTabelaPreco_es.properties | 3 +- .../RelatorioTabelaPreco_pt_BR.properties | 3 +- .../templates/RelatorioTabelaPreco.jasper | Bin 37005 -> 43669 bytes .../templates/RelatorioTabelaPreco.jrxml | 326 +++++++++++------- .../RelatorioTabelaPrecoController.java | 101 +++--- web/WEB-INF/i3-label_es_MX.label | 3 +- web/WEB-INF/i3-label_pt_BR.label | 3 +- .../relatorios/filtroRelatorioTabelaPreco.zul | 23 +- 9 files changed, 263 insertions(+), 226 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java index 5a200b814..437bf8420 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java @@ -2,14 +2,11 @@ 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.Relatorio; -import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; public class RelatorioTabelaPreco extends Relatorio { @@ -21,12 +18,8 @@ public class RelatorioTabelaPreco extends Relatorio { public void initDados() throws Exception { Connection conexao = this.relatorio.getConexao(); - Map parametros = this.relatorio.getParametros(); NamedParameterStatement stmt = new NamedParameterStatement(conexao, getSql()); - - stmt.setTimestamp("dataInicial", new Timestamp(DateUtil.inicioFecha((Date) parametros.get("DATA_INICIAL")).getTime())); - stmt.setTimestamp("dataFinal", new Timestamp(DateUtil.fimFecha((Date) parametros.get("DATA_FINAL")).getTime())); - + ResultSet rset = stmt.executeQuery(); while (rset.next()) { @@ -43,6 +36,8 @@ public class RelatorioTabelaPreco extends Relatorio { dataResult.put("linha", rset.getString("linha")); dataResult.put("empresa", rset.getString("empresa")); dataResult.put("dataVigencia", rset.getString("dataVigencia")); + dataResult.put("idLinha", rset.getInt("idLinha")); + dataResult.put("idVigencia", rset.getInt("idVigencia")); this.dados.add(dataResult); } @@ -69,7 +64,10 @@ public class RelatorioTabelaPreco extends Relatorio { sql.append(" cs.DESCCLASE as tipoClasse, "); sql.append(" r.DESCRUTA as linha, "); sql.append(" e.NOMBEMPRESA as empresa, "); - sql.append(" vt.FECINICIOVIGENCIA || ' à ' || vt.FECFINVIGENCIA as dataVigencia "); + sql.append(" vt.FECINICIOVIGENCIA || ' à ' || vt.FECFINVIGENCIA as dataVigencia, "); + sql.append(" vt.VIGENCIATARIFA_ID as idVigencia, "); + sql.append(" vt.FECINICIOVIGENCIA as dataVigenciaInicial, "); + sql.append(" r.RUTA_ID as idLinha "); sql.append("FROM TARIFA t "); sql.append("INNER JOIN PARADA pOrigem ON t.ORIGEN_ID = pOrigem.PARADA_ID "); sql.append("INNER JOIN PARADA pDestino ON t.DESTINO_ID = pDestino.PARADA_ID "); @@ -78,9 +76,12 @@ public class RelatorioTabelaPreco extends Relatorio { sql.append("INNER JOIN MARCA m ON m.MARCA_ID = t.MARCA_ID "); sql.append("INNER JOIN EMPRESA e ON e.EMPRESA_ID = m.EMPRESA_ID "); sql.append("INNER JOIN VIGENCIA_TARIFA vt ON vt.VIGENCIATARIFA_ID = t.VIGENCIATARIFA_ID "); - sql.append("WHERE (:dataInicial BETWEEN vt.FECINICIOVIGENCIA AND vt.FECFINVIGENCIA ) "); - sql.append("AND (:dataFinal BETWEEN vt.FECINICIOVIGENCIA AND vt.FECFINVIGENCIA ) "); - + sql.append("WHERE (1 = 1) AND ROWNUM < 101 "); + + if(parametros.get("VIGENCIA_ID") != null){ + sql.append(" AND vt.VIGENCIATARIFA_ID = " + parametros.get("VIGENCIA_ID")); + } + if (parametros.get("EMPRESA_ID") != null) { sql.append(" AND e.empresa_id = " + parametros.get("EMPRESA_ID")); } @@ -89,6 +90,8 @@ public class RelatorioTabelaPreco extends Relatorio { sql.append(" AND r.RUTA_ID = " + parametros.get("RUTA_ID")); } + sql.append( "ORDER BY r.RUTA_ID, vt.FECINICIOVIGENCIA "); + return sql.toString(); } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_es.properties index ca8a404a6..b501a1968 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_es.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_es.properties @@ -22,4 +22,5 @@ label.outros=Outros label.tipoClasse=Classe label.linha=Linha label.empresa=Empresa -label.dataVigencia=Vigência \ No newline at end of file +label.dataVigencia=Vigência +label.total = Total \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_pt_BR.properties index ca8a404a6..b501a1968 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_pt_BR.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioTabelaPreco_pt_BR.properties @@ -22,4 +22,5 @@ label.outros=Outros label.tipoClasse=Classe label.linha=Linha label.empresa=Empresa -label.dataVigencia=Vigência \ No newline at end of file +label.dataVigencia=Vigência +label.total = Total \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper index 6530b4717a31d6f1f7e3a552414b9fffa688355e..9252c709f1f0b8e4f16e9269e62923c8b0b4ab6b 100644 GIT binary patch literal 43669 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 SHX1u#P)+#o*`s}xlK&5iqM;=K diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jrxml index c33641763..d45db442e 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jrxml @@ -1,15 +1,20 @@ - - - + + + - - + + + + + + + @@ -24,11 +29,38 @@ - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="124"> <textField pattern="" isBlankWhenNull="false"> <reportElement uuid="136a5066-d141-4362-af36-0780f0d16542" mode="Transparent" x="0" y="0" width="457" height="35" forecolor="#000000" backcolor="#FFFFFF"/> <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> @@ -37,38 +69,6 @@ </textElement> <textFieldExpression><![CDATA[$P{NOME_RELATORIO}]]></textFieldExpression> </textField> - <textField pattern="" isBlankWhenNull="false"> - <reportElement uuid="3dca1764-758d-4e1c-80c0-85cc02e47813" mode="Transparent" x="0" y="42" width="46" height="15" forecolor="#000000" backcolor="#FFFFFF"/> - <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> - <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> - <paragraph lineSpacing="Single"/> - </textElement> - <textFieldExpression><![CDATA[$R{cabecalho.periodo}]]></textFieldExpression> - </textField> - <textField pattern="" isBlankWhenNull="false"> - <reportElement uuid="8948c0fc-e878-45e2-8505-7934add98ab9" mode="Transparent" x="116" y="42" width="10" height="15" forecolor="#000000" backcolor="#FFFFFF"/> - <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> - <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> - <paragraph lineSpacing="Single"/> - </textElement> - <textFieldExpression><![CDATA[$R{cabecalho.periodoA}]]></textFieldExpression> - </textField> - <textField pattern="dd/MM/yyyy" isBlankWhenNull="false"> - <reportElement uuid="7f1b9715-baaf-4e20-9a9d-a7ec4c696587" mode="Transparent" x="46" y="42" width="62" height="15" forecolor="#000000" backcolor="#FFFFFF"/> - <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> - <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> - <paragraph lineSpacing="Single"/> - </textElement> - <textFieldExpression><![CDATA[$P{DATA_INICIAL}]]></textFieldExpression> - </textField> - <textField pattern="dd/MM/yyyy" isBlankWhenNull="false"> - <reportElement uuid="64632058-9466-479c-ae28-0a11c9ed2c7f" mode="Transparent" x="132" y="42" width="62" height="15" forecolor="#000000" backcolor="#FFFFFF"/> - <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> - <font fontName="SansSerif" size="9" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> - <paragraph lineSpacing="Single"/> - </textElement> - <textFieldExpression><![CDATA[$P{DATA_FINAL}]]></textFieldExpression> - </textField> <textField> <reportElement uuid="a9d471fb-1e1d-4d9a-9783-bbf988931192" x="615" y="0" width="100" height="25"/> <textElement textAlignment="Right"> @@ -108,27 +108,107 @@ </textElement> <textFieldExpression><![CDATA[$R{cabecalho.impressorPor}+" "+$P{USUARIO}]]></textFieldExpression> </textField> - <textField> - <reportElement uuid="b29d0494-2695-420b-bdc1-b13c08bdbcda" x="0" y="59" width="801" height="14"/> - <box leftPadding="2"> - <topPen lineWidth="1.0"/> - <leftPen lineWidth="1.0"/> - <bottomPen lineWidth="1.0"/> - <rightPen lineWidth="1.0"/> + <textField isStretchWithOverflow="true"> + <reportElement uuid="64027797-62dc-4e02-8e40-958ac1511e0a" x="0" y="57" width="102" height="18" isPrintWhenDetailOverflows="true"/> + <box> + <bottomPen lineWidth="0.0"/> </box> - <textElement verticalAlignment="Middle"> - <font size="8"/> + <textElement textAlignment="Right" verticalAlignment="Top"> + <font size="10" isBold="true" pdfFontName="Helvetica-Bold"/> </textElement> - <textFieldExpression><![CDATA[$P{FILTROS}]]></textFieldExpression> + <textFieldExpression><![CDATA[$R{label.empresa} + ":"]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="bcd47f18-94dc-4d33-96db-6d89795188d3" x="102" y="57" width="513" height="18"/> + <textElement/> + <textFieldExpression><![CDATA[$P{EMPRESA_ID} == null ? +"Todas" : +($P{EMPRESA_ID}.toString() + " - " + $P{EMPRESA}) ]]></textFieldExpression> + </textField> + <textField isStretchWithOverflow="true"> + <reportElement uuid="049832ef-f634-42f9-95b1-ac2e1fe23b10" x="0" y="75" width="102" height="18" isPrintWhenDetailOverflows="true"/> + <box> + <bottomPen lineWidth="0.0"/> + </box> + <textElement textAlignment="Right" verticalAlignment="Top"> + <font size="10" isBold="true" pdfFontName="Helvetica-Bold"/> + </textElement> + <textFieldExpression><![CDATA[$R{label.linha} + ":"]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="df6b8946-988c-479c-8eeb-c8d40c94734b" x="102" y="75" width="511" height="18"/> + <textElement/> + <textFieldExpression><![CDATA[$P{RUTA_ID} == null ? +"Todas" : +($P{RUTA_ID}.toString() + " - " + $P{RUTA})]]></textFieldExpression> + </textField> + <textField isStretchWithOverflow="true"> + <reportElement uuid="2d048310-1ec5-4711-b402-75ef3d3500d4" x="0" y="93" width="102" height="18" isPrintWhenDetailOverflows="true"/> + <box> + <bottomPen lineWidth="0.0"/> + </box> + <textElement textAlignment="Right" verticalAlignment="Top"> + <font size="10" isBold="true" pdfFontName="Helvetica-Bold"/> + </textElement> + <textFieldExpression><![CDATA[$R{label.dataVigencia} + ":"]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy"> + <reportElement uuid="40c47b73-ef86-4b76-a4bb-ec284d4e6f59" x="102" y="93" width="56" height="18"> + <printWhenExpression><![CDATA[new Boolean($P{VIGENCIA_ID} != null)]]></printWhenExpression> + </reportElement> + <textElement/> + <textFieldExpression><![CDATA[$P{VIGENCIA_INICIAL}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy"> + <reportElement uuid="12564f32-d986-46a6-a184-23b23ba50bcb" x="176" y="93" width="56" height="18"> + <printWhenExpression><![CDATA[new Boolean($P{VIGENCIA_ID} != null)]]></printWhenExpression> + </reportElement> + <textElement/> + <textFieldExpression><![CDATA[$P{VIGENCIA_FINAL}]]></textFieldExpression> + </textField> + <staticText> + <reportElement uuid="bdfc1a2c-9e77-418f-8169-50c67ad7f116" x="158" y="93" width="18" height="18"> + <printWhenExpression><![CDATA[new Boolean($P{VIGENCIA_ID} != null)]]></printWhenExpression> + </reportElement> + <textElement textAlignment="Center"/> + <text><![CDATA[à]]></text> + </staticText> + <staticText> + <reportElement uuid="1bba53bd-7d81-491b-b1de-11a0c570c5c7" x="102" y="93" width="130" height="18"> + <printWhenExpression><![CDATA[new Boolean($P{VIGENCIA_ID} == null)]]></printWhenExpression> + </reportElement> + <textElement/> + <text><![CDATA[Todas]]></text> + </staticText> + <textField> + <reportElement uuid="82e75550-fae7-4cea-acf9-f9f56f083400" x="688" y="93" width="93" height="18"> + <printWhenExpression><![CDATA[false]]></printWhenExpression> + </reportElement> + <box> + <topPen lineWidth="1.0"/> + <bottomPen lineWidth="0.0"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Top"> + <font size="10"/> + </textElement> + <textFieldExpression><![CDATA[$R{label.empresa}]]></textFieldExpression> + </textField> + <textField isStretchWithOverflow="true"> + <reportElement uuid="abf746f7-be60-48af-9882-6723c50f4ae1" x="688" y="75" width="93" height="20"> + <printWhenExpression><![CDATA[false]]></printWhenExpression> + </reportElement> + <textElement textAlignment="Center"/> + <textFieldExpression><![CDATA[$F{empresa}]]></textFieldExpression> </textField> </band> - </pageHeader> + - + - + - + + @@ -136,29 +216,10 @@ - + - - - - - - - - - - - - - - - - - - - - - + + @@ -166,9 +227,10 @@ - + - + + @@ -176,9 +238,10 @@ - + - + + @@ -186,20 +249,11 @@ - - - - - - - - - - - + - + + @@ -208,9 +262,10 @@ - + - + + @@ -218,9 +273,10 @@ - + - + + @@ -228,83 +284,87 @@ - + - + + - + + + + + + + + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - + + + + - - - - + - + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTabelaPrecoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTabelaPrecoController.java index 2aea0c66d..5a82aea0f 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTabelaPrecoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTabelaPrecoController.java @@ -1,6 +1,5 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; -import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -11,18 +10,18 @@ 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.Comboitem; -import org.zkoss.zul.Datebox; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Ruta; +import com.rjconsultores.ventaboletos.entidad.VigenciaTarifa; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioTabelaPreco; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.EmpresaService; import com.rjconsultores.ventaboletos.service.RutaService; +import com.rjconsultores.ventaboletos.service.VigenciaTarifaService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @@ -33,13 +32,15 @@ public class RelatorioTabelaPrecoController extends MyGenericForwardComposer { private static final long serialVersionUID = 1L; - private Datebox datInicial; - private Datebox datFinal; + private MyComboboxEstandar cmbVigencia; + private List lsVigencia; private MyComboboxEstandar cmbEmpresa; private List lsEmpresa; private MyComboboxEstandar cmbRuta; private List lsRuta; + @Autowired + private VigenciaTarifaService vigenciaTarifaService; @Autowired private EmpresaService empresaService; @Autowired @@ -49,6 +50,7 @@ public class RelatorioTabelaPrecoController extends MyGenericForwardComposer { @Override public void doAfterCompose(Component comp) throws Exception { + lsVigencia = vigenciaTarifaService.obtenerTodos(); lsEmpresa = empresaService.obtenerTodos(); lsRuta = rutaService.obtenerTodos(); super.doAfterCompose(comp); @@ -61,72 +63,45 @@ public class RelatorioTabelaPrecoController extends MyGenericForwardComposer { @SuppressWarnings({ "rawtypes", "unchecked" }) private void executarRelatorio() throws Exception { { - if (datInicial != null && datFinal != null && datFinal.getValue().compareTo(datInicial.getValue()) < 0) { - try { - Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), - Labels.getLabel("relatorioTabelaPrecoController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - } catch (InterruptedException ex) { - ex.printStackTrace(); - } - } else - { Relatorio relatorio; Map parametros = new HashMap(); - - StringBuilder filtro = new StringBuilder(); - - filtro.append("Início período: "); - Calendar cal = Calendar.getInstance(); - cal.setTime(datInicial.getValue()); - filtro.append(cal.get(Calendar.DATE) + "/"); - filtro.append((cal.get(Calendar.MONTH) + 1) + "/"); - filtro.append(cal.get(Calendar.YEAR) + "; "); - - filtro.append("Fim período: "); - cal.setTime(datFinal.getValue()); - filtro.append(cal.get(Calendar.DATE) + "/"); - filtro.append((cal.get(Calendar.MONTH) + 1) + "/"); - filtro.append(cal.get(Calendar.YEAR) + "; "); - - parametros.put("DATA_INICIAL", (java.util.Date) datInicial.getValue()); - parametros.put("DATA_FINAL", (java.util.Date) datFinal.getValue()); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioTabelaPrecoController.window.title")); parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); parametros.put("USUARIO_NOME", UsuarioLogado.getUsuarioLogado().getNombusuario()); - filtro.append("Empresa: "); + Comboitem itemVigencia = cmbVigencia.getSelectedItem(); + if(itemVigencia != null){ + VigenciaTarifa vigencia = (VigenciaTarifa) itemVigencia.getValue(); + parametros.put("VIGENCIA_ID", vigencia.getVigenciatarifaId()); + parametros.put("VIGENCIA_INICIAL", vigencia.getFeciniciovigencia()); + parametros.put("VIGENCIA_FINAL", vigencia.getFecfinvigencia()); + } + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); if (itemEmpresa != null) { Empresa empresa = (Empresa) itemEmpresa.getValue(); parametros.put("EMPRESA_ID", empresa.getEmpresaId()); - filtro.append(empresa.getNombempresa() + ";"); - } else { - filtro.append(" Todas;"); + parametros.put("EMPRESA", empresa.getNombempresa()); } - filtro.append("Linha: "); Comboitem itemRuta = cmbRuta.getSelectedItem(); if (itemRuta != null) { Ruta ruta = (Ruta) itemRuta.getValue(); parametros.put("RUTA_ID", ruta.getRutaId()); - filtro.append(ruta.getDescruta() + ";"); - } else { - filtro.append(" Todas;"); + parametros.put("RUTA", ruta.getDescruta()); } - - parametros.put("FILTROS", filtro.toString()); - + relatorio = new RelatorioTabelaPreco(parametros, dataSourceRead.getConnection()); - + Map args = new HashMap(); args.put("relatorio", relatorio); openWindow("/component/reportView.zul", Labels.getLabel("relatorioTabelaPrecoController.window.title"), args, MODAL); } - } + } public void onClick$btnExecutarRelatorio(Event ev) throws Exception{ @@ -134,22 +109,6 @@ public class RelatorioTabelaPrecoController extends MyGenericForwardComposer { } - public Datebox getDatInicial() { - return datInicial; - } - - public void setDatInicial(Datebox datInicial) { - this.datInicial = datInicial; - } - - public Datebox getDatFinal() { - return datFinal; - } - - public void setDatFinal(Datebox datFinal) { - this.datFinal = datFinal; - } - public List getLsEmpresa() { return lsEmpresa; } @@ -180,6 +139,24 @@ public class RelatorioTabelaPrecoController extends MyGenericForwardComposer { public void setLsRuta(List lsRuta) { this.lsRuta = lsRuta; + } + + public MyComboboxEstandar getCmbVigencia() { + return cmbVigencia; + } + + public void setCmbVigencia(MyComboboxEstandar cmbVigencia) { + this.cmbVigencia = cmbVigencia; + } + + public List getLsVigencia() { + return lsVigencia; + } + + public void setLsVigencia(List lsVigencia) { + this.lsVigencia = lsVigencia; } + + } diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 2bf218037..f6ecb12d8 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4191,8 +4191,7 @@ relatorioCancelamentoTransacaoController.lbBilheteiro.value = Bilheteiro #Relatorio de Tabela Preco relatorioTabelaPrecoController.window.title = Relatório de Tabela de Preços -relatorioTabelaPrecoController.dataInicial.value = Data Inicial -relatorioTabelaPrecoController.dataFinal.value = Data Final +relatorioTabelaPrecoController.vigencia = Vigência relatorioTabelaPrecoController.lbEmpresa.value = Empresa relatorioTabelaPrecoController.lbLinha.value = Linha diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index d5aefafb0..35e32e81a 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -4253,8 +4253,7 @@ relatorioCancelamentoTransacaoController.lbBilheteiro.value = Bilheteiro #Relatorio de Tabela Preco relatorioTabelaPrecoController.window.title = Relatório de Tabela de Preços -relatorioTabelaPrecoController.dataInicial.value = Data Inicial -relatorioTabelaPrecoController.dataFinal.value = Data Final +relatorioTabelaPrecoController.vigencia = Vigência relatorioTabelaPrecoController.lbEmpresa.value = Empresa relatorioTabelaPrecoController.lbLinha.value = Linha diff --git a/web/gui/relatorios/filtroRelatorioTabelaPreco.zul b/web/gui/relatorios/filtroRelatorioTabelaPreco.zul index df678efd7..a2b0b0da2 100644 --- a/web/gui/relatorios/filtroRelatorioTabelaPreco.zul +++ b/web/gui/relatorios/filtroRelatorioTabelaPreco.zul @@ -7,7 +7,7 @@ + height="150px" width="550px" border="normal"> @@ -16,19 +16,16 @@ - + + value="${c:l('relatorioTabelaPrecoController.vigencia')}" /> + + +