diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageiros.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageiros.java new file mode 100644 index 000000000..93bc14245 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageiros.java @@ -0,0 +1,116 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.HashMap; +import java.util.Map; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.ArrayDataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; + +public class RelatorioQuadroDemonstrativoMovimentoPassageiros extends Relatorio { + + public RelatorioQuadroDemonstrativoMovimentoPassageiros(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new ArrayDataSource(this) { + + public void initDados() throws Exception { + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + + String dataDe = (String) parametros.get("DATA_DE"); + dataDe = dataDe + " 00:00:00"; + String dataAte = (String) parametros.get("DATA_ATE"); + dataAte = dataAte + " 23:59:59"; + + String linhasIds = (String) parametros.get("LINHAS"); + String empresaId = (String) parametros.get("EMPRESA_IDS"); + + String sql = getSql(dataDe, dataAte, linhasIds, empresaId); + + PreparedStatement ps = conexao.prepareStatement(sql.toString()); + + ResultSet rset = ps.executeQuery(); + + while (rset.next()) { + Map dataResult = new HashMap(); + + dataResult.put("origem", rset.getString("origem")); + dataResult.put("destino", rset.getString("destino")); + dataResult.put("km", rset.getFloat("km")); + dataResult.put("totalida", rset.getLong("totalida")); + dataResult.put("totalvolta", rset.getLong("totalvolta")); + + this.dados.add(dataResult); + } + + this.resultSet = rset; + } + }); + } + + @Override + protected void processaParametros() throws Exception { + } + + private String getSql(String dataDe, String dataAte, String linhasIds, + String empresaId) { + StringBuilder sql = new StringBuilder(); + + sql.append(" SELECT "); + sql.append(" r.cantasientos, "); + sql.append(" e.nombempresa empresa, "); + sql.append(" r.descruta linha, "); + sql.append(" ori.descparada AS origem, "); + sql.append(" des.descparada AS destino, "); + sql.append(" SUM(nvl(tr.cantkmreal,0) ) AS km, "); + sql.append(" SUM( "); + sql.append(" CASE "); + sql.append(" WHEN(r.indsentidoida = 1) THEN 1 "); + sql.append(" ELSE 0 "); + sql.append(" END "); + sql.append(" ) AS totalida, "); + sql.append(" SUM( "); + sql.append(" CASE "); + sql.append(" WHEN(r.indsentidoida = 0) THEN 1 "); + sql.append(" ELSE 0 "); + sql.append(" END "); + sql.append(" ) AS totalvolta "); + sql.append(" FROM "); + sql.append(" boleto b "); + sql.append(" JOIN empresa e ON e.empresa_id = b.empresacorrida_id "); + sql.append(" JOIN categoria ca ON b.categoria_id = ca.categoria_id "); + sql.append(" JOIN parada ori ON ori.parada_id = b.origen_id "); + sql.append(" JOIN parada des ON des.parada_id = b.destino_id "); + sql.append(" JOIN ruta r ON r.ruta_id = b.ruta_id "); + sql.append(" INNER JOIN corrida_tramo ct ON ct.feccorrida = b.feccorrida "); + sql.append(" AND ct.corrida_id = b.corrida_id "); + sql.append(" INNER JOIN tramo tr ON tr.tramo_id = ct.tramo_id "); + sql.append(" WHERE b.empresacorrida_id IN (").append(empresaId).append(") "); + + sql.append(" AND b.indstatusboleto <> 'C' "); + + if (!linhasIds.equals("0")) { + sql.append(" AND r.ruta_id IN (").append(linhasIds).append(") "); + } + + sql.append(" AND b.feccorrida BETWEEN To_date('").append(dataDe).append("', 'dd/mm/yyyy HH24:mi:ss') "); + sql.append(" AND To_date('").append(dataAte).append("', 'dd/mm/yyyy HH24:mi:ss') "); + + sql.append(" GROUP BY "); + sql.append(" r.cantasientos, "); + sql.append(" e.nombempresa, "); + sql.append(" r.numruta, "); + sql.append(" r.descruta, "); + sql.append(" ori.descparada, "); + sql.append(" des.descparada "); + sql.append(" ORDER BY "); + sql.append(" r.descruta, "); + sql.append(" origem, "); + sql.append(" destino "); + + return sql.toString(); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jasper new file mode 100644 index 000000000..d34b867ea Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jrxml new file mode 100644 index 000000000..b77d45c68 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioQuadroDemonstrativoMovimentoPassageiros.jrxml @@ -0,0 +1,246 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="176" splitType="Stretch"> + <staticText> + <reportElement mode="Transparent" x="0" y="0" width="459" height="41" forecolor="#000000" backcolor="#FFFFFF" uuid="65b24124-38c3-43b7-8586-bdd577662ef7"/> + <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="16" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <text><![CDATA[QUADRO DEMONSTRATIVO DO MOVIMENTO DE PASSAGEIROS]]></text> + </staticText> + <textField evaluationTime="Report" pattern="" isBlankWhenNull="false"> + <reportElement mode="Transparent" x="728" y="25" width="21" height="16" forecolor="#000000" backcolor="#FFFFFF" uuid="2f4f1314-9363-4e6d-822f-c85c1890998b"/> + <textElement textAlignment="Center" 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[$V{PAGE_NUMBER}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy HH:mm" isBlankWhenNull="false"> + <reportElement mode="Transparent" x="645" y="0" width="104" height="25" forecolor="#000000" backcolor="#FFFFFF" uuid="ad4bbfb8-582d-4aa2-904d-8dfe60e54442"/> + <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[new java.util.Date()]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement mode="Transparent" x="460" y="25" width="267" height="16" forecolor="#000000" backcolor="#FFFFFF" uuid="8601bf20-f5f8-4fed-9445-7adfe580d236"/> + <textElement textAlignment="Right" 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ágina " + $V{PAGE_NUMBER}+ " de " + $V{PAGE_NUMBER}]]></textFieldExpression> + </textField> + <line> + <reportElement x="-1" y="48" width="750" height="1" uuid="3c577f75-c6d6-4c11-a846-bfe71a8a1b42"/> + </line> + <line> + <reportElement positionType="Float" x="-1" y="160" width="750" height="1" uuid="84641d2c-21a5-47f0-b4a8-afe7bf700cb6"/> + </line> + <staticText> + <reportElement x="4" y="54" width="58" height="20" uuid="f7af9b8b-6be6-404b-84d3-e99f167d7ac7"/> + <textElement> + <font isBold="true"/> + </textElement> + <text><![CDATA[Empresa:]]></text> + </staticText> + <textField> + <reportElement x="62" y="54" width="509" height="20" uuid="d7298e04-4d17-4960-b5c0-fcc5cc40eab2"/> + <textFieldExpression><![CDATA[$P{EMPRESA}]]></textFieldExpression> + </textField> + <textField> + <reportElement x="4" y="71" width="247" height="20" uuid="6c1d1900-e316-47a2-8456-1127388074c8"/> + <textElement> + <font isBold="true"/> + </textElement> + <textFieldExpression><![CDATA["Período: " + $P{DATA_DE} + " a " + $P{DATA_ATE}]]></textFieldExpression> + </textField> + <staticText> + <reportElement x="4" y="133" width="46" height="20" uuid="60219e34-b23c-466a-9a4b-f6ceaa94b040"/> + <textElement> + <font isBold="true"/> + </textElement> + <text><![CDATA[Linha:]]></text> + </staticText> + <textField> + <reportElement x="50" y="133" width="509" height="20" uuid="cfb9d8c8-7731-479f-9449-df31087da23a"/> + <textFieldExpression><![CDATA[$P{DESC_LINHAS_SELECIONADAS}]]></textFieldExpression> + </textField> + <staticText> + <reportElement x="4" y="91" width="73" height="20" uuid="6ccd1b99-e792-4636-9ec2-5be200b4d512"/> + <textElement> + <font isBold="true"/> + </textElement> + <text><![CDATA[Tipo de Data:]]></text> + </staticText> + <staticText> + <reportElement x="77" y="91" width="73" height="20" uuid="87e23006-8496-4b03-af91-dec91dd19723"/> + <textElement> + <font isBold="false"/> + </textElement> + <text><![CDATA[SERVIÇO]]></text> + </staticText> + <staticText> + <reportElement x="4" y="111" width="73" height="20" uuid="a5eab335-6bbc-4235-b503-a6dafbf0cb70"/> + <textElement> + <font isBold="true"/> + </textElement> + <text><![CDATA[Lugar Ofer:]]></text> + </staticText> + <textField> + <reportElement x="77" y="113" width="509" height="20" uuid="4302c386-53e8-473d-99da-4f26c1d8bc38"/> + <textFieldExpression><![CDATA[$P{CANTASIENTOS}]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioQuadroDemonstrativoMovimentoPassageirosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioQuadroDemonstrativoMovimentoPassageirosController.java new file mode 100644 index 000000000..72b050a32 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioQuadroDemonstrativoMovimentoPassageirosController.java @@ -0,0 +1,174 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Combobox; +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.relatorios.impl.RelatorioQuadroDemonstrativoMovimentoPassageiros; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.RutaService; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; + +@Controller("relatorioQuadroDemonstrativoMovimentoPassageirosController") +@Scope("prototype") +public class RelatorioQuadroDemonstrativoMovimentoPassageirosController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + @Autowired + private DataSource dataSourceRead; + @Autowired + private EmpresaService empresaService; + @Autowired + private RutaService rutaService; + private List lsEmpresa; + private List lsLinhas; + private Datebox datInicial; + private Datebox datFinal; + + private MyComboboxEstandar cmbLinha; + private Combobox cmbEmpresa; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + lsLinhas = rutaService.obtenerTodos(); + super.doAfterCompose(comp); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + public void onClick$btnExecutarRelatorio(Event ev) throws InterruptedException, Exception { + + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + Date dataDe = datInicial.getValue(); + Date dataAte = datFinal.getValue(); + + Map parametros = new HashMap(); + parametros.put("DATA_DE", sdf.format(dataDe)); + parametros.put("DATA_ATE", sdf.format(dataAte)); + + if (cmbLinha.getSelectedItem() != null) { + if (!cmbLinha.getSelectedItem().getValue().equals("-1")) { + Ruta ruta = ((Ruta) cmbLinha.getSelectedItem().getValue()); + parametros.put("LINHAS", (ruta.getRutaId().toString())); + parametros.put("DESC_LINHAS_SELECIONADAS", (ruta.getDescruta())); + parametros.put("CANTASIENTOS", (ruta.getCantAsientos() != null ? ruta.getCantAsientos().toString() : "")); + } + } + + Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem(); + String empresaId; + String empresaDesc = ""; + if (cbiEmpresa != null) { + Empresa empresa = (Empresa) cbiEmpresa.getValue(); + empresaId = empresa.getEmpresaId().toString(); + empresaDesc = empresa.getNombempresa(); + } else { + empresaId = "0"; + for (int i = 0; i < lsEmpresa.size(); i++) { + Empresa empresa = lsEmpresa.get(i); + empresaId = empresaId + "," + empresa.getEmpresaId(); + } + } + parametros.put("EMPRESA", empresaDesc); + parametros.put("EMPRESA_IDS", empresaId); + + Relatorio relatorio = new RelatorioQuadroDemonstrativoMovimentoPassageiros(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioLinhaOperacionalController.window.title"), args, MODAL); + } + + public DataSource getDataSourceRead() { + return dataSourceRead; + } + + public void setDataSourceRead(DataSource dataSourceRead) { + this.dataSourceRead = dataSourceRead; + } + + public EmpresaService getEmpresaService() { + return empresaService; + } + + public void setEmpresaService(EmpresaService empresaService) { + this.empresaService = empresaService; + } + + public RutaService getRutaService() { + return rutaService; + } + + public void setRutaService(RutaService rutaService) { + this.rutaService = rutaService; + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public List getLsLinhas() { + return lsLinhas; + } + + public void setLsLinhas(List lsLinhas) { + this.lsLinhas = lsLinhas; + } + + 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 MyComboboxEstandar getCmbLinha() { + return cmbLinha; + } + + public void setCmbLinha(MyComboboxEstandar cmbLinha) { + this.cmbLinha = cmbLinha; + } + + public Combobox getCmbEmpresa() { + return cmbEmpresa; + } + + public void setCmbEmpresa(Combobox cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuQuadroDemonstrativoMovimentoPassageiros.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuQuadroDemonstrativoMovimentoPassageiros.java new file mode 100644 index 000000000..76aa6a8c5 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuQuadroDemonstrativoMovimentoPassageiros.java @@ -0,0 +1,24 @@ +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 ItemMenuQuadroDemonstrativoMovimentoPassageiros extends DefaultItemMenuSistema { + + public ItemMenuQuadroDemonstrativoMovimentoPassageiros() { + super("indexController.mniRelatorioLinhaOperacional.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOLINHAOPERACIONAL"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroQuadroDemonstrativoDoMovimentoPassageiro.zul", + Labels.getLabel("relatorioLinhaOperacionalController.window.title"), getArgs() ,desktop); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros.java new file mode 100644 index 000000000..c6a637461 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros.java @@ -0,0 +1,24 @@ +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 ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros extends DefaultItemMenuSistema { + + public ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros() { + super("indexController.mniRelatorioQuadroDemonstrativoMovimentoPassageiros.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOLINHAOPERACIONAL"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroQuadroDemonstrativoDoMovimentoPassageiro.zul", + Labels.getLabel("relatorioLinhaOperacionalController.window.title"), getArgs() ,desktop); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties index a008e322b..c6b8fe659 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties @@ -156,6 +156,7 @@ analitico.gerenciais.operacionais.demandas=com.rjconsultores.ventaboletos.web.ut analitico.gerenciais.operacionais.embarqueLocalidade=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioEmbarqueLocalidade analitico.gerenciais.operacionais.remarcacaoTransferencia=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioRemarcacaoPassagensTransferencia analitico.gerenciais.estatisticos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.gerenciais.estatisticos.SubMenuRelatorioEstatisticos +analitico.gerenciais.estatisticos.quadroDemonstrativoPassageiro=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioQuadroDemonstrativoMovimentoPassageiros analitico.gerenciais.estatisticos.receitaLinhaOperacional=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioLinhaOperacional analitico.gerenciais.estatisticos.trechoAgencia=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioTrechoVendido analitico.gerenciais.estatisticos.passageirosViajar=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioPassageirosViajar diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index f3d18668e..bbd30af42 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -258,6 +258,8 @@ indexController.mniRelatoriosPacote.label = Reportes paquetes indexController.mniIntegracion.bgm.label = BGM indexController.mniRelatorioEmbarqueLocalidade.label=Relatório Embarque por Localidade +indexController.mniRelatorioQuadroDemonstrativoMovimentoPassageiros.label = Quadro Demonstrativo Movimento Passageiros + indexController.mniRelatorios.label = Reportes indexController.mniRelatorioAproveitamento.label = Aprovechamiento indexController.mniRelatorioArquivoBGM.label = Arquivo BGM diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index c59f05303..f8f6c27a0 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -263,6 +263,8 @@ indexController.mniRelatoriosPacote.label = Relatórios Pacote indexController.mniIntegracion.bgm.label = BGM indexController.mniRelatorioEmbarqueLocalidade.label=Relatório Embarque por Localidade +indexController.mniRelatorioQuadroDemonstrativoMovimentoPassageiros.label = Quadro Demonstrativo Movimento Passageiros + indexController.mniRelatorios.label = Relatórios indexController.mniRelatorioAproveitamento.label = Aproveitamento indexController.mniRelatorioArquivoBGM.label = Arquivo BGM diff --git a/web/gui/relatorios/filtroQuadroDemonstrativoDoMovimentoPassageiro.zul b/web/gui/relatorios/filtroQuadroDemonstrativoDoMovimentoPassageiro.zul new file mode 100644 index 000000000..aa5c2d2e8 --- /dev/null +++ b/web/gui/relatorios/filtroQuadroDemonstrativoDoMovimentoPassageiro.zul @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +