update runner

This commit is contained in:
Ramon Ramirez 2026-01-14 09:13:38 -04:00
parent 22c5bc1fc3
commit 5f7924da36
7 changed files with 23 additions and 23 deletions

View File

@ -53,12 +53,12 @@ public class LegalCustomerProductDirectoryService implements LegalCustomerProduc
public ApiResponse<LegalCustomerProductDirectoryResponse> execute(
LegalCustomerProductDirectoryRequest request
) {
log.info("Iniciando ejecucion para el cliente: {}", request.getCustomerIbsNumber());
log.info("Iniciando ejecucion para el cliente: {}", request.getCustomerId());
LegalCustomerProductDirectoryRequest requestFromAppId = getRequestFromAppId(request);
if(!isServiceStatusActive(requestFromAppId)) {
log.info("Estatus del servicio no disponible: {}", requestFromAppId.getCustomerIbsNumber());
log.info("Estatus del servicio no disponible: {}", requestFromAppId.getCustomerId());
throw HttpStatusCodeException.serviceUnavailable("VRN04");
}
@ -92,7 +92,7 @@ public class LegalCustomerProductDirectoryService implements LegalCustomerProduc
if(appIdsAllowed.isEmpty()) {
log.info(
"Configuracion de la Lista App ID no disponible: {} -> {}",
request.getCustomerIbsNumber(),
request.getCustomerId(),
request.getAppId()
);
throw HttpStatusCodeException.unauthorized("401");
@ -103,14 +103,14 @@ public class LegalCustomerProductDirectoryService implements LegalCustomerProduc
.findFirst();
if(appIdAllowed.isEmpty()) {
log.info("App ID no habilitado: {} -> {}", request.getCustomerIbsNumber(), request.getAppId());
log.info("App ID no habilitado: {} -> {}", request.getCustomerId(), request.getAppId());
throw HttpStatusCodeException.unauthorized("401");
}
AppIdConfig appIdConfig = appIdAllowed.get();
if(!request.hasValidRequestParameters(appIdConfig)) {
log.info("App ID sin configuracion: {} -> {}", request.getCustomerIbsNumber(), request.getAppId());
log.info("App ID sin configuracion: {} -> {}", request.getCustomerId(), request.getAppId());
throw HttpStatusCodeException.unauthorized("401");
}
@ -120,7 +120,7 @@ public class LegalCustomerProductDirectoryService implements LegalCustomerProduc
private ApiResponse<LegalCustomerProductDirectoryResponse> domain(
LegalCustomerProductDirectoryRequest request
) {
log.info("Ejecutando llamada al api de dominio: {}", request.getCustomerIbsNumber());
log.info("Ejecutando llamada al api de dominio: {}", request.getCustomerId());
return domainUseCase.execute(request, LegalCustomerProductDirectoryResponse.class);
}

View File

@ -20,7 +20,7 @@ public class LegalCustomerProductDirectoryRequest {
@NonNull
private String appId; // Header obligatorio
@NonNull
private String customerIbsNumber; // VCUSCUN - Obligatorio (Numero de cliente IBS)
private String customerId; // VCUSCUN - Obligatorio (Numero de cliente IBS)
private String bankNumber; // VACMBNK - Numero de Banco (filtro)
private String currencyCode; // VACMCCY - Moneda (filtro)
@ -56,7 +56,7 @@ public class LegalCustomerProductDirectoryRequest {
AppIdConfig appIdConfig
) {
return LegalCustomerProductDirectoryRequest.builder()
.customerIbsNumber(this.getCustomerIbsNumber())
.customerId(this.getCustomerId())
.appId(this.getAppId())
.customerReferenceFintechId(this.getCustomerReferenceFintechId())
.serviceType(appIdConfig.getRequest().getServiceType())

View File

@ -36,13 +36,13 @@ public class DomLegalCustomerProductDirectoryClient implements DomainUseCase {
LegalCustomerProductDirectoryRequest params,
Class<T> responseType
) {
String customerIbsNumber = params.getCustomerIbsNumber();
String customerId = params.getCustomerId();
HttpRequest request = HttpRequest.forApiResponse(
domainConfig.getUrl(),
HttpRequest.HttpMethod.GET,
responseType
)
.withPathParams(Map.of("customerIbsNumber", customerIbsNumber))
.withPathParams(Map.of("customerId", customerId))
.withQueryParams(params.toQueryString())
.withTimeout(
domainConfig.getTimeout().getConnect(),
@ -63,7 +63,7 @@ public class DomLegalCustomerProductDirectoryClient implements DomainUseCase {
} catch (HttpApiResponseException e) {
log.error(
"Error HTTP con ApiResponse consultando cliente {}: {}",
customerIbsNumber,
customerId,
e.getApiResponse()
);
@ -74,14 +74,14 @@ public class DomLegalCustomerProductDirectoryClient implements DomainUseCase {
} catch (HttpStatusCodeException e) {
log.error(
"Error HTTP consultando cliente {}: {} - {}",
customerIbsNumber,
customerId,
e.getStatusCode(),
e.getMessage()
);
throw e;
} catch (Exception e) {
log.error("Error consultando cliente {}: {}", customerIbsNumber, e.getMessage());
log.error("Error consultando cliente {}: {}", customerId, e.getMessage());
throw HttpStatusCodeException.serviceUnavailable("503");
}
}

View File

@ -24,7 +24,7 @@ import org.eclipse.microprofile.openapi.annotations.responses.APIResponses;
import java.util.Objects;
@Slf4j
@Path("/bus-legal-customer-product-directory")
@Path("/legal-customer-product-directory")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class LegalCustomerProductDirectoryResource {
@ -42,7 +42,7 @@ public class LegalCustomerProductDirectoryResource {
}
@GET
@Path("/retrieve/{customerIbsNumber : (?!retrieve$).*}")
@Path("/retrieve/{customerId : (?!retrieve$).*}")
@Operation(
summary = "Recuperar productos de cliente legal",
description = "Consulta masiva de cuentas por numero de cliente IBS"
@ -219,7 +219,7 @@ public class LegalCustomerProductDirectoryResource {
"data": null,
"statusResponse": {
"statusCode": "VDE01",
"message": "El campo customerIbsNumber es obligatorio"
"message": "El campo customerId es obligatorio"
}
}
"""
@ -321,9 +321,9 @@ public class LegalCustomerProductDirectoryResource {
)
})
public Response retrieve(
@PathParam("customerIbsNumber")
@PathParam("customerId")
@Parameter(description = "Numero de cliente IBS (VCUSCUN)", example = "200053197")
String customerIbsNumber,
String customerId,
@QueryParam("appId")
@Parameter(description = "ID de la aplicacion", required = true, example = "DANIAPP")
@ -333,12 +333,12 @@ public class LegalCustomerProductDirectoryResource {
@Parameter(description = "ID de la fintech", example = "pranical-test")
String customerReferenceFintechId
) {
log.info("Iniciando consulta para cliente IBS: {}", customerIbsNumber);
log.info("Iniciando consulta para cliente IBS: {}", customerId);
try {
return Response.ok(useCase.execute(
LegalCustomerProductDirectoryRequest.builder()
.customerIbsNumber(Objects.toString(customerIbsNumber, ""))
.customerId(Objects.toString(customerId, ""))
.customerReferenceFintechId(Objects.toString(customerReferenceFintechId, ""))
.appId(Objects.toString(appId, ""))
.build()

View File

@ -17,6 +17,6 @@ api:
key: 'bus-legal-customer-product-directory'
content: '[{"backendCode":"200","httpCode":200,"statusCode":"200","description":"Operacion exitosa"},{"backendCode":"R404","httpCode":404,"statusCode":"404","description":"Datos de validacion no encontrado."},{"backendCode":"503","httpCode":503,"statusCode":"503","description":"Uso interno"},{"backendCode":"422","httpCode":422,"statusCode":"422","description":"Uso interno"},{"backendCode":"500","httpCode":500,"statusCode":"500","description":"Uso interno"},{"backendCode":"100","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-382505","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-380002","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"ERROR","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"400","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"401","httpCode":401,"statusCode":"401","description":"Uso interno"},{"backendCode":"403","httpCode":403,"statusCode":"403","description":"Uso interno"},{"backendCode":"404","httpCode":404,"statusCode":"404","description":"Uso interno"},{"backendCode":"default","httpCode":409,"statusCode":"409","description":"Conflicto"},{"backendCode":"424","httpCode":424,"statusCode":"424","description":"Error de dependencia"},{"backendCode":"VDE01","httpCode":400,"statusCode":"VDE01","description":"VDE01 - Error en dato de entrada obligatorio: %s"},{"backendCode":"VDE02","httpCode":400,"statusCode":"VDE02","description":"VDE02 - Error en valor permitido para campo: %s"},{"backendCode":"VRN04","httpCode":"503","statusCode":"VRN04","description":"Servicio en horario de mantenimiento","status":"error"},{"backendCode":"204","httpCode":"200","statusCode":"200","description":"Cliente sin productos","status":"ok"}]'
rest-client:
dom-legal-customer-product-directory: '{"url":"http://localhost:8083/dom-legal-customer-product-directory/retrieve/{customerIbsNumber}","timeout":{"connect":10000,"response":10000}}'
dom-legal-customer-product-directory: '{"url":"http://localhost:8083/legal-customer-product-directory/retrieve/{customerId}","timeout":{"connect":10000,"response":10000}}'
security-trace: '{"url":"http://api-register-security-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/register-security/save","timeout":{"connect":10000,"response":10000},"request":{"sp":"spAPI_Traza","eventCod":"CANCTARJ","bankCod":"01","curCod":"BS"}}'
service-status: '{"url":"http://api-get-service-status-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/service/status","timeout":{"connect":10000,"response":10000},"request":{"applicationId": "","transactionId": "","bankService": {"bankCode": "01","serviceCode": "APIFI","eventCode": "P2PVUEL"}}}'

View File

@ -8,7 +8,7 @@ metadata:
creationTimestamp: '2026-01-12T23:42:23Z'
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","data":{"api.allowed.app-id":"[{\"appId\":\"DANIAPP\",\"request\":{\"serviceType\":\"P2P\",\"limitType\":\"REC\",\"casheaIndicator\":\"NO\"}}]","api.bus-legal-customer-product-directory.messages.content":"[{\"backendCode\":\"200\",\"httpCode\":200,\"statusCode\":\"200\",\"description\":\"Operacion exitosa\"},{\"backendCode\":\"R404\",\"httpCode\":404,\"statusCode\":\"404\",\"description\":\"Datos de validación no encontrado.\"},{\"backendCode\":\"503\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"Uso interno\"},{\"backendCode\":\"422\",\"httpCode\":422,\"statusCode\":\"422\",\"description\":\"Uso interno\"},{\"backendCode\":\"500\",\"httpCode\":500,\"statusCode\":\"500\",\"description\":\"Uso interno\"},{\"backendCode\":\"100\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"OSB-382505\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"OSB-380002\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"ERROR\",\"httpCode\":400,\"statusCode\":\"400\",\"description\":\"Uso interno\"},{\"backendCode\":\"400\",\"httpCode\":400,\"statusCode\":\"400\",\"description\":\"Uso interno\"},{\"backendCode\":\"401\",\"httpCode\":401,\"statusCode\":\"401\",\"description\":\"Uso interno\"},{\"backendCode\":\"403\",\"httpCode\":403,\"statusCode\":\"403\",\"description\":\"Uso interno\"},{\"backendCode\":\"404\",\"httpCode\":404,\"statusCode\":\"404\",\"description\":\"Uso interno\"},{\"backendCode\":\"default\",\"httpCode\":409,\"statusCode\":\"409\",\"description\":\"Conflicto\"},{\"backendCode\":\"424\",\"httpCode\":424,\"statusCode\":\"424\",\"description\":\"Error de dependencia\"},{\"backendCode\":\"VDE01\",\"httpCode\":400,\"statusCode\":\"VDE01\",\"description\":\"VDE01 - Error en dato de entrada obligatorio: %s\"},{\"backendCode\":\"VDE02\",\"httpCode\":400,\"statusCode\":\"VDE02\",\"description\":\"VDE02 - Error en valor permitido para campo: %s\"},{\"backendCode\":\"VRN04\",\"httpCode\":\"503\",\"statusCode\":\"VRN04\",\"description\":\"Servicio en horario de mantenimiento\",\"status\":\"error\"},{\"backendCode\":\"204\",\"httpCode\":\"200\",\"statusCode\":\"200\",\"description\":\"Cliente sin productos\",\"status\":\"ok\"}]","api.bus-legal-customer-product-directory.messages.key":"bus-legal-customer-product-directory","api.read-messages.from-props":"true","api.rest-client.dom-legal-customer-product-directory":"{\"url\":\"http://dom-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/dom-legal-customer-product-directory/retrieve/{customerIbsNumber}\",\"timeout\":{\"connect\":10000,\"response\":10000}}","api.rest-client.security-trace":"{\"url\":\"http://api-register-security-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/register-security/save\",\"timeout\":{\"connect\":10000,\"response\":10000},\"request\":{\"sp\":\"spAPI_Traza\",\"eventCod\":\"CANCTARJ\",\"bankCod\":\"01\",\"curCod\":\"BS\"}}","api.rest-client.service-status":"{\"url\":\"http://api-get-service-status-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/service/status\",\"timeout\":{\"connect\":10000,\"response\":10000},\"request\":{\"applicationId\": \"\",\"transactionId\": \"\",\"bankService\": {\"bankCode\": \"01\",\"serviceCode\": \"APIFI\",\"eventCode\": \"P2PVUEL\"}}}","api.source-id":"BLCPD","quarkus.application.name":"bus-legal-customer-product-directory","quarkus.application.version":"1.0.0","quarkus.debug.print-startup-times":"true","quarkus.debug.reflection":"false","quarkus.http.core-threads":"1","quarkus.http.idle-timeout":"30s","quarkus.http.max-threads":"100","quarkus.http.non-application-root-path":"actuator","quarkus.http.port":"8080","quarkus.log.console.enable":"true","quarkus.log.console.format":"%d{HH:mm:ss.SSS} %-5p [%t] [%X{requestId}] %c{1} - %s%e%n","quarkus.log.level":"INFO","quarkus.profile":"dev","quarkus.smallrye-health.liveness-path":"/actuator/health/live","quarkus.smallrye-health.readiness-path":"/actuator/health/ready ","quarkus.smallrye-health.root-path":"/actuator/health","quarkus.smallrye-health.ui.enable":"false","quarkus.smallrye-openapi.enable":"true","quarkus.smallrye-openapi.path":"/openapi","quarkus.swagger-ui.always-include":"true","quarkus.swagger-ui.path":"/swagger-ui"},"kind":"ConfigMap","metadata":{"annotations":{},"app":"bus-legal-customer-product-directory","labels":null,"name":"configmap-bus-legal-customer-product-directory","namespace":"proyecto-prueba-ja"}}
{"apiVersion":"v1","data":{"api.allowed.app-id":"[{\"appId\":\"DANIAPP\",\"request\":{\"serviceType\":\"P2P\",\"limitType\":\"REC\",\"casheaIndicator\":\"NO\"}}]","api.bus-legal-customer-product-directory.messages.content":"[{\"backendCode\":\"200\",\"httpCode\":200,\"statusCode\":\"200\",\"description\":\"Operacion exitosa\"},{\"backendCode\":\"R404\",\"httpCode\":404,\"statusCode\":\"404\",\"description\":\"Datos de validación no encontrado.\"},{\"backendCode\":\"503\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"Uso interno\"},{\"backendCode\":\"422\",\"httpCode\":422,\"statusCode\":\"422\",\"description\":\"Uso interno\"},{\"backendCode\":\"500\",\"httpCode\":500,\"statusCode\":\"500\",\"description\":\"Uso interno\"},{\"backendCode\":\"100\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"OSB-382505\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"OSB-380002\",\"httpCode\":503,\"statusCode\":\"503\",\"description\":\"VDR13 - OSB Disponible\"},{\"backendCode\":\"ERROR\",\"httpCode\":400,\"statusCode\":\"400\",\"description\":\"Uso interno\"},{\"backendCode\":\"400\",\"httpCode\":400,\"statusCode\":\"400\",\"description\":\"Uso interno\"},{\"backendCode\":\"401\",\"httpCode\":401,\"statusCode\":\"401\",\"description\":\"Uso interno\"},{\"backendCode\":\"403\",\"httpCode\":403,\"statusCode\":\"403\",\"description\":\"Uso interno\"},{\"backendCode\":\"404\",\"httpCode\":404,\"statusCode\":\"404\",\"description\":\"Uso interno\"},{\"backendCode\":\"default\",\"httpCode\":409,\"statusCode\":\"409\",\"description\":\"Conflicto\"},{\"backendCode\":\"424\",\"httpCode\":424,\"statusCode\":\"424\",\"description\":\"Error de dependencia\"},{\"backendCode\":\"VDE01\",\"httpCode\":400,\"statusCode\":\"VDE01\",\"description\":\"VDE01 - Error en dato de entrada obligatorio: %s\"},{\"backendCode\":\"VDE02\",\"httpCode\":400,\"statusCode\":\"VDE02\",\"description\":\"VDE02 - Error en valor permitido para campo: %s\"},{\"backendCode\":\"VRN04\",\"httpCode\":\"503\",\"statusCode\":\"VRN04\",\"description\":\"Servicio en horario de mantenimiento\",\"status\":\"error\"},{\"backendCode\":\"204\",\"httpCode\":\"200\",\"statusCode\":\"200\",\"description\":\"Cliente sin productos\",\"status\":\"ok\"}]","api.bus-legal-customer-product-directory.messages.key":"bus-legal-customer-product-directory","api.read-messages.from-props":"true","api.rest-client.dom-legal-customer-product-directory":"{\"url\":\"http://dom-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/dom-legal-customer-product-directory/retrieve/{customerId}\",\"timeout\":{\"connect\":10000,\"response\":10000}}","api.rest-client.security-trace":"{\"url\":\"http://api-register-security-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/register-security/save\",\"timeout\":{\"connect\":10000,\"response\":10000},\"request\":{\"sp\":\"spAPI_Traza\",\"eventCod\":\"CANCTARJ\",\"bankCod\":\"01\",\"curCod\":\"BS\"}}","api.rest-client.service-status":"{\"url\":\"http://api-get-service-status-route-apis-banesco-dev.apps.desplakur3.desintra.banesco.com/service/status\",\"timeout\":{\"connect\":10000,\"response\":10000},\"request\":{\"applicationId\": \"\",\"transactionId\": \"\",\"bankService\": {\"bankCode\": \"01\",\"serviceCode\": \"APIFI\",\"eventCode\": \"P2PVUEL\"}}}","api.source-id":"BLCPD","quarkus.application.name":"bus-legal-customer-product-directory","quarkus.application.version":"1.0.0","quarkus.debug.print-startup-times":"true","quarkus.debug.reflection":"false","quarkus.http.core-threads":"1","quarkus.http.idle-timeout":"30s","quarkus.http.max-threads":"100","quarkus.http.non-application-root-path":"actuator","quarkus.http.port":"8080","quarkus.log.console.enable":"true","quarkus.log.console.format":"%d{HH:mm:ss.SSS} %-5p [%t] [%X{requestId}] %c{1} - %s%e%n","quarkus.log.level":"INFO","quarkus.profile":"dev","quarkus.smallrye-health.liveness-path":"/actuator/health/live","quarkus.smallrye-health.readiness-path":"/actuator/health/ready ","quarkus.smallrye-health.root-path":"/actuator/health","quarkus.smallrye-health.ui.enable":"false","quarkus.smallrye-openapi.enable":"true","quarkus.smallrye-openapi.path":"/openapi","quarkus.swagger-ui.always-include":"true","quarkus.swagger-ui.path":"/swagger-ui"},"kind":"ConfigMap","metadata":{"annotations":{},"app":"bus-legal-customer-product-directory","labels":null,"name":"configmap-bus-legal-customer-product-directory","namespace":"proyecto-prueba-ja"}}
managedFields:
- manager: kubectl-client-side-apply
operation: Update
@ -77,7 +77,7 @@ data:
api.source-id: BLCPD
quarkus.smallrye-health.root-path: /actuator/health
quarkus.smallrye-openapi.enable: 'true'
api.rest-client.dom-legal-customer-product-directory: '{"url":"http://dom-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/dom-legal-customer-product-directory/retrieve/{customerIbsNumber}","timeout":{"connect":10000,"response":10000}}'
api.rest-client.dom-legal-customer-product-directory: '{"url":"http://dom-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/dom-legal-customer-product-directory/retrieve/{customerId}","timeout":{"connect":10000,"response":10000}}'
quarkus.smallrye-health.readiness-path: '/actuator/health/ready '
quarkus.log.console.enable: 'true'
quarkus.smallrye-openapi.path: /openapi