diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioOrigemDestino.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioOrigemDestino.java index 6ff801f74..d9c943afc 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioOrigemDestino.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioOrigemDestino.java @@ -44,7 +44,7 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" SELECT TRAMOS.*, NVL(SOMA.RECEITA, 0) RECEITA "); sql.append(" FROM "); sql.append(" ( "); - sql.append(" SELECT "); + sql.append(" SELECT "); sql.append(" CA.CORRIDA_ID CORRIDA_ID, "); sql.append(" CA.FECCORRIDA FECCORRIDA, "); sql.append(" O.CVEPARADA CVE_ORIGEM, "); @@ -52,11 +52,11 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" D.CVEPARADA CVE_DESTINO, "); sql.append(" D.DESCPARADA DESTINO, "); sql.append(" SUM(CA.PRECIOPAGADO) RECEITA "); - sql.append(" FROM CAJA CA "); + sql.append(" FROM BOLETO CA "); sql.append(" INNER JOIN PARADA O ON O.PARADA_ID = CA.ORIGEN_ID "); sql.append(" INNER JOIN PARADA D ON D.PARADA_ID = CA.DESTINO_ID "); sql.append(" WHERE CA.ACTIVO = 1 "); - sql.append(" AND ca.indreimpresion = 0 "); + sql.append(" AND CA.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND CA.PRECIOBASE IS NOT NULL "); if (bilhetesGratuitos) { sql.append(" AND CA.PRECIOBASE >= 0 "); @@ -109,11 +109,11 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" D.CVEPARADA CVE_DESTINO, "); sql.append(" D.DESCPARADA DESTINO, "); sql.append(" SUM(CA.PRECIOPAGADO) RECEITA "); - sql.append(" FROM CAJA CA "); + sql.append(" FROM BOLETO CA "); sql.append(" INNER JOIN PARADA O ON O.PARADA_ID = CA.ORIGEN_ID "); sql.append(" INNER JOIN PARADA D ON D.PARADA_ID = CA.DESTINO_ID "); sql.append(" WHERE CA.ACTIVO = 1 "); - sql.append(" AND ca.indreimpresion = 0 "); + sql.append(" AND CA.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND CA.PRECIOBASE IS NOT NULL "); if (bilhetesGratuitos) { sql.append(" AND CA.PRECIOBASE >= 0 "); @@ -242,6 +242,12 @@ public class RelatorioOrigemDestino extends Relatorio { StringBuilder sql = new StringBuilder(); sql.append(" SELECT "); sql.append(" resultado.*, "); + sql.append(" ( "); + sql.append(" SELECT COUNT(*) "); + sql.append(" FROM CORRIDA CO "); + sql.append(" WHERE CO.CORRIDA_ID=RESULTADO.CORRIDA_ID "); + sql.append(" AND CO.FECCORRIDA BETWEEN to_date('").append(dataDe).append("','dd/mm/yyyy HH24:mi:ss') AND to_date('").append(dataAte).append("','dd/mm/yyyy HH24:mi:ss') "); + sql.append(" ) VIAGENS, "); sql.append(" SUM(TR.CANTKMREAL) KM_CORRIDA, "); sql.append(" ( "); sql.append(" SELECT MAX(DA.CANTASIENTOS) "); @@ -250,16 +256,16 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" INNER JOIN DIAGRAMA_AUTOBUS DA ON DA.DIAGRAMAAUTOBUS_ID = ROL.DIAGRAMAAUTOBUS_ID "); sql.append(" WHERE CO.CORRIDA_ID=RESULTADO.CORRIDA_ID "); sql.append(" AND CO.FECCORRIDA BETWEEN to_date('").append(dataDe).append("','dd/mm/yyyy HH24:mi:ss') AND to_date('").append(dataAte).append("','dd/mm/yyyy HH24:mi:ss') "); - sql.append(" GROUP BY DA.DIAGRAMAAUTOBUS_ID "); + sql.append(" GROUP BY CO.CORRIDA_ID "); sql.append(" ) DISPONIBILIDADE, "); sql.append(" ( SELECT COUNT(*) "); - sql.append(" FROM caja ca "); + sql.append(" FROM BOLETO ca "); sql.append(" INNER JOIN CORRIDA CO ON (CO.CORRIDA_ID = CA.CORRIDA_ID AND CO.FECCORRIDA = CA.FECCORRIDA) "); sql.append(" WHERE CA.ACTIVO = 1 "); sql.append(" AND CO.EMPRESACORRIDA_ID IN (").append(empresaIds).append(") "); sql.append(" AND CA.CORRIDA_ID = RESULTADO.CORRIDA_ID "); sql.append(" AND CA.FECCORRIDA BETWEEN to_date('").append(dataDe).append("','dd/mm/yyyy HH24:mi:ss') AND to_date('").append(dataAte).append("','dd/mm/yyyy HH24:mi:ss') "); - sql.append(" AND ca.indreimpresion = 0 "); + sql.append(" AND CA.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND CA.PRECIOBASE IS NOT NULL "); if (bilhetesGratuitos) { sql.append(" AND CA.PRECIOBASE >= 0 "); @@ -267,16 +273,15 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" AND CA.PRECIOBASE > 0 "); } sql.append(" ) ABSOLUTO_TOTAL_CORRIDA, "); - sql.append(" (RESULTADO.KM_TRAMO/SUM(TR.CANTKMREAL))*"); sql.append(" ( SELECT COUNT(*) "); - sql.append(" FROM caja ca "); + sql.append(" FROM BOLETO ca "); sql.append(" INNER JOIN CORRIDA CO ON (CO.CORRIDA_ID = CA.CORRIDA_ID AND CO.FECCORRIDA = CA.FECCORRIDA) "); sql.append(" WHERE CA.ACTIVO = 1 "); sql.append(" AND CO.EMPRESACORRIDA_ID IN (").append(empresaIds).append(") "); sql.append(" AND CA.CORRIDA_ID = RESULTADO.CORRIDA_ID "); sql.append(" AND CA.FECCORRIDA BETWEEN to_date('").append(dataDe).append("','dd/mm/yyyy HH24:mi:ss') AND to_date('").append(dataAte).append("','dd/mm/yyyy HH24:mi:ss') "); - sql.append(" AND ca.indreimpresion = 0 "); + sql.append(" AND CA.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND CA.PRECIOBASE IS NOT NULL "); if (bilhetesGratuitos) { sql.append(" AND CA.PRECIOBASE >= 0 "); @@ -300,7 +305,7 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" COUNT(*) ABSOLUTOS, "); sql.append(" SUM(CA.PRECIOPAGADO) RECEITA, "); sql.append(" CA.PRECIOBASE "); - sql.append(" FROM CAJA CA "); + sql.append(" FROM BOLETO CA "); sql.append(" INNER JOIN PARADA ORI ON ORI.PARADA_ID = CA.ORIGEN_ID "); sql.append(" INNER JOIN PARADA DES ON DES.PARADA_ID = CA.DESTINO_ID "); sql.append(" INNER JOIN CORRIDA CO ON (CO.CORRIDA_ID = CA.CORRIDA_ID AND CO.FECCORRIDA = CA.FECCORRIDA) "); @@ -316,7 +321,7 @@ public class RelatorioOrigemDestino extends Relatorio { sql.append(" AND CA.CORRIDA_ID IN (").append(corridasIds).append(") "); } sql.append(" AND CA.FECCORRIDA BETWEEN to_date('").append(dataDe).append("','dd/mm/yyyy HH24:mi:ss') AND to_date('").append(dataAte).append("','dd/mm/yyyy HH24:mi:ss') "); - sql.append(" AND ca.indreimpresion = 0 "); + sql.append(" AND CA.MOTIVOCANCELACION_ID IS NULL "); sql.append(" AND CA.PRECIOBASE IS NOT NULL "); if (bilhetesGratuitos) { sql.append(" AND CA.PRECIOBASE >= 0 "); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jasper index 7aed6321d..0f2731698 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jrxml index e4a84bfab..08c8f6f5c 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioOrigemDestino.jrxml @@ -33,9 +33,10 @@ - + + @@ -58,7 +59,7 @@ - + @@ -69,11 +70,8 @@ - - - - + @@ -81,11 +79,14 @@ - - + + - + + + + @@ -289,17 +290,12 @@ - + 0?new BigDecimal("100.00"):$V{sum_por_equivalente}]]> - - - - - - + 0?new BigDecimal("100.00"):$V{sum_porc_abs}]]> @@ -374,17 +370,12 @@ - + - - - - - - + @@ -481,7 +472,7 @@ - + @@ -503,11 +494,6 @@ - - - - - @@ -523,7 +509,17 @@ - + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioController.java index bd05f1c74..dd7c2982a 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioController.java @@ -6,6 +6,8 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; import java.io.ByteArrayInputStream; import java.io.InputStream; +import java.text.SimpleDateFormat; +import java.util.Calendar; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; @@ -18,6 +20,7 @@ import org.zkoss.zul.Filedownload; import org.zkoss.zul.Iframe; import org.zkoss.zul.Messagebox; import org.zkoss.zul.Toolbarbutton; + import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.relatorios.utilitarios.SaidaRelatorio; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @@ -30,6 +33,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @Scope("prototype") public class RelatorioController extends MyGenericForwardComposer { + private static final long serialVersionUID = 1L; private Div divResultadoRelatorio; private Iframe iframeRelatorio; private Toolbarbutton btnSalvarPDF; @@ -37,6 +41,7 @@ public class RelatorioController extends MyGenericForwardComposer { private AMedia conteudoRelatorioPDF; private AMedia conteudoRelatorioXLS; private Relatorio relatorio; + private String nomeRelatorioDownload; /** * @return the btnSalvarPDF @@ -87,31 +92,33 @@ public class RelatorioController extends MyGenericForwardComposer { @Override public void doAfterCompose(Component comp) throws Exception { this.relatorio = (Relatorio) Executions.getCurrent().getArg().get("relatorio"); - if (relatorio.getInfoMsg().size() > 0) - { + if (relatorio.getInfoMsg().size() > 0) { String msg = ""; for (String msgItem : relatorio.getInfoMsg()) - msg = msg.concat(msgItem+"\n"); + msg = msg.concat(msgItem + "\n"); Messagebox.show( msg, "", Messagebox.OK, Messagebox.INFORMATION); } + super.doAfterCompose(comp); final InputStream mediais = new ByteArrayInputStream(this.relatorio.getConteudo(SaidaRelatorio.PDF)); - conteudoRelatorioPDF = new AMedia("relatorio.pdf", "pdf", null, mediais); - iframeRelatorio.setContent(conteudoRelatorioPDF); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd_HH-mm"); + nomeRelatorioDownload = relatorio.getNome() + "_" + sdf.format(Calendar.getInstance().getTime()); + + conteudoRelatorioPDF = new AMedia(nomeRelatorioDownload + ".pdf", "pdf", null, mediais); + iframeRelatorio.setContent(conteudoRelatorioPDF); } public void onClick$btnSalvarPDF(Event ev) { - Filedownload.save(conteudoRelatorioPDF.getStreamData(), "application/pdf", "relatorio.pdf"); + Filedownload.save(conteudoRelatorioPDF.getStreamData(), "application/pdf", nomeRelatorioDownload + ".pdf"); } public void onClick$btnSalvarXLS(Event ev) throws Exception { final InputStream mediais = new ByteArrayInputStream(this.relatorio.getConteudo(SaidaRelatorio.XLS)); conteudoRelatorioXLS = new AMedia("relatorio.xls", "xls", null, mediais); - Filedownload.save(conteudoRelatorioXLS.getStreamData(), "application/xls", "relatorio.xls"); + Filedownload.save(conteudoRelatorioXLS.getStreamData(), "application/xls", nomeRelatorioDownload + ".xls"); } - } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioOrigemDestinoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioOrigemDestinoController.java index 7b6c767e1..fd61b8f70 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioOrigemDestinoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioOrigemDestinoController.java @@ -21,16 +21,22 @@ import org.zkoss.zul.Bandbox; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Combobox; import org.zkoss.zul.Comboitem; +import org.zkoss.zul.ComboitemRenderer; import org.zkoss.zul.Datebox; import org.zkoss.zul.Intbox; import org.zkoss.zul.Paging; import com.rjconsultores.ventaboletos.entidad.Corrida; import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.Parada; +import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioOrigemDestino; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.RutaService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParada; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParadaCve; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; @@ -50,17 +56,34 @@ public class RelatorioOrigemDestinoController extends MyGenericForwardComposer { private transient PagedListWrapper plwCorrida; @Autowired private EmpresaService empresaService; + @Autowired + private RutaService rutaService; private List lsEmpresa; private Datebox datInicial; private Datebox datFinal; private Intbox txtCorridaId; + private Intbox txtCodLinha; private Paging pagingCorrida; private MyListbox corridaList; private MyListbox corridaSelList; private Combobox cmbEmpresa; + private Combobox cmbRuta; private Bandbox bbPesquisaCorrida; private Checkbox chkBilhetesGratuitos; private Checkbox chkTrechoSemMovimento; + private List lsRuta; + private MyComboboxParada cmbParadaOrigem; + private MyComboboxParadaCve cmbParadaOrigemCve; + private MyComboboxParada cmbParadaDestino; + private MyComboboxParadaCve cmbParadaDestinoCve; + + public List getLsRuta() { + return lsRuta; + } + + public void setLsRuta(List lsRuta) { + this.lsRuta = lsRuta; + } public List getLsEmpresa() { return lsEmpresa; @@ -73,16 +96,60 @@ public class RelatorioOrigemDestinoController extends MyGenericForwardComposer { @Override public void doAfterCompose(Component comp) throws Exception { lsEmpresa = empresaService.obtenerTodos(); + lsRuta = rutaService.obtenerTodos(); super.doAfterCompose(comp); corridaList.setItemRenderer(new RenderRelatorioOrigemDestinoCorrida()); corridaSelList.setItemRenderer(new RenderRelatorioOrigemDestinoCorridaSelecionadas()); + + cmbParadaOrigemCve.setItemRenderer(new ComboitemRenderer() { + @Override + public void render(Comboitem cmbtm, Object o) throws Exception { + Parada parada = (Parada) o; + + cmbtm.setLabel(parada.getCveparada()); + cmbtm.setValue(parada); + } + }); + + cmbParadaDestinoCve.setItemRenderer(new ComboitemRenderer() { + @Override + public void render(Comboitem cmbtm, Object o) throws Exception { + Parada parada = (Parada) o; + + cmbtm.setLabel(parada.getCveparada()); + cmbtm.setValue(parada); + } + }); } private void executarPesquisa() { HibernateSearchObject rutaBusqueda = new HibernateSearchObject(Corrida.class, pagingCorrida.getPageSize()); + Comboitem cbiOrigem = cmbParadaOrigem.getSelectedItem(); + if (cbiOrigem != null) { + Parada origem = (Parada) cbiOrigem.getValue(); + rutaBusqueda.addFilterEqual("origem", origem); + } + + Comboitem cbiDestino = cmbParadaDestino.getSelectedItem(); + if (cbiDestino != null) { + Parada destino = (Parada) cbiDestino.getValue(); + rutaBusqueda.addFilterEqual("destino", destino); + } + + Comboitem cbiRuta = cmbRuta.getSelectedItem(); + if (cbiRuta != null) { + Ruta ruta = (Ruta) cbiRuta.getValue(); + rutaBusqueda.addFilterEqual("ruta", ruta); + } + + Integer codLinha = txtCodLinha.getValue(); + if (codLinha != null) { + rutaBusqueda.addFilterEqual("ruta.numRuta", codLinha); + } + Date dataDe = DateUtil.normalizar(datInicial.getValue()); Date dataAte = DateUtil.normalizar(datFinal.getValue()); @@ -109,6 +176,20 @@ public class RelatorioOrigemDestinoController extends MyGenericForwardComposer { corridaList.setData(new ArrayList()); bbPesquisaCorrida.setText(""); + cmbParadaOrigem.setText(""); + cmbParadaOrigemCve.setText(""); + cmbParadaDestino.setText(""); + cmbParadaDestinoCve.setText(""); + cmbRuta.setText(""); + + cmbParadaOrigem.setSelectedItem(null); + cmbParadaOrigemCve.setSelectedItem(null); + cmbParadaDestino.setSelectedItem(null); + cmbParadaDestinoCve.setSelectedItem(null); + cmbRuta.setSelectedItem(null); + + txtCorridaId.setValue(null); + txtCodLinha.setValue(null); } public void onClick$btnPesquisa(Event ev) { @@ -133,57 +214,73 @@ public class RelatorioOrigemDestinoController extends MyGenericForwardComposer { Date dataDe = datInicial.getValue(); Date dataAte = datFinal.getValue(); - Boolean trechoSemMovimento = chkTrechoSemMovimento.isChecked(); - if ((trechoSemMovimento) && (lsCorridasSelecionadas.isEmpty())) { - Messagebox.show(Labels.getLabel("relatorioOrigemDestinoController.MSG.trechoSemMovimento"), - Labels.getLabel("relatorioOrigemDestinoController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); + Map parametros = new HashMap(); + parametros.put("BILHETES_GRATUITOS", chkBilhetesGratuitos.isChecked()); + parametros.put("TRECHOS_SEM_MOVIMENTO", chkTrechoSemMovimento.isChecked()); + parametros.put("DATA_DE", sdf.format(dataDe)); + parametros.put("DATA_ATE", sdf.format(dataAte)); + parametros.put("DATA_DE_WHERE", sdf.format(dataDe) + " 00:00:00"); + parametros.put("DATA_ATE_WHERE", sdf.format(dataAte) + " 23:59:59"); + + Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem(); + String empresaId; + String empresas; + if (cbiEmpresa != null) { + Empresa empresa = (Empresa) cbiEmpresa.getValue(); + empresaId = empresa.getEmpresaId().toString(); + empresas = empresa.getNombempresa(); } else { - Map parametros = new HashMap(); - parametros.put("BILHETES_GRATUITOS", chkBilhetesGratuitos.isChecked()); - parametros.put("TRECHOS_SEM_MOVIMENTO", chkTrechoSemMovimento.isChecked()); - parametros.put("DATA_DE", sdf.format(dataDe)); - parametros.put("DATA_ATE", sdf.format(dataAte)); - parametros.put("DATA_DE_WHERE", sdf.format(dataDe) + " 00:00:00"); - parametros.put("DATA_ATE_WHERE", sdf.format(dataAte) + " 23:59:59"); - - Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem(); - String empresaId; - String empresas; - if (cbiEmpresa != null) { - Empresa empresa = (Empresa) cbiEmpresa.getValue(); - empresaId = empresa.getEmpresaId().toString(); - empresas = empresa.getNombempresa(); - } else { - empresaId = "0"; - empresas = ""; - for (int i = 0; i < lsEmpresa.size(); i++) { - Empresa empresa = lsEmpresa.get(i); - empresaId = empresaId + ", " + empresa.getEmpresaId(); - empresas = empresas + ", " + empresa.getNombempresa(); - } + empresaId = "0"; + empresas = ""; + for (int i = 0; i < lsEmpresa.size(); i++) { + Empresa empresa = lsEmpresa.get(i); + empresaId = empresaId + ", " + empresa.getEmpresaId(); + empresas = empresas + ", " + empresa.getNombempresa(); } - parametros.put("EMPRESA_IDS", empresaId); - parametros.put("EMPRESAS", empresas); + } + parametros.put("EMPRESA_IDS", empresaId); + parametros.put("EMPRESAS", empresas); - String corridaIds = ""; - if (!lsCorridasSelecionadas.isEmpty()) { - for (int i = 0; i < lsCorridasSelecionadas.size(); i++) { - Corrida corrida = lsCorridasSelecionadas.get(i); - corridaIds = corridaIds + ", " + corrida.getId().getCorridaId(); - } - } else { - corridaIds = "TTodas"; + String corridaIds = ""; + if (!lsCorridasSelecionadas.isEmpty()) { + for (int i = 0; i < lsCorridasSelecionadas.size(); i++) { + Corrida corrida = lsCorridasSelecionadas.get(i); + corridaIds = corridaIds + ", " + corrida.getId().getCorridaId(); } - parametros.put("CORRIDAS_SELECIONADAS", corridaIds.substring(1, corridaIds.length())); + } else { + corridaIds = "TTodas"; + } + parametros.put("CORRIDAS_SELECIONADAS", corridaIds.substring(1, corridaIds.length())); - Relatorio relatorio = new RelatorioOrigemDestino(parametros, dataSource.getConnection()); + Relatorio relatorio = new RelatorioOrigemDestino(parametros, dataSource.getConnection()); - Map args = new HashMap(); - args.put("relatorio", relatorio); + Map args = new HashMap(); + args.put("relatorio", relatorio); - openWindow("/component/reportView.zul", + openWindow("/component/reportView.zul", Labels.getLabel("relatorioOrigemDestinoController.window.title"), args, MODAL); + } + + public void onSelect$cmbParadaOrigemCve(Event ev) { + if (cmbParadaOrigemCve.getSelectedItem() != null) { + cmbParadaOrigem.setComboItemByParada((Parada) cmbParadaOrigemCve.getSelectedItem().getValue()); + } + } + + public void onSelect$cmbParadaOrigem(Event ev) { + if (cmbParadaOrigem.getSelectedItem() != null) + cmbParadaOrigemCve.setComboItemByParada((Parada) cmbParadaOrigem.getSelectedItem().getValue()); + } + + public void onSelect$cmbParadaDestinoCve(Event ev) { + if (cmbParadaDestinoCve.getSelectedItem() != null) { + cmbParadaDestino.setComboItemByParada((Parada) cmbParadaDestinoCve.getSelectedItem().getValue()); + } + } + + public void onSelect$cmbParadaDestino(Event ev) { + if (cmbParadaDestino.getSelectedItem() != null) { + cmbParadaDestinoCve.setComboItemByParada((Parada) cmbParadaDestino.getSelectedItem().getValue()); } } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderRelatorioOrigemDestinoCorrida.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderRelatorioOrigemDestinoCorrida.java index a98a338fa..0bf823e07 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderRelatorioOrigemDestinoCorrida.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderRelatorioOrigemDestinoCorrida.java @@ -31,7 +31,12 @@ public class RenderRelatorioOrigemDestinoCorrida implements ListitemRenderer { lc = new Listcell(corrida.getDestino().getDescparada()); lc.setParent(lstm); - lc = new Listcell(corrida.getRuta().getRutaId().toString()); + Integer numRuta = corrida.getRuta().getNumRuta(); + if (numRuta != null) { + lc = new Listcell(numRuta.toString()); + } else { + lc = new Listcell(""); + } lc.setParent(lstm); lc = new Listcell(corrida.getRuta().getDescruta()); diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index ff9ab4978..17895e80e 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -7,7 +7,7 @@ # . . = XXX #Versao do VentaBoleto: -versao = ADM_20130821_1RC205 +versao = ADM_20130823_1RC206 # MSG Defaut: MSG.CONSTRAINT.PORCENTAGEM = Os valores devem estar entre 0 e 100 @@ -4437,13 +4437,14 @@ relatorioPassageirosViajarController.lhDescricao.label = Descrição # Relatorio de Origem e Destino relatorioOrigemDestinoController.window.title = Origem e Destino relatorioOrigemDestinoController.lblEmpresa.value = Empresa +relatorioOrigemDestinoController.lbCodLinha.value = Cod. Linha relatorioOrigemDestinoController.lbServico.value = Serviço relatorioOrigemDestinoController.lbFecServico.value = Data Serv. relatorioOrigemDestinoController.lbDataCorrida.value = Data relatorioOrigemDestinoController.horaSaida.label = Hora relatorioOrigemDestinoController.origem.label = Origem relatorioOrigemDestinoController.destino.label = Destino -relatorioOrigemDestinoController.rutaId.label = Cód Linha +relatorioOrigemDestinoController.rutaId.label = Num Linha relatorioOrigemDestinoController.descRuta.label = Linha relatorioOrigemDestinoController.MSG.selecionarCorridas = Selecione algum serviço para gerar o relatório. relatorioOrigemDestinoController.chkBilhetesGratuitos.value = Considerar bilhetes gratuitos diff --git a/web/gui/relatorios/filtroRelatorioOrigemDestino.zul b/web/gui/relatorios/filtroRelatorioOrigemDestino.zul index 6edb14e85..7356b1e98 100644 --- a/web/gui/relatorios/filtroRelatorioOrigemDestino.zul +++ b/web/gui/relatorios/filtroRelatorioOrigemDestino.zul @@ -32,7 +32,7 @@