diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java index 952ddef0c..179b71636 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java @@ -183,6 +183,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private Checkbox chkPermitirImpressaoGratuidade; private Checkbox chkIndBilheteDevDebitoDinheiro; private Textbox txtEmail; + private Intbox txtCodigoEMTU; private Checkbox chkHabilitarFidelidade; private Checkbox chkNaoAlterarDiagrama; private Intbox intPontuacaoFraudeIni; diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/GeracaoArquivoEMTUController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/GeracaoArquivoEMTUController.java new file mode 100644 index 000000000..15acd57c2 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/GeracaoArquivoEMTUController.java @@ -0,0 +1,408 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional; + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.InputStream; +import java.math.BigDecimal; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Timestamp; +import java.text.DecimalFormat; +import java.text.NumberFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import javax.sql.DataSource; + +import org.apache.commons.lang.StringUtils; +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.Combobox; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Filedownload; +import org.zkoss.zul.Intbox; +import org.zkoss.zul.ListModelList; +import org.zkoss.zul.Radio; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.exception.BusinessException; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +@Controller("geracaoArquivoEMTUController") +@Scope("prototype") +public class GeracaoArquivoEMTUController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private Datebox datReferencia; + private Combobox cmbEmpresa; + private Intbox txtNumSequencia; + private Radio rdViagem; + + private List lsEmpresa; + + @Autowired + private EmpresaService empresaService; + @Autowired + private DataSource dataSource; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = empresaService.obtenerTodos(); + + super.doAfterCompose(comp); + } + + public void onClick$btnGerarArquivo(Event ev) throws Exception { + cmbEmpresa.getValue(); + txtNumSequencia.getValue(); + datReferencia.getValue(); + + Empresa empresa = (Empresa) cmbEmpresa.getSelectedItem().getValue(); + + if (empresa.getCodigoEmtu() == null || empresa.getCodigoEmtu() == 0) { + Messagebox.show(Labels.getLabel("geracaoArquivoEMTUController.MSG.empresaSemCodigoEMTU"), + Labels.getLabel("geracaoArquivoEMTU.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; + } + + + baixarArquivos(montarNomeArquivo(empresa.getCodigoEmtu(), txtNumSequencia.getValue())); + salvarNumSequencia(txtNumSequencia.getValue(), empresa); + } + + private void baixarArquivos(String nomeArquivo) throws Exception { + + List itensViagem = new ArrayList(); + List itensReceita = new ArrayList(); + + if (rdViagem.isChecked()) { + itensViagem = getItensViagem(); + } else { + itensReceita = getItensReceita(); + } + + if (itensViagem.isEmpty() && itensReceita.isEmpty()) { + Messagebox.show(Labels.getLabel("geracaoArquivoEMTUController.MSG.dadosVazios"), + Labels.getLabel("geracaoArquivoEMTU.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; + } + + FileOutputStream fos = new FileOutputStream(nomeArquivo); + fos.write(rdViagem.isChecked() ? getDadosArquivoViagens(itensViagem).getBytes() : getDadosArquivoReceita(itensReceita).getBytes()); + fos.close(); + InputStream is = new FileInputStream(nomeArquivo); + Filedownload.save(is, "application/txt", nomeArquivo); + } + + private String getDadosArquivoViagens(List itensViagem) { + StringBuilder dados = new StringBuilder(); + + dados.append(getHeader("01")); + dados.append(getViagens(itensViagem)); + + return dados.toString(); + } + + private String getViagens(List itensViagem) { + StringBuilder dados = new StringBuilder(); + + Integer numeroRegistro = 2; + SimpleDateFormat formatoSemHora = new SimpleDateFormat("ddMMyyyy"); + SimpleDateFormat formatoHora = new SimpleDateFormat("HHmm"); + + for (ItemViagem item : itensViagem) { + dados.append("\n") + .append(completeZerosToLeft(numeroRegistro.toString(), 6)) + .append("V") + .append("000000") // prefixo do veiculo + .append(completeZerosToLeft(item.passageiros.toString(), 6)) + .append(completeZerosToLeft(item.viagens.toString(), 4)) + .append(StringUtils.rightPad(item.linha, 6)) + .append(item.sentido == 0 ? "2" : "1") + .append(completeZerosToLeft(item.km.toString(), 6)) + .append(formatoSemHora.format(item.dataReferencia)) + .append("002") // tipo do veiculo + .append(formatoHora.format(item.dataSaida)) + .append(formatoHora.format(item.dataChegada)) + .append("0000000"); + numeroRegistro++; + } + + return dados.toString(); + } + + private String getDadosArquivoReceita(List itensReceita) { + StringBuilder dados = new StringBuilder(); + + dados.append(getHeader("03")); + dados.append(getReceitas(itensReceita)); + + return dados.toString(); + } + + private String getReceitas(List itensReceita) { + StringBuilder dados = new StringBuilder(); + + Integer numeroRegistro = 2; + SimpleDateFormat formatoSemHora = new SimpleDateFormat("ddMMyyyy"); + NumberFormat formatter = new DecimalFormat("#0.00"); + + for (ItemReceita item : itensReceita) { + dados.append("\n") + .append(completeZerosToLeft(numeroRegistro.toString(), 6)) + .append("R") + .append(completeZerosToLeft(item.linha, 6)) + .append("100") // Tipo Passagem + .append("7") // Modalidade Pagamento + .append(completeZerosToLeft(item.passagensVendidas.toString(), 7)) + .append(completeZerosToLeft(formatter.format(item.valor.doubleValue()).replace(",", ""), 8)) + .append(formatoSemHora.format(item.dataReferencia)) + .append(item.sentido == 0 ? "2" : "1") + .append(item.tipoReceita == 0 ? "01" : "02") + .append(" ") // Linha integração + .append(" ") + .append("0000000"); // id da linha caso seja de 7 digitos + numeroRegistro++; + } + + return dados.toString(); + } + + private List getItensReceita() { + List result = new ArrayList(); + + String sql = getSqlReceita(); + + try { + NamedParameterStatement stmt = new NamedParameterStatement(dataSource.getConnection(), sql); + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + ItemReceita item = new ItemReceita(); + item.linha = rset.getString("linha"); + item.passagensVendidas = rset.getInt("passagensVendidas"); + item.valor = rset.getBigDecimal("valor"); + item.dataReferencia = rset.getTimestamp("dataReferencia"); + item.sentido = rset.getInt("sentido"); + item.tipoReceita = rset.getInt("tipoReceita"); + result.add(item); + } + + } catch (SQLException e) { + e.printStackTrace(); + } + + return result; + } + + private String getSqlReceita() { + + StringBuilder sql = new StringBuilder(); + + SimpleDateFormat formatSemHora = new SimpleDateFormat("dd/MM/yyyy"); + String formatToDate = ("'dd/MM/yyyy hh24:mi:ss'"); + + sql.append("SELECT DISTINCT "); + sql.append("ruta.NUMRUTA as linha, "); + sql.append("COUNT(boleto.BOLETO_ID) as passagensVendidas, "); + sql.append("ruta.INDSENTIDOIDA as sentido, "); + sql.append("(CASE WHEN origem.CIUDAD_ID = destino.CIUDAD_ID THEN 0 ELSE 1 END) as tipoReceita, "); + sql.append("SUM( coalesce(boleto.PRECIOPAGADO,0) + coalesce(boleto.IMPORTEOUTROS,0) "); + sql.append("+ coalesce(boleto.IMPORTEPEDAGIO,0) + coalesce(boleto.IMPORTESEGURO,0) "); + sql.append("+ coalesce(boleto.IMPORTETAXAEMBARQUE,0)) as valor, "); + sql.append("TRUNC(boleto.FECHORVENTA) AS dataReferencia "); + + sql.append("FROM BOLETO boleto "); + sql.append("INNER JOIN RUTA ruta ON ruta.RUTA_ID = boleto.RUTA_ID "); + sql.append("INNER JOIN PARADA origem ON origem.PARADA_ID = boleto.ORIGEN_ID "); + sql.append("INNER JOIN PARADA destino ON destino.PARADA_ID = boleto.DESTINO_ID "); + + sql.append("AND boleto.ACTIVO = 1 "); + sql.append("AND boleto.INDCANCELACION = 0 "); + sql.append("AND boleto.INDREIMPRESION = 0 "); + sql.append("AND boleto.INDSTATUSOPERACION = 'F' "); + sql.append("AND boleto.FECHORVENTA BETWEEN TO_DATE('" + formatSemHora.format(datReferencia.getValue()) + " 00:00:00', " + formatToDate + ") " + + "AND TO_DATE('" + formatSemHora.format(datReferencia.getValue()) + " 23:59:59', " + formatToDate + ") "); + + sql.append("GROUP BY ruta.NUMRUTA, "); + sql.append("ruta.INDSENTIDOIDA, "); + sql.append("(CASE WHEN origem.CIUDAD_ID = destino.CIUDAD_ID THEN 0 ELSE 1 END), "); + sql.append("TRUNC(boleto.FECHORVENTA) "); + + return sql.toString(); + } + + private String getHeader(String codigoDemonstracao) { + StringBuilder header = new StringBuilder(); + + Empresa empresa = (Empresa) cmbEmpresa.getSelectedItem().getValue(); + + header.append("000001") + .append("H") + .append("1") + .append(completeZerosToLeft(txtNumSequencia.getText(), 3)) + .append(codigoDemonstracao) + .append(String.format("%-20.20s", empresa.getNombempresa())) + .append(new SimpleDateFormat("ddMMyyyy").format(datReferencia.getValue())) + .append(completeZerosToLeft(empresa.getCodigoEmtu().toString(), 5)) + .append(" ") + .append("0000256"); + + return header.toString(); + } + + private String montarNomeArquivo(Integer codigoEmtu, Integer numSequencia) { + return "RM" + completeZerosToLeft(codigoEmtu.toString(), 5) + "." + completeZerosToLeft(numSequencia.toString(), 3) + ".txt"; + } + + private String completeZerosToLeft(String value, int size) { + String result = value; + while (result.length() < size) { + result = '0' + result; + } + return result; + } + + private void salvarNumSequencia(int num, Empresa empresa) throws BusinessException { + if (num == 999) { + num = 0; + } else { + num++; + } + empresa = empresaService.obtenerID(empresa.getEmpresaId()); + empresa.setSequenciaEmtu(num); + empresaService.suscribirActualizacion(empresa); + txtNumSequencia.setValue(num); + cmbEmpresa.setModel(new ListModelList(empresaService.obtenerTodos())); + } + + public void onChange$cmbEmpresa(Event ev) { + Empresa empresa = (Empresa) cmbEmpresa.getSelectedItem().getValue(); + if (empresa != null) { + txtNumSequencia.setValue(empresa.getSequenciaEmtu() == null ? 0 : empresa.getSequenciaEmtu()); + } + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + private List getItensViagem() { + List result = new ArrayList(); + + String sql = getSqlViagem(); + + try { + NamedParameterStatement stmt = new NamedParameterStatement(dataSource.getConnection(), sql); + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + ItemViagem item = new ItemViagem(); + item.dataChegada = rset.getTimestamp("dataChegada"); + item.dataReferencia = rset.getTimestamp("dataReferencia"); + item.dataSaida = rset.getTimestamp("dataSaida"); + item.linha = rset.getString("linha"); + item.passageiros = rset.getInt("passageiros"); + item.prefixo = rset.getString("prefixo"); + item.sentido = rset.getInt("sentido"); + item.km = rset.getInt("km"); + item.viagens = rset.getInt("viagens"); + + result.add(item); + } + + } catch (SQLException e) { + e.printStackTrace(); + } + + return result; + } + + private String getSqlViagem() { + StringBuilder sql = new StringBuilder(); + + SimpleDateFormat formatSemHora = new SimpleDateFormat("dd/MM/yyyy"); + String formatToDate = ("'dd/MM/yyyy hh24:mi:ss'"); + + sql.append("SELECT DISTINCT "); + sql.append("ruta.PREFIXO AS prefixo, "); + sql.append("(SELECT COUNT(*) FROM BOLETO b "); + sql.append("WHERE b.CORRIDA_ID = corrida.CORRIDA_ID "); + sql.append("AND b.FECCORRIDA = corrida.FECCORRIDA "); + sql.append("AND b.ACTIVO = 1 "); + sql.append("AND b.INDCANCELACION = 0 "); + sql.append("AND b.INDREIMPRESION = 0 "); + sql.append("AND b.INDSTATUSOPERACION = 'F') AS passageiros, "); + sql.append("(SELECT COUNT(DISTINCT c.CORRIDA_ID) "); + sql.append("FROM CORRIDA c "); + sql.append("INNER JOIN RUTA l ON (l.RUTA_ID = c.RUTA_ID AND l.ACTIVO = 1) "); + sql.append("WHERE c.FECCORRIDA = corrida.FECCORRIDA "); + sql.append("AND l.RUTA_ID = ruta.RUTA_ID "); + sql.append("AND c.AUTOBUS_ID = corrida.AUTOBUS_ID "); + sql.append("AND c.ACTIVO = 1) AS viagens, "); + sql.append("ruta.NUMRUTA AS linha, "); + sql.append("ruta.INDSENTIDOIDA AS sentido, "); + sql.append("(SELECT TRUNC(SUM(t.CANTKMREAL)) FROM CORRIDA_TRAMO ct "); + sql.append("INNER JOIN TRAMO t ON t.TRAMO_ID = ct.TRAMO_ID "); + sql.append("WHERE corrida.CORRIDA_ID = ct.CORRIDA_ID "); + sql.append("AND ct.FECCORRIDA = corrida.FECCORRIDA) AS km, "); + sql.append("corrida.FECCORRIDA AS dataReferencia, "); + sql.append("corrida.FECHORSALIDA AS dataSaida, "); + sql.append("(SELECT temp.FECHORLLEGADA FROM ( "); + sql.append("SELECT ct.FECHORLLEGADA, ct.CORRIDA_ID, ct.FECCORRIDA "); + sql.append("FROM CORRIDA_TRAMO ct "); + sql.append("WHERE ct.ACTIVO = 1 "); + sql.append("ORDER BY ct.NUMSECUENCIA DESC) temp "); + sql.append("WHERE temp.CORRIDA_ID = corrida.CORRIDA_ID "); + sql.append("AND temp.FECCORRIDA = corrida.FECCORRIDA AND ROWNUM = 1) as dataChegada "); + + sql.append("FROM CORRIDA corrida "); + sql.append("INNER JOIN RUTA ruta ON (ruta.RUTA_ID = corrida.RUTA_ID AND ruta.ACTIVO = 1) "); + sql.append("INNER JOIN BOLETO boleto ON (boleto.CORRIDA_ID = corrida.CORRIDA_ID AND corrida.FECCORRIDA = boleto.FECCORRIDA) "); + sql.append("INNER JOIN AUTOBUS autobus ON (autobus.AUTOBUS_ID = corrida.AUTOBUS_ID) "); + sql.append("WHERE corrida.ACTIVO = 1 "); + sql.append("AND boleto.ACTIVO = 1 "); + sql.append("AND corrida.FECCORRIDA BETWEEN TO_DATE('" + formatSemHora.format(datReferencia.getValue()) + " 00:00:00', " + formatToDate + ") " + + "AND TO_DATE('" + formatSemHora.format(datReferencia.getValue()) + " 23:59:59', " + formatToDate + ") "); + + return sql.toString(); + } + + class ItemViagem { + public String prefixo; + public Integer passageiros; + public Integer viagens; + public String linha; + public Integer sentido; + public Integer km; + public Timestamp dataReferencia; + public Timestamp dataSaida; + public Timestamp dataChegada; + } + + class ItemReceita { + public String linha; + public Integer passagensVendidas; + public BigDecimal valor; + public Timestamp dataReferencia; + public Integer sentido; + public Integer tipoReceita; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/esquemaoperacional/ItemGeracaoArquivoEMTU.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/esquemaoperacional/ItemGeracaoArquivoEMTU.java new file mode 100644 index 000000000..bc7604f5e --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/esquemaoperacional/ItemGeracaoArquivoEMTU.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemGeracaoArquivoEMTU extends DefaultItemMenuSistema { + + public ItemGeracaoArquivoEMTU() { + super("indexController.mniGeracaoArquivoEMTU.label"); + } + + @Override + public String getClaveMenu() { +// return "COM.RJCONSULTORES.ADMINISTRACION.GUI.ESQUEMAOPERACIONAL.MENU.GERACAOARQUIVOEMTU"; + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.ESQUEMAOPERACIONAL.MENU.ATUALIZARCORRIDAFECHUSOFECVERANO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/esquema_operacional/geracaoArquivoEMTU.zul", + Labels.getLabel("geracaoArquivoEMTU.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 435f5ffaf..2c0684abb 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 @@ -86,6 +86,7 @@ esquemaOperacional.generacionCorrida=com.rjconsultores.ventaboletos.web.utileria esquemaOperacional.confrestricaocanalventa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemMenuConfRestricaoCanalVenta esquemaOperacional.selecionarservicosgerar=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemSelecionarServicosGerar esquemaOperacional.atualizacorridafechusofecverano=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemAtualizaCorridaFecHusoFecVerano +esquemaOperacional.geracaoArquivoEMTU=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemGeracaoArquivoEMTU tarifasOficial=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifasOficial.MenuTarifasOficial tarifasOficial.seguroKm=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifasOficial.ItemMenuSeguroKm tarifasOficial.seguroTarifa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifasOficial.ItemMenuSeguroTarifa diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index b512231ca..559d26b00 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -224,6 +224,7 @@ indexController.mniPtovtaEmpresa.label = Punto de venta empresa indexController.mniConfRestricaoCanalVenta.label = Bloqueo de tramos por canal de venta indexController.mniSelecionarServicosGerar.label = Seleccionar corridas a generar indexController.mniCasetaPeaje.label = Caseta Peaje +indexController.mniGeracaoArquivoEMTU.label = Geração Arquivo EMTU indexController.mniOrgaoConcedente.label = Instituición concedente indexController.mniCoeficienteTarifa.label = Indice tarifario indexController.mniGenerarTarifaOrgao.label= Generar/Actualizar tarifa oficial @@ -1165,6 +1166,7 @@ editarEmpresaController.boletoAgrupado.label = Boleto Agrupado editarEmpresaController.enviarEmailComissao.label = Enviar email pendencias cierre editarEmpresaController.naopermiteconfsemmalote.label = No Permite conferencia sin confirmación del malote editarEmpresaController.email.label = Email +editarEmpresaController.codigoEMTU.label = Código Empresa(EMTU) editarEmpresaController.btnPesquisa.label = Búsqueda editarEmpresaController.inscEstCnpj.label = CNPJ editarEmpresaController.inscEstLogradouro.label = Calle @@ -6113,6 +6115,22 @@ selecionarServicosGerarController.MSG.dataInicialMaiorFinal = Fecha inicial mayo selecionarServicosGerarController.MSG.operacaoFinalizar = Generación finalizada. Se generaron {0} corridas selecionarServicosGerarController.lblTxt.value=Período para generación de las corridas selecionadas: +#Geracao Arquivo EMTU +geracaoArquivoEMTU.window.title=Geração Arquivo EMTU +geracaoArquivoEMTUController.label.btnGerarArquivo=Gerar Arquivo +geracaoArquivoEMTUController.label.datInicial=Data Venda Inicial +geracaoArquivoEMTUController.label.datReferencia= Data de Referência +geracaoArquivoEMTUController.label.datFinal=Data Venda Final +geracaoArquivoEMTUController.label.empresa=Empresa +geracaoArquivoEMTUController.label.numSequencia= Número Sequência +geracaoArquivoEMTUController.label.tipoArquivo=Tipo Arquivo +geracaoArquivoEMTUController.label.tipoArquivoViagem=Viagem +geracaoArquivoEMTUController.label.tipoArquivoReceita=Receita + +geracaoArquivoEMTUController.MSG.datasInvalidas=Data inicial deve ser menor do que a final. +geracaoArquivoEMTUController.MSG.empresaSemCodigoEMTU=Empresa não possui código EMTU cadastrado. +geracaoArquivoEMTUController.MSG.dadosVazios=Não foram encontrados dados para geração do arquivo nesta data. + #Busca Tarjeta Credito busquedaTarjetaCreditoController.window.title = Tarjeta de crédito busquedaTarjetaCreditoController.btnRefresh.tooltiptext = Actualizar diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 8cb8b9655..3162c526e 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -233,6 +233,7 @@ indexController.mniPtovtaEmpresa.label = Ponto de Venda Empresa indexController.mniConfRestricaoCanalVenta.label = Bloqueio de Trechos p/ Canal de Venda indexController.mniSelecionarServicosGerar.label = Selecionar Serviços a Gerar indexController.mniAtualizarCorridaFecHusoFecVerano.label = Atualizar Ser. por Fuso e H. de Verão +indexController.mniGeracaoArquivoEMTU.label = Geração Arquivo EMTU indexController.mniCasetaPeaje.label = Praça de Pedágio indexController.mniOrgaoConcedente.label = Orgão Concedente indexController.mniCoeficienteTarifa.label = Coeficiente Tarifario @@ -1262,6 +1263,7 @@ editarEmpresaController.boletoAgrupado.label = Boleto Agrupado editarEmpresaController.enviarEmailComissao.label = Enviar email pendências fechamento editarEmpresaController.naopermiteconfsemmalote.label = Não Permite Conferência Sem Confirmação do Malote editarEmpresaController.email.label = Email (para mais, separar com ';') +editarEmpresaController.codigoEMTU.label = Código Empresa(EMTU) editarEmpresaController.btnPesquisa.label = Pesquisa editarEmpresaController.inscEstCnpj.label = CNPJ editarEmpresaController.inscEstLogradouro.label = Logradouro @@ -6374,6 +6376,21 @@ atualizarCorridaFecHusoFecVeranoController.label.FecVerano = Horário de Verão atualizarCorridaFecHusoFecVeranoController.label.CorrecionFec = Correção com data base. atualizarCorridaFecHusoFecVeranoController.label.FecBase = Data Base. +#Geracao Arquivo EMTU +geracaoArquivoEMTU.window.title=Geração Arquivo EMTU +geracaoArquivoEMTUController.label.btnGerarArquivo=Gerar Arquivo +geracaoArquivoEMTUController.label.datInicial=Data Venda Inicial +geracaoArquivoEMTUController.label.datReferencia= Data de Referência +geracaoArquivoEMTUController.label.datFinal=Data Venda Final +geracaoArquivoEMTUController.label.empresa=Empresa +geracaoArquivoEMTUController.label.numSequencia=Número Sequência +geracaoArquivoEMTUController.label.tipoArquivo=Tipo Arquivo +geracaoArquivoEMTUController.label.tipoArquivoViagem=Viagem +geracaoArquivoEMTUController.label.tipoArquivoReceita=Receita + +geracaoArquivoEMTUController.MSG.datasInvalidas=Data inicial deve ser menor do que a final. +geracaoArquivoEMTUController.MSG.empresaSemCodigoEMTU=Empresa não possui código EMTU cadastrado. +geracaoArquivoEMTUController.MSG.dadosVazios=Não foram encontrados dados para geração do arquivo nesta data. #Busca Tarjeta Credito busquedaTarjetaCreditoController.window.title = Cartão de Crédito diff --git a/web/gui/catalogos/editarEmpresa.zul b/web/gui/catalogos/editarEmpresa.zul index 7635ab2c5..8f994d782 100644 --- a/web/gui/catalogos/editarEmpresa.zul +++ b/web/gui/catalogos/editarEmpresa.zul @@ -5,6 +5,7 @@ + + + + diff --git a/web/gui/esquema_operacional/geracaoArquivoEMTU.zul b/web/gui/esquema_operacional/geracaoArquivoEMTU.zul new file mode 100644 index 000000000..469c5c856 --- /dev/null +++ b/web/gui/esquema_operacional/geracaoArquivoEMTU.zul @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +