From e76f0569ea745c48aaef11bc323359cda5d5209a Mon Sep 17 00:00:00 2001 From: "alexandre.lima" Date: Wed, 23 Aug 2017 19:07:26 +0000 Subject: [PATCH] Fixes Bug #0009492 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@72841 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../impl/RelatorioBilhetesVendidos.java | 151 ++++++ .../RelatorioBilhetesVendas_pt_BR.properties | 13 + .../RelatorioBilhetesVendidos.properties | 13 + .../RelatorioBilhetesVendidos.jasper | Bin 0 -> 48353 bytes .../templates/RelatorioBilhetesVendidos.jrxml | 433 ++++++++++++++++++ .../RelatorioBilhetesVendidosController.java | 242 ++++++++++ .../ItemMenuRelatorioBilhetesVendidos.java | 25 + .../filtroRelatorioBilhetesVendidos.zul | 128 ++++++ 8 files changed, 1005 insertions(+) create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioBilhetesVendidos.java create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendas_pt_BR.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendidos.properties create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioBilhetesVendidos.jasper create mode 100644 src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioBilhetesVendidos.jrxml create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioBilhetesVendidosController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioBilhetesVendidos.java create mode 100644 web/gui/relatorios/filtroRelatorioBilhetesVendidos.zul diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioBilhetesVendidos.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioBilhetesVendidos.java new file mode 100644 index 000000000..d84a395d3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioBilhetesVendidos.java @@ -0,0 +1,151 @@ +/** + * + */ +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.IndStatusBoleto; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +/** + * @author Thiago + * + */ +public class RelatorioBilhetesVendidos extends Relatorio { + + + public RelatorioBilhetesVendidos(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new ArrayDataSource(this) { + @Override + public void initDados() throws Exception { + + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + + StringBuilder sql = new StringBuilder(); + + sql.append(" select "); + sql.append(" B.NUMFOLIOSISTEMA NUMERO_PASSAGEM, "); + sql.append(" B.NUMSERIEPREIMPRESA SERIE, "); + sql.append(" B.NUMSERIEPREIMPRESA SUB_SERIE, "); + sql.append(" B.NUMFOLIOPREIMPRESO PRE_IMPRESSO, "); + sql.append(" p_origen.DESCPARADA ORIGEM, "); + sql.append(" p_destino.DESCPARADA DESTINO, "); + sql.append(" pv.NOMBPUNTOVENTA NOME_AGENCIA, "); + sql.append(" B.FECMODIF DATA, "); + sql.append(" B.FECCORRIDA DATA_VIAGEM, "); + sql.append(" B.CORRIDA_ID SERVICO, "); + sql.append(" to_char(B.FECCORRIDA, 'hh:mm:ss') HORA, "); + sql.append(" B.NUMASIENTO NUMASIENTO, "); + sql.append(" ct.DESCCATEGORIA CATEGORIA, "); + sql.append(" R.INDSENTIDOIDA SENTIDO, "); + sql.append(" R.DESCRUTA DESC_LINHA, "); + sql.append(" B.INDSTATUSBOLETO STATUS_PASSAGEM, "); + sql.append(" B.PRECIOPAGADO TARIFA, "); + sql.append(" B.IMPORTETAXAEMBARQUE TX_EMBARQUE, "); + sql.append(" B.IMPORTEPEDAGIO PEDAGIO, "); + sql.append(" B.IMPORTESEGURO SEGURO "); + + sql.append(" FROM BOLETO B "); + sql.append(" JOIN RUTA R ON R.RUTA_ID = B.RUTA_ID "); + sql.append(" JOIN PUNTO_VENTA pv on B.PUNTOVENTA_ID = pv.PUNTOVENTA_ID "); + sql.append(" JOIN USUARIO u on u.USUARIO_ID = B.USUARIO_ID "); + sql.append(" JOIN PARADA p_origen on p_origen.PARADA_ID = B.ORIGEN_ID "); + sql.append(" JOIN PARADA p_destino on p_destino.PARADA_ID = B.DESTINO_ID "); + sql.append(" JOIN CATEGORIA ct on ct.CATEGORIA_ID = B.CATEGORIA_ID "); + sql.append(" JOIN CLASE_SERVICIO cs on cs.CLASESERVICIO_ID = B.CLASESERVICIO_ID "); + sql.append(" JOIN MARCA m on m.marca_id = B.marca_id "); + sql.append(" WHERE "); + sql.append(" m.EMPRESA_ID = :EMPRESA_ID "); + sql.append(" and B.FECHORVENTA >= :DATA_INICIAL "); + sql.append(" and B.FECHORVENTA <= :DATA_FINAL "); + if (parametros.get("NUMPUNTOVENTA") != null) { + sql.append(" and pv.PUNTOVENTA_ID IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); + } + if (parametros.get("STATUS") != null) { + sql.append(" and b.INDSTATUSBOLETO in (" + parametros.get("STATUS") + ") "); + } + sql.append(" order by u.CVEUSUARIO, "); + sql.append(" u.NOMBUSUARIO, "); + sql.append(" pv.NUMPUNTOVENTA, "); + sql.append(" pv.NOMBPUNTOVENTA, "); + sql.append(" B.NUMFOLIOSISTEMA, "); + sql.append(" p_origen.DESCPARADA, "); + sql.append(" p_destino.DESCPARADA, "); + sql.append(" ct.DESCCATEGORIA, "); + sql.append(" B.INDSTATUSBOLETO, "); + sql.append(" B.FECCORRIDA, "); + sql.append(" B.CORRIDA_ID "); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql.toString()); + + stmt.setInt("EMPRESA_ID", Integer.valueOf(parametros.get("EMPRESA_ID").toString())); + stmt.setTimestamp("DATA_INICIAL", new Timestamp(DateUtil.inicioFecha((Date) parametros.get("DATA_INICIAL")).getTime())); + stmt.setTimestamp("DATA_FINAL", new Timestamp(DateUtil.fimFecha((Date) parametros.get("DATA_FINAL")).getTime())); + + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + + Map dataResult = new HashMap(); + + dataResult.put("NUMERO_PASSAGEM", rset.getString("NUMERO_PASSAGEM")); + if (rset.getString("SERIE") != null) { + if (rset.getString("SERIE").split("-").length == 1) { + dataResult.put("SERIE", rset.getString("SERIE")); + } else { + dataResult.put("SERIE", rset.getString("SERIE").split("-")[0]); + dataResult.put("SUB_SERIE", rset.getString("SERIE").split("-")[1]); + } + } + dataResult.put("PRE_IMPRESSO", rset.getString("PRE_IMPRESSO")); + dataResult.put("ORIGEM", rset.getString("ORIGEM")); + dataResult.put("DESTINO", rset.getString("DESTINO")); + dataResult.put("NOME_AGENCIA", rset.getString("NOME_AGENCIA")); + dataResult.put("DATA", rset.getString("DATA")); + dataResult.put("DATA_VIAGEM", rset.getString("DATA_VIAGEM")); + dataResult.put("SERVICO", rset.getString("SERVICO")); + dataResult.put("HORA", rset.getString("HORA")); + dataResult.put("NUMASIENTO", rset.getString("NUMASIENTO")); + dataResult.put("CATEGORIA", rset.getString("CATEGORIA")); + dataResult.put("SENTIDO", rset.getString("SENTIDO")); + dataResult.put("DESC_LINHA", rset.getString("DESC_LINHA")); + if (rset.getString("STATUS_PASSAGEM") != null) { + dataResult.put("STATUS_PASSAGEM", IndStatusBoleto.valueOf(rset.getString("STATUS_PASSAGEM")).getValue()); + } + dataResult.put("TARIFA", rset.getString("TARIFA")); + dataResult.put("TX_EMBARQUE", rset.getString("TX_EMBARQUE")); + dataResult.put("PEDAGIO", rset.getString("PEDAGIO")); + dataResult.put("SEGURO", rset.getString("SEGURO")); + + this.dados.add(dataResult); + + } + + this.resultSet = rset; + } + }); + } + + /* + * (non-Javadoc) + * + * @see com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio#processaParametros() + */ + @Override + protected void processaParametros() throws Exception { + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendas_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendas_pt_BR.properties new file mode 100644 index 000000000..01f6ecc2b --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendas_pt_BR.properties @@ -0,0 +1,13 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + + +#Labels cabeçalho +cabecalho.relatorio=Relatório: +cabecalho.periodo=Período: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendidos.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendidos.properties new file mode 100644 index 000000000..01f6ecc2b --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioBilhetesVendidos.properties @@ -0,0 +1,13 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + + +#Labels cabeçalho +cabecalho.relatorio=Relatório: +cabecalho.periodo=Período: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioBilhetesVendidos.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioBilhetesVendidos.jasper new file mode 100644 index 0000000000000000000000000000000000000000..dda2f7744f17cb12645612d7fd4735e6767bd551 GIT binary patch literal 48353 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 VSIk|WH0Kx-&cplmdSwt8`#+asMz8 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioBilhetesVendidosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioBilhetesVendidosController.java new file mode 100644 index 000000000..2cf83712a --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioBilhetesVendidosController.java @@ -0,0 +1,242 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zhtml.Messagebox; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Bandbox; +import org.zkoss.zul.Checkbox; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Paging; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.enums.IndStatusBoleto; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioBilhetesVendidos; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +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.MyTextbox; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRelatorioVendasBilheteiro; + +@Controller("relatorioBilhetesVendidosController") +@Scope("prototype") +public class RelatorioBilhetesVendidosController extends MyGenericForwardComposer { + + /** + * + */ + private static final long serialVersionUID = 1L; + private static Logger log = Logger.getLogger(RelatorioVendasBilheteiroController.class); + + @Autowired + private DataSource dataSourceRead; + + @Autowired + private EmpresaService empresaService; + + private Datebox datInicial; + private Datebox datFinal; + + private MyComboboxEstandar cmbEmpresa; + private List lsEmpresa; + + @Autowired + private transient PagedListWrapper plwPuntoVenta; + + private MyTextbox txtNombrePuntoVenta; + private Bandbox bbPesquisaPuntoVenta; + private MyListbox puntoVentaList; + private MyListbox puntoVentaSelList; + private Paging pagingPuntoVenta; + + private Checkbox chkVendido; + private Checkbox chkCancelado; +// private Checkbox chkTransferido; +// private Checkbox chkEntregue; +// private Checkbox chkReservado; +// private Checkbox chkExtraviado; +// private Checkbox chkReimpresso; +// private Checkbox chkMarcado; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + super.doAfterCompose(comp); + + chkVendido.setChecked(true); + chkCancelado.setChecked(true); +// chkTransferido.setChecked(true); +// chkEntregue.setChecked(true); +// chkReservado.setChecked(true); +// chkExtraviado.setChecked(true); +// chkReimpresso.setChecked(true); +// chkMarcado.setChecked(true); + + puntoVentaList.setItemRenderer(new RenderRelatorioVendasBilheteiro()); + + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + private void executarPesquisaAgencia() { + HibernateSearchObject puntoVentaBusqueda = + new HibernateSearchObject(PuntoVenta.class, pagingPuntoVenta.getPageSize()); + + puntoVentaBusqueda.addFilterILike("nombpuntoventa", "%" + txtNombrePuntoVenta.getValue() + "%"); + puntoVentaBusqueda.addFilterEqual("activo", Boolean.TRUE); + + puntoVentaBusqueda.addSortAsc("nombpuntoventa"); + + puntoVentaBusqueda.addFilterEqual("activo", Boolean.TRUE); + + plwPuntoVenta.init(puntoVentaBusqueda, puntoVentaList, pagingPuntoVenta); + + if (puntoVentaList.getData().length == 0) { + try { + Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), + Labels.getLabel("relatorioVendasBilheteiroController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } catch (InterruptedException ex) { + ex.printStackTrace(); + } + } + } + + public void onClick$btnPesquisa(Event ev) { + executarPesquisaAgencia(); + } + + public void onDoubleClick$puntoVentaSelList(Event ev) { + PuntoVenta puntoVenta = (PuntoVenta) puntoVentaSelList.getSelected(); + puntoVentaSelList.removeItem(puntoVenta); + } + + public void onDoubleClick$puntoVentaList(Event ev) { + PuntoVenta puntoVenta = (PuntoVenta) puntoVentaList.getSelected(); + puntoVentaSelList.addItemNovo(puntoVenta); + } + + public void onClick$btnLimpar(Event ev) { + puntoVentaList.setData(new ArrayList()); + + bbPesquisaPuntoVenta.setText(""); + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + executarRelatorio(); + } + + /** + * @throws Exception + * + */ + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + Relatorio relatorio; + Map parametros = new HashMap(); + StringBuilder filtro = new StringBuilder(); + + filtro.append("Agência: "); + String puntoVentaIds = ""; + String puntoVentas = ""; + List lsPuntoVentaSelecionados = new ArrayList(Arrays.asList(puntoVentaSelList.getData())); + if (lsPuntoVentaSelecionados.isEmpty()) { + puntoVentas = "Todas"; + } else { + for (int i = 0; i < lsPuntoVentaSelecionados.size(); i++) { + PuntoVenta puntoVenta = lsPuntoVentaSelecionados.get(i); + puntoVentas = puntoVentas + puntoVenta.getNombpuntoventa() + ","; + + puntoVentaIds = puntoVentaIds + puntoVenta.getPuntoventaId() + ","; + } + + // removendo ultima virgula + puntoVentaIds = puntoVentaIds.substring(0, puntoVentaIds.length() - 1); + puntoVentas = puntoVentas.substring(0, puntoVentas.length() - 1); + parametros.put("NUMPUNTOVENTA", puntoVentaIds); + } + filtro.append(puntoVentas).append(";"); + + parametros.put("DATA_INICIAL", (java.util.Date) this.datInicial.getValue()); + parametros.put("DATA_FINAL", (java.util.Date) this.datFinal.getValue()); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioVendasBilheteiroController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + + String status = ""; + if (chkCancelado.isChecked()) { + status += "'" + IndStatusBoleto.C + "',"; + } +// if (chkEntregue.isChecked()) { +// status += "'" + IndStatusBoleto.E + "',"; +// } +// if (chkExtraviado.isChecked()) { +// status += "'" + IndStatusBoleto.X + "',"; +// } +// if (chkMarcado.isChecked()) { +// status += "'" + IndStatusBoleto.M + "',"; +// } +// if (chkReimpresso.isChecked()) { +// status += "'" + IndStatusBoleto.R + "',"; +// } +// if (chkReservado.isChecked()) { +// status += "'" + IndStatusBoleto.S + "',"; +// } +// if (chkTransferido.isChecked()) { +// status += "'" + IndStatusBoleto.T + "',"; +// } + if (chkVendido.isChecked()) { + status += "'" + IndStatusBoleto.V + "',"; + } + if (status.length() > 0) { + status = status.substring(0, status.length()-1); + } else { + status = null; + } + parametros.put("STATUS", status); + + filtro.append(" Empresa: "); + + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + Empresa empresa = (Empresa) itemEmpresa.getValue(); + parametros.put("EMPRESA_ID", empresa.getEmpresaId()); + parametros.put("EMPRESA", empresa.getNombempresa()); + filtro.append(empresa.getNombempresa() + ";"); + } else { + filtro.append(" Todas;"); + } + + parametros.put("FILTROS", filtro.toString()); + relatorio = new RelatorioBilhetesVendidos(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", Labels.getLabel("relatorioVendasBilheteiroController.window.title"), args, MODAL); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioBilhetesVendidos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioBilhetesVendidos.java new file mode 100644 index 000000000..d90e18562 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioBilhetesVendidos.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuRelatorioBilhetesVendidos extends DefaultItemMenuSistema { + + public ItemMenuRelatorioBilhetesVendidos() { + super("indexController.mniRelatorioBilhetesVendidos.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOBILHTESVENDIDOS"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioBilhetesVendidos.zul", + Labels.getLabel("relatorioBilhetesVendidosController.window.title"), getArgs() ,desktop); + } + +} diff --git a/web/gui/relatorios/filtroRelatorioBilhetesVendidos.zul b/web/gui/relatorios/filtroRelatorioBilhetesVendidos.zul new file mode 100644 index 000000000..182e28aca --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioBilhetesVendidos.zul @@ -0,0 +1,128 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +