diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioIntegracaoAntiFraude.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioIntegracaoAntiFraude.java index adcf4ac61..71724de70 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioIntegracaoAntiFraude.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioIntegracaoAntiFraude.java @@ -42,12 +42,14 @@ public class RelatorioIntegracaoAntiFraude extends Relatorio { instrucaoSql.append("WHEN CLI.TIPOIDENTIFICADOS_ID = 2 THEN "); instrucaoSql.append(" NUMIDENTIFICADOS "); instrucaoSql.append("END, 11, '0') CPF_COMPRADOR, CLI.NOMBCLIENTE NOME_COMPRADOR, "); - instrucaoSql.append("TO_CHAR(COALESCE(B.FECHORVENTA_H,B.FECHORVENTA), 'DD/MM/YYYY HH24:MI') DATA_HORA_COMPRA, "); + instrucaoSql.append("TO_CHAR(COALESCE(B.FECHORVENTA_H,B.FECHORVENTA), 'DD/MM/YYYY') DATA_COMPRA, "); + instrucaoSql.append("TO_CHAR(COALESCE(B.FECHORVENTA_H,B.FECHORVENTA), 'HH24:MI') HORA_COMPRA, "); instrucaoSql.append("TK.NSU, TK.NUMAUTORIZACION AUTORIZACAO, "); instrucaoSql.append("COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0) + "); instrucaoSql.append("COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTEPEDAGIO,0) + COALESCE(B.IMPORTEOUTROS,0) AS VALOR_TOTAL, "); instrucaoSql.append("B.CORRIDA_ID SERVICO, "); - instrucaoSql.append("TO_CHAR(B.FECHORVIAJE, 'DD/MM/YYYY HH24:MI') DATA_HORA_VIAGEM, "); + instrucaoSql.append("TO_CHAR(B.FECHORVIAJE, 'DD/MM/YYYY') DATA_VIAGEM, "); + instrucaoSql.append("TO_CHAR(B.FECHORVIAJE, 'HH24:MI') HORA_VIAGEM, "); instrucaoSql.append("PO.DESCPARADA ORIGEM, PD.DESCPARADA DESTINO, "); instrucaoSql.append("B.NUMFOLIOSISTEMA BILHETE, "); instrucaoSql.append("B.NUMASIENTO POLTRONA, "); @@ -55,10 +57,18 @@ public class RelatorioIntegracaoAntiFraude extends Relatorio { instrucaoSql.append("TK.STATUSTRANSACAOKONDUTO STATUSTRANSACAOKONDUTO, "); instrucaoSql.append("TK.STATUSTRANSACAO STATUSTRANSACAO, "); instrucaoSql.append("TK.TENTATIVAENVIO TENTATIVAENVIO, "); - instrucaoSql.append("TK.STATUSENVIO STATUSENVIO "); + instrucaoSql.append("TK.STATUSENVIO STATUSENVIO, "); + instrucaoSql.append("E.NOMBEMPRESA NOMBEMPRESA, "); + instrucaoSql.append("PV.NOMBPUNTOVENTA NOMBPUNTOVENTA, "); + instrucaoSql.append("TO_CHAR(TK.DATA_ENVIO, 'DD/MM/YYYY') DATA_ENVIO, "); + instrucaoSql.append("TO_CHAR(TK.DATA_ENVIO, 'HH24:MI') HORA_ENVIO, "); + instrucaoSql.append("TK.VALOR VALOR, "); + instrucaoSql.append("TK.CODIGO_HTTP CODIGO_HTTP "); instrucaoSql.append("FROM BOLETO B "); instrucaoSql.append("INNER JOIN TRANSACAO_KONDUTO TK ON B.BOLETO_ID = TK.BOLETO_ID "); instrucaoSql.append("INNER JOIN MARCA M ON B.MARCA_ID = M.MARCA_ID "); + instrucaoSql.append("INNER JOIN EMPRESA E ON E.EMPRESA_ID = M.EMPRESA_ID "); + instrucaoSql.append("INNER JOIN PUNTO_VENTA PV ON PV.PUNTOVENTA_ID = TK.PUNTOVENTA_ID "); instrucaoSql.append("LEFT JOIN CLIENTE CLI ON B.CLIENTECOMPRADOR_ID = CLI.CLIENTE_ID "); instrucaoSql.append("LEFT JOIN PARADA PO ON B.ORIGEN_ID = PO.PARADA_ID "); instrucaoSql.append("LEFT JOIN PARADA PD ON B.DESTINO_ID = PD.PARADA_ID "); @@ -87,18 +97,26 @@ public class RelatorioIntegracaoAntiFraude extends Relatorio { dataResult.put("ID_KONDUTO", resultSet.getString("ID_KONDUTO")); dataResult.put("CPF_COMPRADOR", resultSet.getString("CPF_COMPRADOR")); dataResult.put("NOME_COMPRADOR", resultSet.getString("NOME_COMPRADOR")); - dataResult.put("DATA_COMPRA", resultSet.getString("DATA_HORA_COMPRA")); + dataResult.put("DATA_COMPRA", resultSet.getString("DATA_COMPRA")); + dataResult.put("HORA_COMPRA", resultSet.getString("HORA_COMPRA")); dataResult.put("NSU", resultSet.getString("NSU")); dataResult.put("AUTORIZACAO", resultSet.getString("AUTORIZACAO")); dataResult.put("VALOR_TOTAL", resultSet.getBigDecimal("VALOR_TOTAL")); + dataResult.put("VALOR", resultSet.getBigDecimal("VALOR")); dataResult.put("SERVICO", resultSet.getString("SERVICO")); - dataResult.put("DATA_VIAGEM", resultSet.getString("DATA_HORA_VIAGEM")); + dataResult.put("DATA_VIAGEM", resultSet.getString("DATA_VIAGEM")); + dataResult.put("HORA_VIAGEM", resultSet.getString("HORA_VIAGEM")); dataResult.put("ORIGEM", resultSet.getString("ORIGEM")); dataResult.put("DESTINO", resultSet.getString("DESTINO")); dataResult.put("BILHETE", resultSet.getString("BILHETE")); dataResult.put("POLTRONA", resultSet.getString("POLTRONA")); dataResult.put("PASSAGEIRO", resultSet.getString("PASSAGEIRO")); dataResult.put("TENTATIVAENVIO", resultSet.getInt("TENTATIVAENVIO")); + dataResult.put("NOMBEMPRESA", resultSet.getString("NOMBEMPRESA")); + dataResult.put("NOMBPUNTOVENTA", resultSet.getString("NOMBPUNTOVENTA")); + dataResult.put("DATA_ENVIO", resultSet.getString("DATA_ENVIO")); + dataResult.put("HORA_ENVIO", resultSet.getString("HORA_ENVIO")); + dataResult.put("CODIGO_HTTP", resultSet.getString("CODIGO_HTTP")); String statustransacao = resultSet.getString("STATUSTRANSACAO"); if(StringUtils.isNotBlank(statustransacao)) { diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_es.properties index b2283679b..0cb71011c 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_es.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_es.properties @@ -20,11 +20,14 @@ label.idKonduto=ID Konduto label.cpfComprador=CPF Comprador label.nomeComprador=Nome Comprador label.dataCompra=Data Compra +label.horaCompra=Hora Compra label.nsu=NSU label.autorizacao=Autorização label.valor=Valor +label.valorTotal=Valor Total label.servico=Serviço label.dataViagem=Data Viagem +label.horaViagem=Hora Viagem label.origem=Origem label.destino=Destino label.bilhete=Bilhete @@ -32,6 +35,11 @@ label.poltrona=Poltrona label.passageiro=Passageiro label.tentativasEnvio=Tentativas Envio label.statusTotalBus=Status totalBus -label.statusKonduto=Status Konduto +label.statusKonduto=Recomendação label.total=Total -label.statusEnvio=Status Envio \ No newline at end of file +label.statusEnvio=Status Envio +label.empresa=Empresa +label.puntoventa=Ponto de Venda +label.dataEnvio=Data Envio +label.horaEnvio=Hora Envio +label.codigoHttp=Código Respostas HTTP \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_pt.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_pt.properties index 01a315209..0ad124307 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_pt.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioIntegracaoAntiFraude_pt.properties @@ -20,11 +20,14 @@ label.idKonduto=ID Konduto label.cpfComprador=CPF Comprador label.nomeComprador=Nome Comprador label.dataCompra=Data Compra +label.horaCompra=Hora Compra label.nsu=NSU label.autorizacao=Autorização label.valor=Valor +label.valorTotal=Valor Total label.servico=Serviço label.dataViagem=Data Viagem +label.horaViagem=Hora Viagem label.origem=Origem label.destino=Destino label.bilhete=Bilhete @@ -32,6 +35,11 @@ label.poltrona=Poltrona label.passageiro=Passageiro label.tentativasEnvio=Tentativas Envio label.statusTotalBus=Status totalBus -label.statusKonduto=Status Konduto +label.statusKonduto=Recomendação label.total=Total -label.statusEnvio=Status Envio \ No newline at end of file +label.statusEnvio=Status Envio +label.empresa=Empresa +label.puntoventa=Ponto de Venda +label.dataEnvio=Data Envio +label.horaEnvio=Hora Envio +label.codigoHttp=Código Respostas HTTP \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jasper index 874620197..e0e71088f 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jrxml index 051359e7c..72ddaafb7 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioIntegracaoAntiFraude.jrxml @@ -1,8 +1,12 @@ - - - - + + + + + + + + @@ -30,9 +34,18 @@ + + + + + + + + + @@ -88,7 +101,7 @@ - + @@ -133,7 +146,7 @@ - + @@ -151,106 +164,107 @@ - + - + - + - + + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -258,77 +272,135 @@ - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + + - + - + - + - + @@ -336,56 +408,56 @@ - + - + - + - + - + - + - + - + @@ -393,32 +465,92 @@ - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + - + @@ -426,15 +558,20 @@ - + - - - + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPtovtaAntifraudeController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPtovtaAntifraudeController.java new file mode 100644 index 000000000..4d29a7940 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPtovtaAntifraudeController.java @@ -0,0 +1,131 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; + +import java.util.List; + +import org.apache.commons.lang.StringUtils; +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.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Combobox; +import org.zkoss.zul.Messagebox; +import org.zkoss.zul.Textbox; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.PtovtaAntifraude; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.service.PtovtaAntifraudeService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; + +/** + * + * @author wilian + * + */ +@Controller("editarPtovtaAntifraudeController") +@Scope("prototype") +public class EditarPtovtaAntifraudeController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private static Logger log = Logger.getLogger(EditarPtovtaAntifraudeController.class); + + @Autowired + private PtovtaAntifraudeService ptovtaAntifraudeService; + + private Combobox cmbEmpresaPtoVtaAntifraude; + private Textbox txtChaveAntifraude; + private PtovtaAntifraude ptovtaAntifraude; + private List lsEmpresas; + private PuntoVenta puntoVenta; + private MyListbox ptovtaAntifraudeList; + private Empresa empresa; + + @Override + public void doAfterCompose(Component comp) throws Exception { + + super.doAfterCompose(comp); + ptovtaAntifraude = (PtovtaAntifraude) Executions.getCurrent().getArg().get("ptovtaComissao"); + this.puntoVenta = (PuntoVenta) Executions.getCurrent().getArg().get("puntoVenta"); + this.ptovtaAntifraudeList = (MyListbox) Executions.getCurrent().getArg().get("ptovtaAntifraudeList"); + lsEmpresas = UsuarioLogado.getUsuarioLogado().getEmpresa(); + empresa = ptovtaAntifraude.getEmpresa(); + txtChaveAntifraude.setValue(ptovtaAntifraude.getChave()); + + } + + public void onClick$btnSalvarPtovtaAntifraude(Event ev) throws InterruptedException { + try { + if(verificarCamposAddChaveAntifraude()) { + if (cmbEmpresaPtoVtaAntifraude.getSelectedItem() == null) { + return; + } + txtChaveAntifraude.getValue(); + + ptovtaAntifraude.setEmpresa(getEmpresa()); + ptovtaAntifraude.setChave(txtChaveAntifraude.getValue()); + ptovtaAntifraude.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + ptovtaAntifraude = ptovtaAntifraudeService.actualizacion(ptovtaAntifraude); + puntoVenta.getPtovtaAntifraudes().set(puntoVenta.getPtovtaAntifraudes().indexOf(ptovtaAntifraude), ptovtaAntifraude); + ptovtaAntifraudeList.setData(puntoVenta.getPtovtaAntifraudes()); + closeWindow(); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + + } + + public List getLsEmpresas() { + return lsEmpresas; + } + + private boolean verificarCamposAddChaveAntifraude() throws InterruptedException { + if (cmbEmpresaPtoVtaAntifraude.getSelectedItem() == null) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.empresaAntifraudeNaoInformada"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return false; + } + + txtChaveAntifraude.getValue(); + if(StringUtils.isBlank(txtChaveAntifraude.getValue())) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.chaveAntifraudeNaoInformada"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return false; + } + + if(ptovtaAntifraudeList.getListData() != null) { + Empresa empresa = (Empresa) cmbEmpresaPtoVtaAntifraude.getSelectedItem().getValue(); + for (Object obj : ptovtaAntifraudeList.getListData()) { + PtovtaAntifraude ptovtaAntifraude = (PtovtaAntifraude) obj; + if(empresa.equals(ptovtaAntifraude.getEmpresa()) && !ptovtaAntifraude.equals(this.ptovtaAntifraude)) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.empresaAntifraudeJaCadastrada"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return false; + } + } + } + return true; + } + + public Empresa getEmpresa() { + return empresa; + } + + public void setEmpresa(Empresa empresa) { + this.empresa = empresa; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java index a28a4c95a..49b10af1b 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java @@ -849,6 +849,14 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer { ptovtaAntifraudeList.setItemRenderer(new RenderPtovtaAntifraude()); ptovtaAntifraudeList.setData(puntoVenta.getPtovtaAntifraudes()); + ptovtaAntifraudeList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + PtovtaAntifraude a = (PtovtaAntifraude) ptovtaAntifraudeList.getSelected(); + verPtovtaAntifraude(a); + } + }); } private void downloadLogIntegracao(Combobox cmb){ @@ -3506,6 +3514,17 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer { } } + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void verPtovtaAntifraude(PtovtaAntifraude ptovtaAntifraude) { + Map args = new HashMap(); + args.put("ptovtaComissao", ptovtaAntifraude); + args.put("puntoVenta", puntoVenta); + args.put("ptovtaAntifraudeList", ptovtaAntifraudeList); + + openWindow("/gui/catalogos/editarPtovtaAntifraude.zul", + Labels.getLabel("editarPtovtaAntifraudeController.window.title"), args, MODAL); + } + public void onClick$radIndvendsegtabelaNo(Event event) { if (radIndvendsegtabelaNo.isChecked()) { radIndestansegtabelaSi.setDisabled(true); diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 4d4a71c5e..9688c9794 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -279,7 +279,7 @@ indexController.mniRelatorioGratuidadeIdosoDeficiente.label = Gratuidades Idoso/ indexController.mniRelatorioVendasBilheteiro.label = Ventas por agente de pasajes indexController.mniRelatorioVendasBilheteiroSintetico.label = Ventas por agentes sintético indexController.mniRelatorioAgenciasNaoImportadas.label = Reporte puntos venta no importados -indexController.mniRelatorioIntegracaoAntiFraude.label = Relatório de Integração com Anti-Fraude +indexController.mniRelatorioIntegracaoAntiFraude.label = Relatório de Integração com Antifraude indexController.mniRelatorioCheckin.label = Checkin's indexController.mniFechamentoParamgeral.label = Cierre cuenta indexController.mniFechamentoParamptovta.label = Cierre cuenta contábil punto de venta @@ -7793,3 +7793,5 @@ relatorioGratuidadeARTESPController.lbDataIni.value = Fecha Inicio relatorioGratuidadeARTESPController.lbDataFin.value = Fecha Final relatorioGratuidadeARTESPController.lbOrgao.value = Instituición concedente editarEmpresaController.usarAliasMapaViagemVenda.ajuda = En la pantalla de Venta o botón de Tarjeta de Viagem deve usar Alias para as Ubicaciones. + +editarPtovtaAntifraudeController.window.title=Editar Chave Antifraude \ No newline at end of file diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 1dbddb671..1e284204f 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -288,7 +288,7 @@ indexController.mniRelatorioVendasBilheteiro.label = Vendas por Bilheteiro indexController.mniRelatorioVendasBilheteiroSintetico.label = Vendas por Bilheteiro Sintético indexController.mniRelatorioCancelamentoAutomaticoECF.label = Relatório de Cancelamento Automatico ECF indexController.mniRelatorioAgenciasNaoImportadas.label = Relatório de Agências não Importadas -indexController.mniRelatorioIntegracaoAntiFraude.label = Relatório de Integração com Anti-Fraude +indexController.mniRelatorioIntegracaoAntiFraude.label = Relatório de Integração com Antifraude indexController.mniRelatorioCheckin.label = Checkin's indexController.mniFechamentoParamgeral.label = Configuração de Boleto indexController.mniFechamentoParamptovta.label = Fechamento Conta Corrente Agência @@ -8261,4 +8261,6 @@ relatorioGratuidadeARTESPController.lbPrefixo.value = Prefixo relatorioGratuidadeARTESPController.lvVenda = Venda relatorioGratuidadeARTESPController.lbOrgao.value = Orgão Concedente editarEmpresaController.usarAliasMapaViagemVenda.ajuda = Na tela de Venda o botão de Mapa de Viagem deve usar Alias para as Localidades. -editarClienteController.MSG.validacaoCPFInvalido = CPF inválido \ No newline at end of file +editarClienteController.MSG.validacaoCPFInvalido = CPF inválido + +editarPtovtaAntifraudeController.window.title=Editar Chave Antifraude \ No newline at end of file diff --git a/web/gui/catalogos/editarPtovtaAntifraude.zul b/web/gui/catalogos/editarPtovtaAntifraude.zul new file mode 100644 index 000000000..597553cec --- /dev/null +++ b/web/gui/catalogos/editarPtovtaAntifraude.zul @@ -0,0 +1,55 @@ + + + + + + + + + + + +