diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAidfDetalhado.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAidfDetalhado.java new file mode 100644 index 000000000..e56c85299 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAidfDetalhado.java @@ -0,0 +1,91 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +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; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +public class RelatorioAidfDetalhado extends Relatorio { + + public RelatorioAidfDetalhado(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 sql = getSql(); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); + + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + Map dataResult = new HashMap(); + dataResult.put("aidf", rset.getString("aidf")); + dataResult.put("empresa", rset.getString("nombempresa")); + dataResult.put("estacao", rset.getString("estacao")); + dataResult.put("agencia", rset.getString("nombpuntoventa")); + dataResult.put("serie", rset.getString("serie")); + dataResult.put("subserie", rset.getString("subserie")); + dataResult.put("numeracao", rset.getString("numeracao")); + dataResult.put("folios", rset.getString("folios")); + dataResult.put("forminicio", rset.getString("forminicial")); + dataResult.put("formfinal", rset.getString("formfinal")); + this.dados.add(dataResult); + } + + this.resultSet = rset; + } + }); + } + + @Override + protected void processaParametros() throws Exception { + } + + private String getSql() { + StringBuilder sql = new StringBuilder(); + sql.append(" select a.aidf_id as aidf, e.nombempresa, p.nombpuntoventa, a.serie, ab.estacion_id as estacao, a.subserie, a.forminicial, a.formfinal,"); + sql.append(" concat(a.forminicial, concat('-',a.formfinal)) as numeracao,"); + sql.append(" concat(fp.foliopreimpreso,concat('-',dab.numfoliofinal)) as folios "); + sql.append(" from aidf a "); + sql.append(" inner join empresa e on e.empresa_id = a.empresa_id "); + sql.append(" inner join abasto_boleto ab on a.empresa_id = ab.empresa_id and ab.ACTIVO = 1 "); + sql.append(" inner join det_abasto_boleto dab on dab.abastoboleto_id = ab.abastoboleto_id and dab.ACTIVO = 1 "); + sql.append(" inner join punto_venta p on p.puntoventa_id = ab.puntoventa_id and p.ACTIVO = 1"); + sql.append(" inner join folio_preimpreso fp on (a.serie=fp.numeserie or concat(a.aidf_id, concat(a.serie,a.subserie))=fp.numeserie) and fp.ACTIVO = 1"); + sql.append("where (case when (length(dab.numseriepreimpresa) < 3) then '0' else substr(dab.numseriepreimpresa,0,3) end) = cast(a.aidf_id as varchar(10))"); + sql.append(" and a.ACTIVO = 1"); + if(parametros.get("EMPRESA_ID") != null){ + sql.append(" and a.empresa_id = ").append(parametros.get("EMPRESA_ID")); + } + if(parametros.get("SERIE") != null){ + sql.append(" and (a.serie ='").append(parametros.get("SERIE")).append("'"); + sql.append(" or concat(a.aidf_id, concat(a.SERIE,a.SUBSERIE))='").append(parametros.get("SERIE")).append("')"); + } + if(parametros.get("AIDF") != null){ + sql.append(" and a.aidf_id like'%").append(parametros.get("AIDF")).append("%'"); + } + if(parametros.get("INICIOFORM") != null){ + sql.append(" and a.forminicial >= ").append(parametros.get("INICIOFORM")); + } + if(parametros.get("FIMFORM") != null){ + sql.append(" and a.formfinal <= ").append(parametros.get("FIMFORM")); + } + sql.append(" group by a.aidf_id, e.nombempresa, p.nombpuntoventa, a.serie, ab.estacion_id , a.subserie,concat(a.forminicial, concat('-',a.formfinal)), a.forminicial, a.formfinal, "); + sql.append(" concat(fp.foliopreimpreso,concat('-',dab.numfoliofinal)) "); + sql.append(" order by a.aidf_id"); + + return sql.toString(); + + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_es_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_es_BR.properties new file mode 100644 index 000000000..c36856c15 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_es_BR.properties @@ -0,0 +1,24 @@ +#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: + +#Labels header +label.aidf=AIDF +label.empresa=Empresa +label.agencia=Agência +label.serie=Série +label.bilhete=Bilhetes +label.numeracao=Numeração +label.subserie=Subserie +label.formInicio=F. Inicio +label.formFim=F. Fim + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_pt_BR.properties new file mode 100644 index 000000000..2f6485486 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidfDetalhado_pt_BR.properties @@ -0,0 +1,20 @@ +#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: + +#Labels header +label.aidf=AIDF +label.empresa=Empresa +label.agencia=Agencia +label.serie=Serie +label.bilhete=Bilhetes +label.numeracao=Numeração diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidf_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidf_pt_BR.properties index 2f6485486..ea9bb92da 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidf_pt_BR.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAidf_pt_BR.properties @@ -18,3 +18,6 @@ label.agencia=Agencia label.serie=Serie label.bilhete=Bilhetes label.numeracao=Numeração +label.subserie=Subserie +label.formInicio=F. Inicio +label.formFim=F. Fim \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jasper new file mode 100644 index 000000000..592ee77d0 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jrxml new file mode 100644 index 000000000..ee822178b --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAidfDetalhado.jrxml @@ -0,0 +1,213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioAidfDetalhadoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioAidfDetalhadoController.java new file mode 100644 index 000000000..fbb48c49d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioAidfDetalhadoController.java @@ -0,0 +1,207 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +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.Comboitem; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Textbox; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioAidfDetalhado; +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; + +@Controller("relatorioAidfDetalhadoController") +@Scope("prototype") +public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private Datebox datInicial; + private Datebox datFinal; + private MyComboboxEstandar cmbEmpresa; + private List lsEmpresa; + private Textbox txtSerie; + private Textbox txtAIDF; + private Textbox txtInicioForm; + private Textbox txtFimForm; + + + @Autowired + private EmpresaService empresaService; + @Autowired + private DataSource dataSourceRead; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + super.doAfterCompose(comp); + } + + /** + * @throws Exception + * + */ + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + Relatorio relatorio; + + Map parametros = new HashMap(); + + StringBuilder filtro = new StringBuilder(); + + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioAidfDetalhadoController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + parametros.put("USUARIO_NOME", UsuarioLogado.getUsuarioLogado().getNombusuario()); + + filtro.append("Empresa: "); + 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;"); + } + filtro.append("AIDF: "); + if(!txtAIDF.getValue().equals("")){ + parametros.put("AIDF", txtAIDF.getValue()); + filtro.append(txtAIDF.getValue() + ";"); + }else{ + filtro.append(" Todas;"); + } + filtro.append("Inicio Form: "); + if(!txtInicioForm.getValue().equals("")){ + parametros.put("INICIOFORM", txtInicioForm.getValue()); + filtro.append(txtInicioForm.getValue() + ";"); + }else{ + filtro.append(" Todas;"); + } + filtro.append("Final Form: "); + if(!txtFimForm.getValue().equals("")){ + parametros.put("FIMFORM", txtFimForm.getValue()); + filtro.append(txtFimForm.getValue() + ";"); + }else{ + filtro.append(" Todas;"); + } + filtro.append("Serie: "); + if(!txtSerie.getValue().equals("")){ + parametros.put("SERIE", txtSerie.getValue()); + filtro.append(txtSerie.getValue() + ";"); + }else{ + filtro.append(" Todas;"); + } + + parametros.put("FILTROS", filtro.toString()); + relatorio = new RelatorioAidfDetalhado(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioAidfDetalhadoController.window.title"), args, MODAL); + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception{ + executarRelatorio(); + } + + private void executarPesquisa() { + + } + + public void onClick$btnPesquisa(Event ev) { + executarPesquisa(); + } + + public void onClick$btnLimpar(Event ev) { + + } + + public void onDoubleClick$puntoVentaSelList(Event ev) { + + } + + public void onDoubleClick$puntoVentaList(Event ev) { + + } + + 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; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public MyComboboxEstandar getCmbEmpresa() { + return cmbEmpresa; + } + + public void setCmbEmpresa(MyComboboxEstandar cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + + public Textbox getTxtSerie() { + return txtSerie; + } + + public void setTxtSerie(Textbox txtSerie) { + this.txtSerie = txtSerie; + } + + public Textbox getTxtAIDF() { + return txtAIDF; + } + + public void setTxtAIDF(Textbox txtAIDF) { + this.txtAIDF = txtAIDF; + } + + public Textbox getTxtInicioForm() { + return txtInicioForm; + } + + public void setTxtInicioForm(Textbox txtInicioForm) { + this.txtInicioForm = txtInicioForm; + } + + public Textbox getTxtFimForm() { + return txtFimForm; + } + + public void setTxtFimForm(Textbox txtFimForm) { + this.txtFimForm = txtFimForm; + } + + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioAidfDetalhado.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioAidfDetalhado.java new file mode 100644 index 000000000..b41ba3ff7 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioAidfDetalhado.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 ItemMenuRelatorioAidfDetalhado extends DefaultItemMenuSistema { + + public ItemMenuRelatorioAidfDetalhado() { + super("indexController.mniRelatorioAIDFDetalhado.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOAIDFDETALHADO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioAidfDetalhado.zul", + Labels.getLabel("relatorioAidfDetalhadoController.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 05964d445..c54693f2a 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 @@ -125,6 +125,7 @@ ingresosExtras.ingreso=com.rjconsultores.ventaboletos.web.utilerias.menu.item.in analitico=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.MenuAnalitico analitico.item=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.ItemMenuAnalitico analitico.gerenciais=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.gerenciais.SubMenuGerenciais +analitico.gerenciais.aidfDetalhado=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAidfDetalhado analitico.gerenciais.confFormulario=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioConferenciaFormularioFisico analitico.gerenciais.difTransf=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioDiferencasTransferencias analitico.gerenciais.empresaCorrida=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioEmpresaCorrida diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index dfb436a9d..12454f7c7 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -271,6 +271,7 @@ indexController.mniRelatorioCancelamentoVendaCartao.label = Cancelación de Vent indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Relátorio de Tabela de Preços indexController.mniRelatorioAIDF.label = Reporte AIDF +indexController.mniRelatorioAIDFDetalhado.label = AIDF Detalhado indexController.mniPrecoApanhe.label = Preço Apanhe indexController.mniRelatorioVendasPacotesResumido.label = Ventas de Paquetes - Resumido indexController.mniRelatorioVendasPacotesDetalhado.label = Ventas de Paquetes - Detallado @@ -607,6 +608,16 @@ relatorioAidfController.dataFinal.value = Fecha Final relatorioAidfController.lbEmpresa.value = Empresa relatorioAidfController.lbSerie.value = Série +#Relatorio Aidf Detalhado +relatorioAidfDetalhadoController.window.title = Relatório Aidf Detalhado +relatorioAidfDetalhadoController.datainicial.value = Data Inicial +relatorioAidfDetalhadoController.dataFinal.value = Data Final +relatorioAidfDetalhadoController.lbEmpresa.value = Empresa +relatorioAidfDetalhadoController.lbSerie.value = Série +relatorioAidfDetalhadoController.lbAidf.value = AIDF +relatorioAidfDetalhadoController.lbFormInicial.value = Form. Inicial +relatorioAidfDetalhadoController.lbFormFinal.value = Form. Final + #Relatorio Tripulacao relatorioTripulacao.label=Informe Tripulación relatorioTripulacaoController.lbDataInicial=Fecha Inicial diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 5cb9502bf..b1948843b 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -285,6 +285,7 @@ indexController.mniRelatorioEstornoCartao.label=Estorno Cartão indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Tabela de Preços indexController.mniRelatorioAIDF.label = AIDF +indexController.mniRelatorioAIDFDetalhado.label = AIDF Detalhado indexController.mniPrecoApanhe.label = Preço Apanhe indexController.mniRelatorioVendasPacotesResumido.label = Vendas de Pacotes - Resumido indexController.mniRelatorioVendasPacotesDetalhado.label = Vendas de Pacotes - Detalhado @@ -723,6 +724,16 @@ relatorioAidfController.dataFinal.value = Data Final relatorioAidfController.lbEmpresa.value = Empresa relatorioAidfController.lbSerie.value = Série +#Relatorio Aidf Detalhado +relatorioAidfDetalhadoController.window.title = Relatório Aidf Detalhado +relatorioAidfDetalhadoController.datainicial.value = Data Inicial +relatorioAidfDetalhadoController.dataFinal.value = Data Final +relatorioAidfDetalhadoController.lbEmpresa.value = Empresa +relatorioAidfDetalhadoController.lbSerie.value = Série +relatorioAidfDetalhadoController.lbAidf.value = AIDF +relatorioAidfDetalhadoController.lbFormInicial.value = Form. Inicial +relatorioAidfDetalhadoController.lbFormFinal.value = Form. Final + # Pantalla Editar Classe editarClaseServicioController.window.title = Tipo de Classe editarClaseServicioController.btnApagar.tooltiptext = Eliminar diff --git a/web/gui/relatorios/filtroRelatorioAidfDetalhado.zul b/web/gui/relatorios/filtroRelatorioAidfDetalhado.zul new file mode 100644 index 000000000..ad687cee7 --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioAidfDetalhado.zul @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +