From 1675bca711f36b739acafee39d39fda0bdcb4fa6 Mon Sep 17 00:00:00 2001 From: celio Date: Thu, 22 Jul 2021 17:20:39 +0000 Subject: [PATCH] bug#22299 dev: GLEIMAR qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@107953 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../relatorios/impl/RelatorioMensalDAER.java | 32 ++- .../RelatorioMensalDAERController.java | 262 ++++++++++++++++-- web/WEB-INF/i3-label_pt_BR.label | 27 +- .../relatorios/filtroRelatorioMensalDAER.zul | 87 +++++- 4 files changed, 361 insertions(+), 47 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMensalDAER.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMensalDAER.java index 096f0eb14..65f3cd23f 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMensalDAER.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMensalDAER.java @@ -24,7 +24,7 @@ public class RelatorioMensalDAER extends Relatorio { private List lsDadosRelatorio; private static Logger log = Logger.getLogger(RelatorioMensalDAER.class); - + /** * @param parametros * @param conexao @@ -38,9 +38,10 @@ public class RelatorioMensalDAER extends Relatorio { try { String agencia = parametros.get("AGENCIA") != null ? parametros.get("AGENCIA").toString() : null; Empresa empresa = parametros.get("EMPRESA") != null ? (Empresa) (parametros.get("EMPRESA")) : null; + String tipoVenta = parametros.get("TIPOVENTA_ID").toString(); // Executa query relatório e preenche objeto relatório - lsDadosRelatorio = preencheAgrupaRelatorioBean(preparaExecutaQuery(parametros, conexao, empresa, agencia)); + lsDadosRelatorio = preencheAgrupaRelatorioBean(preparaExecutaQuery(parametros, conexao, empresa, agencia, tipoVenta)); parametros.put("RELATORIOLIST", lsDadosRelatorio); setLsDadosRelatorio(lsDadosRelatorio); @@ -58,8 +59,9 @@ public class RelatorioMensalDAER extends Relatorio { * @return * @throws SQLException */ - private ResultSet preparaExecutaQuery(Map parametros, Connection conexao, Empresa empresa, String agencia) throws SQLException { - String sql = getSql(); + private ResultSet preparaExecutaQuery(Map parametros, Connection conexao, Empresa empresa, String agencia, String tipoVenta) throws SQLException { + Boolean istipoVenta = (!tipoVenta.isEmpty()); + String sql = getSql(istipoVenta); NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); ResultSet rset = null; SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); @@ -75,6 +77,7 @@ public class RelatorioMensalDAER extends Relatorio { } stmt.setInt("EMPRESA", empresa.getEmpresaId()); stmt.setString("AGENCIA", agencia); + stmt.setString("TIPOVENTA_ID", tipoVenta); rset = stmt.executeQuery(); return rset; } @@ -129,7 +132,7 @@ public class RelatorioMensalDAER extends Relatorio { } - protected String getSql() { + protected String getSql(Boolean existeTpVenta) { StringBuilder sql = new StringBuilder(); sql.append("SELECT "); sql.append("( case when ct.numsecuencia = 1 then null "); @@ -149,11 +152,20 @@ public class RelatorioMensalDAER extends Relatorio { sql.append(" AND cn.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) as normal, "); sql.append(" ( SELECT COUNT(ce.corrida_id) FROM corrida ce WHERE ce.corrida_id = co.corrida_id AND ce.tiposervicio_id = 2 "); sql.append(" AND ce.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) as extra, "); - sql.append(" ( SELECT COUNT(caja_id) FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + sql.append(" ( SELECT COUNT(caja_id) FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + if(existeTpVenta) { + sql.append(" AND tipoventa_id in (:TIPOVENTA_ID) "); + } sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS qtdbilhetes, "); - sql.append(" ( SELECT SUM(caja.preciobase+caja.importeseguro)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + sql.append(" ( SELECT SUM(caja.preciobase+caja.importeseguro)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + if(existeTpVenta) { + sql.append(" AND tipoventa_id in (:TIPOVENTA_ID) "); + } sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS manifbilhetes, "); - sql.append(" ( SELECT SUM(caja.importetaxaembarque)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + sql.append(" ( SELECT SUM(caja.importetaxaembarque)FROM caja WHERE corrida_id = co.corrida_id AND ruta_id = co.ruta_id "); + if(existeTpVenta) { + sql.append(" AND tipoventa_id in (:TIPOVENTA_ID) "); + } sql.append(" AND feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY')) AS embarque, "); sql.append(" ' ' as encomendas "); sql.append("FROM corrida co"); @@ -166,7 +178,7 @@ public class RelatorioMensalDAER extends Relatorio { sql.append(" LEFT OUTER JOIN punto_venta pv ON ( pv.PARADA_ID = ct.origen_id ) "); sql.append("WHERE co.activo = 1 "); sql.append(" AND cs.descclase in ('CONVENCIONAL', 'EXECUTIVO', 'SEMI-DIRETO') "); - sql.append(" AND oc.descorgao like '%ANTT%' "); + sql.append(" AND oc.descorgao like '%DAER%' "); sql.append(" AND co.empresacorrida_id = :EMPRESA "); sql.append(" AND pv.puntoventa_Id = :AGENCIA "); sql.append(" AND co.feccorrida BETWEEN TO_DATE(:DATA_INICIO, 'DD/MM/YYYY') AND TO_DATE(:DATA_FINAL, 'DD/MM/YYYY') "); @@ -194,7 +206,7 @@ public class RelatorioMensalDAER extends Relatorio { } } - + @Override protected void processaParametros() throws Exception { diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMensalDAERController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMensalDAERController.java index 22cc1ca92..4e4b366b3 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMensalDAERController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMensalDAERController.java @@ -1,5 +1,7 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -7,24 +9,38 @@ import java.util.Map; import javax.sql.DataSource; +import org.apache.commons.lang.BooleanUtils; 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.Button; import org.zkoss.zul.Combobox; +import org.zkoss.zul.Radio; +import org.zkoss.zul.Row; import org.zkoss.zul.Textbox; import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.EmpresaEmailConfig; +import com.rjconsultores.ventaboletos.entidad.TipoVenta; import com.rjconsultores.ventaboletos.entidad.UsuarioUbicacion; +import com.rjconsultores.ventaboletos.enums.MimeType; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMensalDAER; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; -import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.SaidaRelatorio; +import com.rjconsultores.ventaboletos.service.EmpresaEmailConfigService; +import com.rjconsultores.ventaboletos.service.TipoVentaService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.utilerias.SendMail; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.vo.comissao.EmailConfigVO; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; @Controller("relatorioMensalDAERController") @Scope("prototype") @@ -35,41 +51,68 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { @Autowired private DataSource dataSourceRead; + @Autowired + private TipoVentaService tipoVentaService; + @Autowired - private EmpresaService empresaService; - - //private Datebox datCompetencia; + private EmpresaEmailConfigService empresaEmailConfigService; + private Textbox txtCompetencia; + private Textbox txtEmail; private List lsEmpresas; private Combobox cmbEmpresa; private List lsAgencias; private String agenciasUsuario; - - + private Boolean isPDF = true; + private List lsTipoVenta; + private MyListbox selectedTipoVentaList; + private List listSelectedTipoVenta; + private MyComboboxEstandar cmbTipoVenta; + private Radio rdTipoAnexoPDF; + private Radio rdTipoAnexoXLS; + private Radio rdEmailSim; + private Radio rdEmailNao; + private Row rowTipoAnexo; + private Row rowSendTo; + private Button btnEnviarEmailMensalDAER; - private void executarRelatorio(boolean enviarEmail) throws Exception { + + private void executarRelatorio(boolean isEnviarEmail) throws Exception { try { Map parametros = new HashMap(); - - // Filtro Data Inicial String competencia = txtCompetencia.getValue().toString(); - Date periodo = DateUtil.getDateFromString("01/"+competencia, "dd/MM/yyyy"); - Date dateInicio = DateUtil.inicioFecha(periodo); - parametros.put("DATA_INICIO", dateInicio); - - // Filtro Data Final - competencia = txtCompetencia.getValue().toString(); - parametros.put("MES", competencia.substring(0,2)); - parametros.put("ANO", competencia.substring(3)); + // Filtro Data Inicial + if(competencia.isEmpty()) { + Messagebox.show(Labels.getLabel("relatorioMensalDAERController.data.obrigatoria"), + Labels.getLabel("relatorioMensalDAERController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; + } else { + + Date periodo = DateUtil.getDateFromString("01/"+competencia, "dd/MM/yyyy"); + Date dateInicio = DateUtil.inicioFecha(periodo); + parametros.put("DATA_INICIO", dateInicio); + + // Filtro Data Final + competencia = txtCompetencia.getValue().toString(); + parametros.put("MES", competencia.substring(0,2)); + parametros.put("ANO", competencia.substring(3)); + + Date dateFim = DateUtil.getDataFinalCompetencia(competencia); + parametros.put("DATA_FINAL", dateFim); + } - Date dateFim = DateUtil.getDataFinalCompetencia(competencia); - parametros.put("DATA_FINAL", dateFim); - // Filtro Empresa Empresa empresa = null; if (cmbEmpresa.getSelectedItem() != null) { empresa = (Empresa) cmbEmpresa.getSelectedItem().getValue(); + } else { + Messagebox.show(Labels.getLabel("relatorioMensalDAERController.empresa.obrigatoria"), + Labels.getLabel("relatorioMensalDAERController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; } + parametros.put("EMPRESA", empresa); parametros.put("NOMBEMPRESA", empresa != null ? empresa.getNombempresa() : "TODOS"); @@ -82,14 +125,47 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { parametros.put("RODOVIARIA", UsuarioLogado.getUsuarioLogado().getUsuarioUbicacionList().get(0).getPuntoVenta().getNombpuntoventa().toString()); parametros.put("ESTACION", ""); + StringBuilder tipVenta = new StringBuilder(); + StringBuilder tipVentaIds = new StringBuilder(); + for (TipoVenta venta : listSelectedTipoVenta) { + tipVenta.append(venta.getDesctipoventa()).append(","); + tipVentaIds.append(venta.getTipoventaId()).append(","); + } + + // removendo ultima virgula + tipVentaIds = tipVentaIds.delete(tipVentaIds.length() -1, tipVentaIds.length()); + tipVenta = tipVenta.delete(tipVenta.length() -1, tipVenta.length()); + + parametros.put("TIPOVENTA", tipVenta.append(";").toString()); + parametros.put("TIPOVENTA_ID", tipVentaIds.toString()); + // Instancia o relatório Relatorio relatorio = new RelatorioMensalDAER(parametros, dataSourceRead.getConnection()); - Map args = new HashMap(); - args.put("relatorio", relatorio); + + if (isEnviarEmail) { + + Boolean enviado = enviarEmailDAER(relatorio.getConteudo(isPDF ? SaidaRelatorio.PDF : SaidaRelatorio.XLS), empresa.getEmpresaId(), txtEmail.getValue().toString()); + if (!enviado) { + Messagebox.show( + Labels.getLabel("relatorioMensalDAERController.recibo.email.naoEnvio"), + Labels.getLabel("relatorioMensalDAERController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else { + Messagebox.show( + Labels.getLabel("relatorioMensalDAERController.recibo.email.msg"), + Labels.getLabel("relatorioMensalDAERController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } + + } else { + Map args = new HashMap(); + args.put("relatorio", relatorio); + + // Abre a janela do relatório + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioMensalDAERController.window.title"), args, MODAL); + } - // Abre a janela do relatório - openWindow("/component/reportView.zul", - Labels.getLabel("relatorioMensalDAERController.window.title"), args, MODAL); } catch (Exception e) { log.error("Erro ao executar relatório", e); } @@ -103,12 +179,88 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { public void onClick$btnExecutarRelatorio(Event ev) throws Exception { executarRelatorio(false); } + + public void onClick$btnRemoveTipoVenta(Event ev) throws InterruptedException { + TipoVenta tVenta = (TipoVenta) selectedTipoVentaList.getSelectedItem().getValue(); + listSelectedTipoVenta.remove(tVenta); + selectedTipoVentaList.setData(listSelectedTipoVenta); + } + + public void onClick$btnAddTipoVenta(Event ev) throws InterruptedException { + if (cmbTipoVenta.getSelectedItem() != null) { + listSelectedTipoVenta.add((TipoVenta) cmbTipoVenta.getSelectedItem().getValue()); + selectedTipoVentaList.setData(listSelectedTipoVenta); + selectedTipoVentaList.setSelectedItem(null); + } + } + + public boolean enviarEmailDAER(byte[] anexo, Integer empresaId, String email) { + try { + EmailConfigVO emailConfig = carregarConfiguracoesEmail(empresaId); + if (emailConfig != null) { + SendMail mail = new SendMail(); + mail.setEmailTo(email); + mail.setEmailFrom(emailConfig.getSmtpEmail()); + mail.setSmtpHost(emailConfig.getSmtp()); + mail.setSmtpPassword(emailConfig.getSenha()); + mail.setSmtpPort(emailConfig.getSmtpPorta()); + mail.setSmtpUser(emailConfig.getSmtpEmail()); + mail.setAuth(emailConfig.isAutenticacao()); + + String assunto = null; + String texto = null; + String nomeArquivo = null; + String competencia = txtCompetencia.getValue().toString(); + String formato = isPDF ? ".PDF" : ".XLS"; + + assunto = Labels.getLabel("relatorioMensalDAERController.recibo.email.assunto", new String[] { Labels.getLabel("relatorioMensalDAERController.lbCompetencia.label"), competencia }); + texto = Labels.getLabel("relatorioMensalDAERController.recibo.email.texto", new String[] { Labels.getLabel("relatorioMensalDAERController.lbCompetencia.label"), competencia }); + nomeArquivo = "Relatorio_DAER_" + competencia; + + mail.setSubject(assunto); + mail.setText(texto); + + ByteArrayOutputStream baos = new ByteArrayOutputStream(anexo.length); + baos.write(anexo, 0, anexo.length); + + mail.addAnexo(Labels.getLabel("relatorioMensalDAERController.recibo.email.nomeAnexo", new String[] { nomeArquivo }).concat(formato), baos, isPDF ? MimeType.PDF : MimeType.XLS ); + mail.send(); + + return true; + } + + } catch ( + + Exception e) { + log.error(e.getMessage(), e); + } + return false; + } + + private EmailConfigVO carregarConfiguracoesEmail(Integer empresaId) { + EmailConfigVO emailConfigVO = null; + EmpresaEmailConfig empresaEmailConfig = empresaEmailConfigService.buscarPorEmpresa(new Empresa(empresaId)); + + if (empresaEmailConfig != null) { + emailConfigVO = new EmailConfigVO(); + emailConfigVO.setAutenticacao(BooleanUtils.toBoolean(empresaEmailConfig.getIndAutenticacao())); + emailConfigVO.setSenha(empresaEmailConfig.getSenha()); + emailConfigVO.setSmtp(empresaEmailConfig.getSmtp()); + emailConfigVO.setSmtpEmail(empresaEmailConfig.getSmtpEmail()); + emailConfigVO.setSmtpUser(empresaEmailConfig.getSmtpEmail()); + emailConfigVO.setSmtpPorta(empresaEmailConfig.getSmtpPorta()); + } + + return emailConfigVO; + } @Override public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); lsEmpresas = UsuarioLogado.getUsuarioLogado().getEmpresa(); lsAgencias = UsuarioLogado.getUsuarioLogado().getUsuarioUbicacionActivoList(); + lsTipoVenta = tipoVentaService.obtenerTodos(); + listSelectedTipoVenta = new ArrayList(); StringBuilder agencias = new StringBuilder(); for (int i =0; i< lsAgencias.size() ; i++) { @@ -119,6 +271,56 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { } this.agenciasUsuario = agencias.toString(); } + + public void onCheck$rdTipoAnexoPDF() { + if (rdTipoAnexoPDF.isChecked()) { + tipoRelatorio(true, false); + } + } + + private void tipoRelatorio(boolean PDF, boolean XLS) { + isPDF = (PDF ? PDF : XLS); + } + + public void onCheck$rdTipoAnexoXLS() { + if (rdTipoAnexoXLS.isChecked()) { + tipoRelatorio(false, true); + } + } + + public void onCheck$rdEmailSim() { + if (rdEmailSim.isChecked()) { + controlRowVisibility(true); + } + } + + public void onCheck$rdEmailNao() { + if (rdEmailNao.isChecked()) { + controlRowVisibility(false); + } + } + + private void controlRowVisibility(Boolean isvisivel) { + rowTipoAnexo.setVisible(isvisivel); + rowSendTo.setVisible(isvisivel); + btnEnviarEmailMensalDAER.setDisabled(!isvisivel); + } + + public MyListbox getSelectedTipoVentaidadeList() { + return selectedTipoVentaList; + } + + public void setSelectedTipoVentaList(MyListbox selectedTipoVentaList) { + this.selectedTipoVentaList = selectedTipoVentaList; + } + + public List getListSelectedTipoVenta() { + return listSelectedTipoVenta; + } + + public void setListSelectedTipoVenta(List listSelectedTipoVenta) { + this.listSelectedTipoVenta = listSelectedTipoVenta; + } public List getLsEmpresas() { return lsEmpresas; @@ -127,7 +329,7 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { public void setLsEmpresa(List lsEmpresas) { this.lsEmpresas = lsEmpresas; } - + public List getLsAgencias() { return lsAgencias; } @@ -136,6 +338,12 @@ public class RelatorioMensalDAERController extends MyGenericForwardComposer { this.lsAgencias = lsAgencias; } - + public List getLsTipoVenta() { + return lsTipoVenta; + } + + public void setLsCategorias(List lsTipoVenta) { + this.lsTipoVenta = lsTipoVenta; + } } diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 8423252a5..36e44f701 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -303,6 +303,7 @@ indexController.mniRelatorioOrigemDestino.label = Desempenho Por Serviço indexController.mniRelatorioPassageirosViajar.label = Passageiros a Viajar indexController.mniRelatorioResumoLinhas.label = Resumo de Linhas indexController.mniRelatorioIndiceIRK.label = Indice IRK +indexController.mniRelatorioMensalDAER.label = Relatório Mensal DAER indexController.mniRelatorioKmProgramada.label = Km Programada indexController.mniRelatorioAcompanhamentoEquivalentes.label = Indicadores (Acompanhamento de Equivalentes) indexController.mniRelatorioLinhasHorario.label = Linhas por Horário @@ -692,13 +693,31 @@ relatorioMensalDAERController.window.title= Boletim Estatistico Mensal Rodoviari relatorioMensalDAERController.lbCompetenciaLayout.label = (MM/YYYY) relatorioMensalDAERController.lbCompetencia.label = Mes e Ano relatorioMensalDAERController.lbEmpresa.value = Empresa -relatorioMensalDAERController.labelTipoPassagems.value=Tipos de Passagens relatorioMensalDAERController.tipo.obrigatoria = Tipo de passagens é obrigatório -relatorioMensalDAERController.lbTipoPassgens.value = Tipos de Passagens -relatorioMensalDAERController.labelRemoveTipoPassagem.value = Remover tipo Passagem -relatorioMensalDAERController.labelAdicionaTipoPassagem.value = Adicionar tipo Passagem +relatorioMensalDAERController.lbTipoVenta.value = Tipos de Passagens +relatorioMensalDAERController.lbRemoveTipoVenta.value = Remover tipo Passagem +relatorioMensalDAERController.lbAdicionaTipoVenta.value = Adicionar tipo Passagem relatorioMensalDAERController.lbRelatorio.value = Emitir Relatório relatorioMensalDAERController.lbEnviarEmailDAER.label = E-mail Recibo +relatorioMensalDAERController.tipo.obrigatoria = Tipo de passagens é obrigatório +relatorioMensalDAERController.empresa.obrigatoria = Campo empresa é obrigatório +relatorioMensalDAERController.data.obrigatoria = Campo data é obrigatório +relatorioMensalDAERController.relatorio.vazio = Não existe resultado para os dados informados +relatorioMensalDAERController.lbTipoAnexo.label = Tipo Anexo +relatorioMensalDAERController.lbPDF.value = PDF +relatorioMensalDAERController.lbXLS.value = XLS +relatorioMensalDAERController.lbSim.value = Sim +relatorioMensalDAERController.lbNao.value = Nao +relatorioMensalDAERController.recibo.email.naoEnvio = Não foi possível enviar email - Verifique as configurações +relatorioMensalDAERController.recibo.email.msg = E-mail enviado com sucesso +relatorioMensalDAERController.recibo.email.assunto = Boletim Estatistico Mensal Rodoviarias DAER {0}: {1} +relatorioMensalDAERController.recibo.email.texto = Boletim Estatistico Mensal Rodoviarias DAER {0}: {1} em anexo. +relatorioMensalDAERController.recibo.email.nomeAnexo = Boletim_Estatistico_DAER-{0} +relatorioMensalDAERController.lbEnviaEmail.label = Enviar email +relatorioMensalDAERController.lbEnviaEmailPara.label = Enviar email Para: +relatorioMensalDAERController.lbCompetencia.label = Competência + + #Relatorio Trecho Vendido relatorioTrechoVendidoController.lbDataIni.value = Data Inicial diff --git a/web/gui/relatorios/filtroRelatorioMensalDAER.zul b/web/gui/relatorios/filtroRelatorioMensalDAER.zul index 21f9a5fd2..647afccd0 100644 --- a/web/gui/relatorios/filtroRelatorioMensalDAER.zul +++ b/web/gui/relatorios/filtroRelatorioMensalDAER.zul @@ -7,27 +7,68 @@ + height="335px" width="550px" border="normal"> - + + + + + + + + + + + + - + + + + - + + + + + +