udpate path and parameter
This commit is contained in:
parent
5a1c6fa2c5
commit
bfa8359c52
Binary file not shown.
@ -22,7 +22,7 @@ public class RequestValidatorHelper {
|
||||
public void validateRequired(
|
||||
LegalCustomerProductDirectoryRequest request
|
||||
) {
|
||||
required(request.getCustomerIbsNumber(), "customerIbsNumber");
|
||||
required(request.getCustomerId(), "customerId");
|
||||
required(request.getCustomerReferenceFintechId(), "customerReferenceFintechId");
|
||||
required(request.getAppId(), "appId");
|
||||
}
|
||||
@ -30,7 +30,7 @@ public class RequestValidatorHelper {
|
||||
public void validateFieldValues(
|
||||
LegalCustomerProductDirectoryRequest request
|
||||
) {
|
||||
validate(request.getCustomerIbsNumber(), config.customerIbsNumber(), "customerIbsNumber");
|
||||
validate(request.getCustomerId(), config.customerId(), "customerId");
|
||||
validate(request.getAccountStatus(), config.accountStatus(), "accountStatus");
|
||||
validate(request.getProductCvCode(), config.productCvCode(), "productCvCode");
|
||||
validate(request.getLimitType(), config.limitType(), "limitType");
|
||||
|
||||
@ -4,7 +4,7 @@ import io.smallrye.config.ConfigMapping;
|
||||
|
||||
@ConfigMapping(prefix = "api.allowed.request-validation")
|
||||
public interface RequestValidationConfig {
|
||||
String customerIbsNumber();
|
||||
String customerId();
|
||||
String accountStatus();
|
||||
String productCvCode();
|
||||
String limitType();
|
||||
|
||||
@ -37,7 +37,7 @@ 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());
|
||||
|
||||
validate(request);
|
||||
|
||||
@ -72,7 +72,7 @@ public class LegalCustomerProductDirectoryService implements LegalCustomerProduc
|
||||
private ApiResponse<LegalCustomerProductDirectoryResponse> business(
|
||||
LegalCustomerProductDirectoryRequest request
|
||||
) {
|
||||
log.info("Ejecutando llamada al api de negocio: {}", request.getCustomerIbsNumber());
|
||||
log.info("Ejecutando llamada al api de negocio: {}", request.getCustomerId());
|
||||
return businessUseCase.execute(request, LegalCustomerProductDirectoryResponse.class);
|
||||
}
|
||||
}
|
||||
@ -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)
|
||||
|
||||
@ -36,22 +36,14 @@ public class BusLegalCustomerProductDirectoryClient implements BusinessUseCase {
|
||||
LegalCustomerProductDirectoryRequest params,
|
||||
Class<T> responseType
|
||||
) {
|
||||
String customerIbsNumber = params.getCustomerIbsNumber();
|
||||
Map<String, String> pathParams = Map.of("customerId", customerIbsNumber);
|
||||
Map<String, String> queryParams = params.toQueryString();
|
||||
|
||||
log.info("Construyendo request al API de negocio");
|
||||
log.info("URL base configurada: {}", businessConfig.getUrl());
|
||||
log.info("Path params: {}", pathParams);
|
||||
log.info("Query params: {}", queryParams);
|
||||
|
||||
String customerId = params.getCustomerId();
|
||||
HttpRequest request = HttpRequest.forApiResponse(
|
||||
businessConfig.getUrl(),
|
||||
HttpRequest.HttpMethod.GET,
|
||||
responseType
|
||||
)
|
||||
.withPathParams(pathParams)
|
||||
.withQueryParams(queryParams)
|
||||
.withPathParams(Map.of("customerId", customerId))
|
||||
.withQueryParams(params.toQueryString())
|
||||
.withTimeout(
|
||||
businessConfig.getTimeout().getConnect(),
|
||||
businessConfig.getTimeout().getResponse()
|
||||
@ -71,7 +63,7 @@ public class BusLegalCustomerProductDirectoryClient implements BusinessUseCase {
|
||||
} catch (HttpApiResponseException e) {
|
||||
log.error(
|
||||
"Error HTTP con ApiResponse consultando cliente {}: {}",
|
||||
customerIbsNumber,
|
||||
customerId,
|
||||
e.getApiResponse()
|
||||
);
|
||||
|
||||
@ -82,14 +74,14 @@ public class BusLegalCustomerProductDirectoryClient implements BusinessUseCase {
|
||||
} 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");
|
||||
}
|
||||
}
|
||||
|
||||
@ -219,7 +219,7 @@ public class LegalCustomerProductDirectoryResource {
|
||||
"data": null,
|
||||
"statusResponse": {
|
||||
"statusCode": "VDE01",
|
||||
"message": "El campo customerIbsNumber es obligatorio"
|
||||
"message": "El campo customerId es obligatorio"
|
||||
}
|
||||
}
|
||||
"""
|
||||
@ -338,7 +338,7 @@ public class LegalCustomerProductDirectoryResource {
|
||||
try {
|
||||
return Response.ok(useCase.execute(
|
||||
LegalCustomerProductDirectoryRequest.builder()
|
||||
.customerIbsNumber(Objects.toString(customerId, ""))
|
||||
.customerId(Objects.toString(customerId, ""))
|
||||
.customerReferenceFintechId(customerReferenceFintechId)
|
||||
.appId(appId)
|
||||
.build()
|
||||
|
||||
@ -10,7 +10,7 @@ api:
|
||||
source-id: RLCPD
|
||||
allowed:
|
||||
request-validation:
|
||||
customer-ibs-number: '\d+'
|
||||
customer-id: '\d+'
|
||||
account-status: '^(A|D|ACTBSUSD)$'
|
||||
product-cv-code: '^(CV|CVFL)$'
|
||||
limit-type: '^(PAG|REC)$'
|
||||
@ -23,4 +23,4 @@ api:
|
||||
key: 'rec-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:
|
||||
bus-legal-customer-product-directory: '{"url":"http://localhost:8082/customer/accounts/retrieve/{customerId}","timeout":{"connect":15000,"response":15000},"config":{}}'
|
||||
bus-legal-customer-product-directory: '{"url":"http://localhost:8082/legal-customer-product-directory/retrieve/{customerId}","timeout":{"connect":15000,"response":15000},"config":{}}'
|
||||
@ -85,5 +85,5 @@ data:
|
||||
quarkus.smallrye-health.readiness-path: /actuator/health/ready
|
||||
api.allowed.request-validation.cachea-indicator: ^(SI|NO)$
|
||||
quarkus.log.console.enable: 'true'
|
||||
api.rest-client.bus-legal-customer-product-directory: '{"url":"http://bus-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/customer/accounts/retrieve/{customerId}","timeout":{"connect":20000,"response":20000},"config":{}}'
|
||||
api.rest-client.bus-legal-customer-product-directory: '{"url":"http://bus-legal-customer-product-directory-route-proyecto-prueba-ja.apps.desplakur3.desintra.banesco.com/legal-customer-product-directory/retrieve/{customerId}","timeout":{"connect":20000,"response":20000},"config":{}}'
|
||||
quarkus.smallrye-openapi.path: /openapi
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user