Fixes bug #AL-4506

master
Luis Angel Espina Hernandez 2024-08-27 12:59:26 -04:00
commit a175dd73b9
9 changed files with 131 additions and 12 deletions

View File

@ -4,12 +4,13 @@
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId>
<artifactId>ventaboletosadm</artifactId>
<version>1.128.5</version>
<version>1.130.0</version>
<packaging>war</packaging>
<properties>
<modelWeb.version>1.98.1</modelWeb.version>
<flyway.version>1.86.1</flyway.version>
<modelWeb.version>1.100.0</modelWeb.version>
<flyway.version>1.88.0</flyway.version>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>

View File

@ -32,7 +32,13 @@ public class RelatorioW2ITaxaEmbarqueAnalitico extends Relatorio {
Map<String, Object> parametros = this.relatorio.getParametros();
String puntosVentaIds = (String) parametros.get("NUMPUNTOVENTA");
List<Integer> puntosVentaIdsList = new ArrayList<>();
boolean isTodasAgencias = false;
for (String id : puntosVentaIds.split(",")) {
if("-1".equals(id)) {
isTodasAgencias = true;
break;
}
puntosVentaIdsList.add(Integer.parseInt(id));
}
lsDadosRelatorio = new ArrayList<RelatorioW2IBean>();
@ -40,7 +46,7 @@ public class RelatorioW2ITaxaEmbarqueAnalitico extends Relatorio {
Integer origemID = (Integer) parametros.get("ORIGEN_ID");
Integer destinoID = (Integer) parametros.get("DESTINO_ID");
String sql = getSql(puntosVentaIdsList.size(), empresaID, origemID, destinoID);
String sql = getSql(isTodasAgencias ? 0 : puntosVentaIdsList.size(), empresaID, origemID, destinoID);
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
@ -60,13 +66,14 @@ public class RelatorioW2ITaxaEmbarqueAnalitico extends Relatorio {
stmt.setInt("ORIGEN_ID", destinoID);
int paramIndex = 0;
for (Integer id : puntosVentaIdsList) {
stmt.setInt("PUNTO_VENTA_"+paramIndex, id);
paramIndex++;
if(!isTodasAgencias) {
for (Integer id : puntosVentaIdsList) {
stmt.setInt("PUNTO_VENTA_"+paramIndex, id);
paramIndex++;
}
}
rset = stmt.executeQuery();
rset = stmt.executeQuery();
RelatorioW2IBean relatorioW2IBean = null;
while (rset.next()) {
@ -136,8 +143,8 @@ public class RelatorioW2ITaxaEmbarqueAnalitico extends Relatorio {
sql.append("AND po.parada_id = :ORIGEN_ID ");
if(destinoID != null)
sql.append("AND pd.parada_id = :DESTINO_ID ");
gerarBindPuntoVenta(numPuntosVentaIds, sql);
if(numPuntosVentaIds > 0)
gerarBindPuntoVenta(numPuntosVentaIds, sql);
sql.append(" UNION ");
@ -171,7 +178,8 @@ public class RelatorioW2ITaxaEmbarqueAnalitico extends Relatorio {
if(destinoID != null)
sql.append("AND pd.parada_id = :DESTINO_ID ");
gerarBindPuntoVenta(numPuntosVentaIds, sql);
if(numPuntosVentaIds > 0)
gerarBindPuntoVenta(numPuntosVentaIds, sql);
sql.append("ORDER BY dataVenda ASC ");

View File

@ -97,6 +97,7 @@ import com.rjconsultores.ventaboletos.entidad.EmpresaEmailFlexBus;
import com.rjconsultores.ventaboletos.entidad.EmpresaImposto;
import com.rjconsultores.ventaboletos.entidad.EmpresaIziPayConfig;
import com.rjconsultores.ventaboletos.entidad.EmpresaMercadoPagoConfig;
import com.rjconsultores.ventaboletos.entidad.EmpresaNequiConfig;
import com.rjconsultores.ventaboletos.entidad.EmpresaPMArtespConfig;
import com.rjconsultores.ventaboletos.entidad.EmpresaRecargaConfig;
import com.rjconsultores.ventaboletos.entidad.EmpresaSaferConfig;
@ -133,6 +134,7 @@ import com.rjconsultores.ventaboletos.service.EmpresaEmailService;
import com.rjconsultores.ventaboletos.service.EmpresaImpostoService;
import com.rjconsultores.ventaboletos.service.EmpresaIziPayService;
import com.rjconsultores.ventaboletos.service.EmpresaMercadoPagoConfigService;
import com.rjconsultores.ventaboletos.service.EmpresaNequiConfigService;
import com.rjconsultores.ventaboletos.service.EmpresaPMArtespConfigService;
import com.rjconsultores.ventaboletos.service.EmpresaRecargaService;
import com.rjconsultores.ventaboletos.service.EmpresaSaferConfigService;
@ -225,6 +227,8 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
@Autowired
private EmpresaCrediBancoConfigService empresaCrediBancoConfigService;
@Autowired
private EmpresaNequiConfigService empresaNequiConfigService;
@Autowired
private EmpresaAsistenciaDeViajeConfigService empresaAsistenciaDeViajeConfigService;
@Autowired
private EmpresaComprovantePassagemConfigService empresaComprovantePassagemConfigService;
@ -251,6 +255,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
private EmpresaCertificadoConfig empresaCertificadoConfigSaftao;
private List<EmpresaSicfeConfig> empresaSicfeConfig;
private List<EmpresaCrediBancoConfig> empresaCrediBancoConfig;
private EmpresaNequiConfig empresaNequiConfig;
private List<EmpresaAsistenciaDeViajeConfig> empresaAsistenciaDeViajeConfig;
private List<EmpresaComprovantePassagemConfig> empresaComprovantePassagemConfig;
private MyListbox empresaList;
@ -647,9 +652,17 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
private Checkbox chkindLayoutEmailConfig;
private List<EmpresaConfigLayout> lsEmpresaConfigLayout;
private Textbox txtClientIdNequi;
private Textbox txtApiKeyNequi;
private Textbox txtCodeEmpresaNequi;
private Textbox txtUrlNequi;
private Textbox txtHashNequi;
@Autowired
private EmpresaConfigLayoutService empresaConfigLayoutService;
private static final String EMAIL_PATTERN = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
@ -682,6 +695,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
empresaCertificadoConfigSaftao = empresaCertificadoConfigService.buscarPorEmpresa(empresa, EnumTipoCertificado.SAFTAO);
empresaSicfeConfig = empresaSicfeConfigService.buscarByEmpresa(empresa.getEmpresaId());
empresaCrediBancoConfig = empresaCrediBancoConfigService.buscarByEmpresa(empresa.getEmpresaId());
empresaNequiConfig = empresaNequiConfigService.buscarByEmpresa(empresa.getEmpresaId());
empresaAsistenciaDeViajeConfig = empresaAsistenciaDeViajeConfigService.buscarByEmpresa(empresa.getEmpresaId());
empresaComprovantePassagemConfig = empresaComprovantePassagemConfigService.buscarByEmpresa(empresa.getEmpresaId());
empresaPMArtespConfig = empresaPMArtespConfigService.buscarPorEmpresa(empresa);
@ -834,6 +848,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
preencheInformacoesSicfe();
preencheInformacoesCrediBanco();
preencheInformacoesNequi();
preencheInformacoesAsistenciaDeViaje();
preencheInformacoesComprovantePassagem();
@ -1579,6 +1594,26 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
empresaMercadoPagoConfigService.actualizacion(empresaMercadoPagoConfig);
}
if (empresaNequiConfig == null) {
empresaNequiConfig = new EmpresaNequiConfig();
empresaNequiConfig.setEmpresa(empresa);
empresaNequiConfig.setClienteIdNequi(txtClientIdNequi.getValue());
empresaNequiConfig.setApiKey(txtApiKeyNequi.getValue());
empresaNequiConfig.setCode(txtCodeEmpresaNequi.getValue());
empresaNequiConfig.setHash(txtHashNequi.getValue());
empresaNequiConfig.setUrl(txtUrlNequi.getValue());
empresaNequiConfig = empresaNequiConfigService.suscribir(empresaNequiConfig);
} else {
empresaNequiConfig.setClienteIdNequi(txtClientIdNequi.getValue());
empresaNequiConfig.setApiKey(txtApiKeyNequi.getValue());
empresaNequiConfig.setCode(txtCodeEmpresaNequi.getValue());
empresaNequiConfig.setHash(txtHashNequi.getValue());
empresaNequiConfig.setUrl(txtUrlNequi.getValue());
empresaNequiConfigService.actualizacion(empresaNequiConfig);
}
adicionaInformacoesSicfe();
adicionaInformacoesCrediBanco();
adicionaInformacoesAsistenciaDeViaje();
@ -1904,6 +1939,19 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
}
}
private void preencheInformacoesNequi() {
if(empresaNequiConfig!=null) {
txtClientIdNequi.setValue(empresaNequiConfig.getClienteIdNequi());
txtApiKeyNequi.setValue(empresaNequiConfig.getApiKey());
txtCodeEmpresaNequi.setValue(empresaNequiConfig.getCode());
txtHashNequi.setValue(empresaNequiConfig.getHash());
txtUrlNequi.setValue(empresaNequiConfig.getUrl());
}
}
private void adicionaInformacoesCrediBanco() {
Map<String, String> mapConfiCrediBanco = retornaValoresCrediBanco();
salvaValoresCrediBanco("indProducao", String.valueOf(chkIndProducaoCrediBanco.isChecked()), mapConfiCrediBanco);
@ -1925,6 +1973,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
return map;
}
private void salvaValoresCrediBanco(String chave, Object valor, Map<String, String> mapConfigCrediBanco) {
if (mapConfigCrediBanco.containsKey(chave)) {

View File

@ -486,6 +486,8 @@
<value>com.rjconsultores.ventaboletos.entidad.EmpresaConfigLayout</value>
<value>com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto</value>
<value>com.rjconsultores.ventaboletos.entidad.ConfiguracionProductoParada</value>
<value>com.rjconsultores.ventaboletos.entidad.EmpresaNequiConfig</value>
</list>
</property>

View File

@ -5174,6 +5174,12 @@ editarEmpresaController.utilizaResolucao.ajuda = Enables the use of resolutio
editarEmpresaController.validadescontotarifa.ajuda = System discount/pricing calculations will be directed to the Original Fare value recorded in the price table.
editarEmpresaController.validadescontotarifa.label = Ticket discount on Original Fare
editarEmpresaController.voucherPersonalizado.label = Personalized Voucher
editarEmpresaController.lblNequi.value = Nequi
editarEmpresaController.lblClientIdNequi.value = ClientId Nequi
editarEmpresaController.lblApiKeyNequi.value = Api Key Nequi
editarEmpresaController.lblCodeEmpresaNequi.value = Code Empresa Nequi
editarEmpresaController.lblUrlNequi.value = URL
editarEmpresaController.lblHashNequi.value = Hash
# Pantalla de Edición da empresa
editarEmpresaController.window.title = Company

View File

@ -5172,6 +5172,12 @@ editarEmpresaController.utilizaResolucao.ajuda = Habilita a utilização da r
editarEmpresaController.validadescontotarifa.ajuda = Los cálculos de descuento / fijación del sistema se dirigen al valor de la tarifa original registrada en la tabla de precios.
editarEmpresaController.validadescontotarifa.label = Desconto de passagem sobre Tarifa Original
editarEmpresaController.voucherPersonalizado.label = Voucher Personalizado
editarEmpresaController.lblNequi.value = Nequi
editarEmpresaController.lblClientIdNequi.value = ClientId Nequi
editarEmpresaController.lblApiKeyNequi.value = Api Key Nequi
editarEmpresaController.lblCodeEmpresaNequi.value = Code Empresa Nequi
editarEmpresaController.lblUrlNequi.value = URL
editarEmpresaController.lblHashNequi.value = Hash
# Pantalla de Edición da empresa
editarEmpresaController.window.title = Empresa

View File

@ -5172,6 +5172,13 @@ editarEmpresaController.utilizaResolucao.ajuda = Permet l'utilisation de la r
editarEmpresaController.validadescontotarifa.ajuda = Les calculs de réduction/tarification du système seront dirigés vers la valeur du tarif d'origine enregistrée dans le tableau des prix.
editarEmpresaController.validadescontotarifa.label = Réduction sur le tarif original
editarEmpresaController.voucherPersonalizado.label = Bon personnalisé
editarEmpresaController.lblNequi.value = Nequi
editarEmpresaController.lblClientIdNequi.value = ClientId Nequi
editarEmpresaController.lblApiKeyNequi.value = Api Key Nequi
editarEmpresaController.lblCodeEmpresaNequi.value = Code Empresa Nequi
editarEmpresaController.lblUrlNequi.value = URL
editarEmpresaController.lblHashNequi.value = Hash
# Pantalla de Edición da empresa
editarEmpresaController.window.title = Entreprise

View File

@ -5167,6 +5167,12 @@ editarEmpresaController.utilizaResolucao.ajuda = Habilita a utilização da r
editarEmpresaController.validadescontotarifa.ajuda = Cálculos de desconto/precificação do sistema serão direcionados para o valor de Tarifa Original registrada na tabela de preço.
editarEmpresaController.validadescontotarifa.label = Desconto de passagem sobre Tarifa Original
editarEmpresaController.voucherPersonalizado.label = Voucher Personalizado
editarEmpresaController.lblNequi.value = Nequi
editarEmpresaController.lblClientIdNequi.value = ClientId Nequi
editarEmpresaController.lblApiKeyNequi.value = Api Key Nequi
editarEmpresaController.lblCodeEmpresaNequi.value = Code Empresa Nequi
editarEmpresaController.lblUrlNequi.value = URL
editarEmpresaController.lblHashNequi.value = Hash
# Pantalla de Edición da empresa
editarEmpresaController.window.title = Empresa

View File

@ -53,6 +53,7 @@
<tab label="${c:l('editarEmpresaController.saftao.titulo')}" id="tabSaftao" visible="false" />
<tab label="${c:l('editarEmpresaController.sicfe.titulo')}" id="tabSicfe" />
<tab label="${c:l('editarEmpresaController.lblCrediBanco.value')}" id="tabCrediBanco" />
<tab label="${c:l('editarEmpresaController.lblNequi.value')}" id="tabNequi" />
<tab label="${c:l('editarEmpresaController.lblAsistenciaDeViaje.value')}" id="tabAssistenteViagem" />
<tab label="${c:l('editarEmpresaController.tabComprovantePassagem.value')}" id="tabComprovantePassagem" />
<tab label="${c:l('editarEmpresaController.tabConfiguracaoLayout.value')}" />
@ -2908,6 +2909,39 @@
</grid>
</tabpanel>
<!-- Nequi -->
<tabpanel>
<grid fixedLayout="true">
<columns>
<column width="25%" />
<column width="75%" />
</columns>
<rows>
<row>
<label value="${c:l('editarEmpresaController.lblClientIdNequi.value')}" />
<textbox id="txtClientIdNequi" width="80%" maxlength="50" />
</row>
<row>
<label value="${c:l('editarEmpresaController.lblApiKeyNequi.value')}" />
<textbox id="txtApiKeyNequi" width="80%" maxlength="100" />
</row>
<row>
<label value="${c:l('editarEmpresaController.lblCodeEmpresaNequi.value')}" />
<textbox id="txtCodeEmpresaNequi" width="80%" maxlength="50" />
</row>
<row>
<label value="${c:l('editarEmpresaController.lblUrlNequi.value')}" />
<textbox id="txtUrlNequi" width="80%" maxlength="250" />
</row>
<row>
<label value="${c:l('editarEmpresaController.lblHashNequi.value')}" />
<textbox id="txtHashNequi" width="80%" maxlength="250" />
</row>
</rows>
</grid>
</tabpanel>
<!-- Assistência de viagem -->
<tabpanel>
<grid fixedLayout="true">