diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAutorizacaoUsoSerieEmbarcada.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAutorizacaoUsoSerieEmbarcada.java new file mode 100644 index 000000000..e03e3d5e5 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAutorizacaoUsoSerieEmbarcada.java @@ -0,0 +1,45 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.rjconsultores.ventaboletos.entidad.CtrlSerieEmbarcada; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.ArrayDataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; + +public class RelatorioAutorizacaoUsoSerieEmbarcada extends Relatorio { + + + public RelatorioAutorizacaoUsoSerieEmbarcada(final List listaSerieEmbarcada, Connection conexao, HashMap parametros) throws Exception { + + + super(parametros, conexao); + + this.setCustomDataSource(new ArrayDataSource(this) { + + public void initDados() throws Exception { + + for(CtrlSerieEmbarcada c : listaSerieEmbarcada) { + Map dataResult = new HashMap(); + dataResult.put("id", c.getCtrlSerieEmbarcadaId()); + dataResult.put("empresa", c.getEmpresa().getNombempresa()); + dataResult.put("uf", c.getEstado().getCveestado()); + dataResult.put("serieBPe", c.getSerie()); + dataResult.put("numeroBPe", c.getNumeroCorrente()); + dataResult.put("descricao", c.getDispositivoEmbarcada() == null ? "" : c.getDispositivoEmbarcada().getDescricao()); + dataResult.put("puntoVenta", c.getPuntoventa().getNombpuntoventa()); + + this.dados.add(dataResult); + } + } + }); + } + + @Override + protected void processaParametros() throws Exception { + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_es.properties new file mode 100644 index 000000000..988e29155 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_es.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: + +label.id=Id +label.empresa=Empresa +label.uf=UF +label.serieBPe=Série BPe +label.numeroBPe=Número BPe +label.puntoVenta=Agência +label.descricao=Descrição \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_pt_BR.properties new file mode 100644 index 000000000..988e29155 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioAutorizacaoUsoSerieEmbarcada_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: + +label.id=Id +label.empresa=Empresa +label.uf=UF +label.serieBPe=Série BPe +label.numeroBPe=Número BPe +label.puntoVenta=Agência +label.descricao=Descrição \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jasper new file mode 100644 index 000000000..78da450f5 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jrxml new file mode 100644 index 000000000..1de2d9488 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAutorizacaoUsoSerieEmbarcada.jrxml @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + <band height="57" splitType="Stretch"> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="6b9dfb4a-ddaf-4fbf-a0bf-97ed7880731e" mode="Transparent" x="0" y="0" width="266" height="41" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Left" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="14" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$P{NOME_RELATORIO}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="c5627956-e2cb-4070-883a-1ed2998db73a" mode="Transparent" x="266" y="25" width="267" height="16" forecolor="#000000" backcolor="#FFFFFF"/> + <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[$R{cabecalho.pagina}+" "+$V{PAGE_NUMBER}+" "+$R{cabecalho.de}]]></textFieldExpression> + </textField> + <textField pattern="" isBlankWhenNull="false"> + <reportElement uuid="5095b103-3ebc-4cf5-82ae-7092660d11f3" mode="Transparent" x="451" y="42" width="104" height="15" forecolor="#000000" backcolor="#FFFFFF"/> + <textElement textAlignment="Right" verticalAlignment="Top" rotation="None" markup="none"> + <font fontName="SansSerif" size="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.impressorPor}+" "+$P{USUARIO}]]></textFieldExpression> + </textField> + <textField evaluationTime="Report" pattern="" isBlankWhenNull="false"> + <reportElement uuid="0fa5256d-13fa-42d6-80ba-34ef46118d57" mode="Transparent" x="534" y="25" width="21" height="16" forecolor="#000000" backcolor="#FFFFFF"/> + <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> + <reportElement uuid="94271174-f7ce-4c3a-9069-c985501bf0b3" x="266" y="0" width="185" height="25"/> + <textElement textAlignment="Right"> + <font size="9" isBold="true"/> + </textElement> + <textFieldExpression><![CDATA[$R{cabecalho.dataHora}]]></textFieldExpression> + </textField> + <textField pattern="dd/MM/yyyy HH:mm" isBlankWhenNull="false"> + <reportElement uuid="912b0160-b0a3-4755-a620-ba63174cf0bd" mode="Transparent" x="451" y="0" width="104" height="25" 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[new java.util.Date()]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaAutorizacaoUsoSerieEmbarcadaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaAutorizacaoUsoSerieEmbarcadaController.java index a115087a9..5173c33e3 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaAutorizacaoUsoSerieEmbarcadaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaAutorizacaoUsoSerieEmbarcadaController.java @@ -5,6 +5,8 @@ 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; @@ -23,6 +25,8 @@ import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Estado; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioAutorizacaoUsoSerieEmbarcada; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.EstadoService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; @@ -47,6 +51,9 @@ public class BusquedaAutorizacaoUsoSerieEmbarcadaController extends MyGenericFor @Autowired private DispositivoEmbarcadaDAO dispositivoEmbarcadaDAO; + + @Autowired + private DataSource dataSourceRead; private MyComboboxEstandar cmbEmpresa; private List lsEmpresa; @@ -194,14 +201,28 @@ public class BusquedaAutorizacaoUsoSerieEmbarcadaController extends MyGenericFor refreshLista(); } - public void onClick$btnExportarPdf(Event ev) throws SQLException, Exception { + @SuppressWarnings({ "unchecked", "rawtypes" }) + public void onClick$btnExportar(Event ev) throws SQLException, Exception { + List selecao = autorizacaoUsoSerieEmbarcadaList.getListData(); + if (selecao == null || selecao.isEmpty()) { + return; + } + + HashMap parametros = new HashMap(); + parametros.put("NOME_RELATORIO", Labels.getLabel("autorizacaoUsoSerieEmbarcadaController.relatorio.titulo")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + parametros.put("USUARIO_NOME", UsuarioLogado.getUsuarioLogado().getNombusuario()); + + Relatorio relatorio = new RelatorioAutorizacaoUsoSerieEmbarcada(selecao, dataSourceRead.getConnection(), parametros); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + openWindow("/component/reportView.zul", + Labels.getLabel("autorizacaoUsoSerieEmbarcadaController.relatorio.titulo"), args, MODAL); } - public void onClick$btnExportarXls(Event ev) throws SQLException, Exception { - } - public void onClick$btnNovo(Event ev) { editar(new CtrlSerieEmbarcada()); } diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index f658f0329..ce87f3510 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -8043,6 +8043,7 @@ autorizacaoUsoSerieEmbarcadaController.descricao.value = Descrição autorizacaoUsoSerieEmbarcadaController.serie.value = Série autorizacaoUsoSerieEmbarcadaController.mac.value = MAC autorizacaoUsoSerieEmbarcadaController.mei.value = IMEI +autorizacaoUsoSerieEmbarcadaController.relatorio.titulo=Relatório Uso de Série por Dispositivo autorizacaoUsoSerieEmbarcadaController.id.value=ID autorizacaoUsoSerieEmbarcadaController.empresa.value=EMPRESA diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index ac5560f12..e91c5c473 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -8466,8 +8466,7 @@ dispositivoVendaEmbarcadaController.dataHora.value = Data/Hora dispositivoVendaEmbarcadaController.tipoBloqueioDispositivoEmbarcada.value = Tipo Bloqueio dispositivoVendaEmbarcadaController.btnAdicionar.tooltiptext = Incluir dispositivoVendaEmbarcadaController.btnRemover.tooltiptext = Eliminar -dispositivoVendaEmbarcadaController.btnExportarPdf.label = Salvar PDF -dispositivoVendaEmbarcadaController.btnExportarXls.label = Salvar XLS +dispositivoVendaEmbarcadaController.btnExportar.label = Exportar Relatório dispositivoVendaEmbarcadaController.mniRelatorioDispositivoEmbarcada.label = Relatório Dispositivo Embarcada editarDispositivoVendaEmbarcadaController.MSG.suscribirOK = Dispositivo cadastrado com sucesso! editarDispositivoVendaEmbarcadaController.window.title = Cadastro Dispositivo Embarcada @@ -8539,6 +8538,7 @@ autorizacaoUsoSerieEmbarcadaController.descricao.value = Descrição autorizacaoUsoSerieEmbarcadaController.serie.value = Série autorizacaoUsoSerieEmbarcadaController.mac.value = MAC autorizacaoUsoSerieEmbarcadaController.mei.value = IMEI +autorizacaoUsoSerieEmbarcadaController.relatorio.titulo=Relatório Uso de Série por Dispositivo autorizacaoUsoSerieEmbarcadaController.id.value=ID autorizacaoUsoSerieEmbarcadaController.empresa.value=EMPRESA