update error messages into private api; update generals
This commit is contained in:
parent
31eba4f9da
commit
953a975218
Binary file not shown.
@ -14,6 +14,9 @@ import java.util.List;
|
||||
public class RequestValidatorHelper {
|
||||
private final RequestValidationConfig config;
|
||||
|
||||
private static final String REQUIRED_CODE = "VDE01";
|
||||
private static final String VALIDATE_CODE = "VDE02";
|
||||
|
||||
@Inject
|
||||
public RequestValidatorHelper(
|
||||
RequestValidationConfig config
|
||||
|
||||
@ -58,103 +58,117 @@ public class HttpRequest {
|
||||
private boolean logResponseBody = true;
|
||||
|
||||
public static <T> HttpRequest forApiResponse(
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> dataType
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> dataType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiResponse.class)
|
||||
.genericType(dataType)
|
||||
.apiResponse(true)
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiResponse.class)
|
||||
.genericType(dataType)
|
||||
.apiResponse(true)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T> HttpRequest forApiResponseList(
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> elementType
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> elementType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiResponse.class)
|
||||
.complexType(TypeBuilder.listOf(elementType))
|
||||
.apiResponse(true)
|
||||
.listResponse(true)
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiResponse.class)
|
||||
.complexType(TypeBuilder.listOf(elementType))
|
||||
.apiResponse(true)
|
||||
.listResponse(true)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T> HttpRequest forApiPrivateResponse(
|
||||
String url,
|
||||
String statusSuccess,
|
||||
HttpMethod method,
|
||||
Class<T> successType
|
||||
String url,
|
||||
String statusSuccess,
|
||||
HttpMethod method,
|
||||
Class<T> successType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiPrivateResponse.class)
|
||||
.complexType(TypeBuilder.parametricType(
|
||||
Either.class,
|
||||
successType,
|
||||
ApiPrivateError.class
|
||||
))
|
||||
.apiPrivateResponse(true)
|
||||
.eitherResponse(true)
|
||||
.errorType(ApiPrivateError.class)
|
||||
.statusSuccess(statusSuccess)
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiPrivateResponse.class)
|
||||
.complexType(TypeBuilder.parametricType(
|
||||
Either.class,
|
||||
successType,
|
||||
ApiPrivateError.class
|
||||
))
|
||||
.apiPrivateResponse(true)
|
||||
.eitherResponse(true)
|
||||
.errorType(ApiPrivateError.class)
|
||||
.statusSuccess(statusSuccess)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T> HttpRequest forApiPrivateResponseList(
|
||||
String url,
|
||||
String statusSuccess,
|
||||
HttpMethod method,
|
||||
Class<T> elementType
|
||||
String url,
|
||||
String statusSuccess,
|
||||
HttpMethod method,
|
||||
Class<T> elementType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiPrivateResponse.class)
|
||||
.complexType(TypeBuilder.parametricType(
|
||||
Either.class,
|
||||
TypeBuilder.listOf(elementType),
|
||||
ApiPrivateError.class
|
||||
))
|
||||
.apiPrivateResponse(true)
|
||||
.eitherResponse(true)
|
||||
.listResponse(true)
|
||||
.errorType(ApiPrivateError.class)
|
||||
.statusSuccess(statusSuccess)
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(ApiPrivateResponse.class)
|
||||
.complexType(TypeBuilder.parametricType(
|
||||
Either.class,
|
||||
TypeBuilder.listOf(elementType),
|
||||
ApiPrivateError.class
|
||||
))
|
||||
.apiPrivateResponse(true)
|
||||
.eitherResponse(true)
|
||||
.listResponse(true)
|
||||
.errorType(ApiPrivateError.class)
|
||||
.statusSuccess(statusSuccess)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T> HttpRequest forDirectResponse(
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> responseType
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> responseType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(responseType)
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(responseType)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T, R> HttpRequest forDirectResponse(
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> responseType,
|
||||
Class<R> errorType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(responseType)
|
||||
.errorType(errorType)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static <T, U> HttpRequest forGenericResponse(
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> rawType,
|
||||
Class<U> genericType
|
||||
String url,
|
||||
HttpMethod method,
|
||||
Class<T> rawType,
|
||||
Class<U> genericType
|
||||
) {
|
||||
return HttpRequest.builder()
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(rawType)
|
||||
.complexType(TypeBuilder.parametricType(rawType, genericType))
|
||||
.build();
|
||||
.url(url)
|
||||
.method(method)
|
||||
.responseType(rawType)
|
||||
.complexType(TypeBuilder.parametricType(rawType, genericType))
|
||||
.build();
|
||||
}
|
||||
|
||||
public HttpRequest withHeaders(Map<String, String> headers) {
|
||||
|
||||
@ -22,6 +22,8 @@ public class PaymentOrderClient implements PaymentOrderUseCase {
|
||||
private final HttpClientUseCase httpClientUseCase;
|
||||
private final PaymentOrderConfig paymentOrderConfig;
|
||||
|
||||
private static final String EMPTY_MESSAGE = "EMPTY_MESSAGE";
|
||||
|
||||
@Inject
|
||||
public PaymentOrderClient(
|
||||
SerializationHelper serializationHelper,
|
||||
@ -66,12 +68,19 @@ public class PaymentOrderClient implements PaymentOrderUseCase {
|
||||
);
|
||||
|
||||
throw ApiPrivateException.builder()
|
||||
.statusCode(response.getEstatus())
|
||||
.message("EMPTY_MESSAGE")
|
||||
.statusCode("PIBE-00")
|
||||
.message(EMPTY_MESSAGE)
|
||||
.build();
|
||||
}
|
||||
|
||||
if (detail.isLeft()) {
|
||||
if(detail.getLeft() == null) {
|
||||
throw ApiPrivateException.builder()
|
||||
.statusCode("PIBE-00")
|
||||
.message(EMPTY_MESSAGE)
|
||||
.build();
|
||||
}
|
||||
|
||||
return detail.getLeft();
|
||||
}
|
||||
|
||||
@ -86,10 +95,10 @@ public class PaymentOrderClient implements PaymentOrderUseCase {
|
||||
);
|
||||
|
||||
throw ApiPrivateException.builder()
|
||||
.statusCode(response.getEstatus())
|
||||
.statusCode("PIBE-01")
|
||||
.message((error.getCodError() != null)
|
||||
? error.getCodError() + ":" + error.getMensajeError()
|
||||
: "EMPTY_MESSAGE"
|
||||
: EMPTY_MESSAGE
|
||||
)
|
||||
.build();
|
||||
} catch (ApiPrivateException e) {
|
||||
|
||||
@ -45,7 +45,7 @@ public class ServiceOrderPaymentSearchService implements ServiceOrderPaymentSear
|
||||
);
|
||||
} catch (ApiPrivateException e) {
|
||||
log.warn("Excepcion de la api privada: {} -> {}", e.getStatusCode(), e.getMessage());
|
||||
response = messageHelper.handleException(HttpStatusCodeException.badRequest("400"));
|
||||
response = messageHelper.handleException(HttpStatusCodeException.conflict(e.getStatusCode()));
|
||||
} catch (HttpStatusCodeException e) {
|
||||
log.error("Excepcion HTTP del api privada: {} - {}", e.getStatusCode(), e.getErrorCode());
|
||||
response = messageHelper.handleException(e);
|
||||
|
||||
@ -45,7 +45,7 @@ public class ApiPrivateAdapter implements ApiPrivateRepository {
|
||||
log.info("Ejecutando API privada BOL -> {}", request.getChannelCode());
|
||||
return executeBol(paymentOrderRequest);
|
||||
} else {
|
||||
throw HttpStatusCodeException.badRequest("400");
|
||||
throw HttpStatusCodeException.conflict("PIBE-00");
|
||||
}
|
||||
}
|
||||
|
||||
@ -79,7 +79,7 @@ public class ApiPrivateAdapter implements ApiPrivateRepository {
|
||||
|
||||
private <T> void validateResponseNotEmpty(List<T> response) {
|
||||
if (response.isEmpty()) {
|
||||
throw HttpStatusCodeException.badRequest("400");
|
||||
throw HttpStatusCodeException.conflict("PIBE-00");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -430,7 +430,7 @@ public class ServiceOrderPaymentSearchResource {
|
||||
String channelCode,
|
||||
|
||||
@QueryParam("customerReferenceFintechId")
|
||||
@Parameter(description = "ID de la fintech", example = "pranical-test")
|
||||
@Parameter(description = "ID de la fintech", example = "provider-test")
|
||||
String customerReferenceFintechId,
|
||||
|
||||
@QueryParam("appId")
|
||||
@ -442,7 +442,7 @@ public class ServiceOrderPaymentSearchResource {
|
||||
String initiatedDate,
|
||||
|
||||
@QueryParam("instructionRequestId")
|
||||
@Parameter(description = "ID de la peticion de pago", example = "1")
|
||||
@Parameter(description = "ID de la peticion de pago", example = "2")
|
||||
String instructionRequestId,
|
||||
|
||||
@QueryParam("deviceType")
|
||||
|
||||
@ -17,6 +17,6 @@ api:
|
||||
dom-service-order-payment-search:
|
||||
messages:
|
||||
key: 'dom-service-order-payment-search'
|
||||
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":"VRN02","httpCode":"204","statusCode":"VRN02","description":"Cliente sin productos"}]'
|
||||
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":"PIBE-00","httpCode":409,"statusCode":"PIB-00","description":"Error Interno backend"},{"backendCode":"PIBE-01","httpCode":409,"statusCode":"PIB-01","description":"Error Interno backend"}]'
|
||||
rest-client:
|
||||
payment-order-by-parameters: '{"url":"http://10.135.193.156:8080/RequestPayment/notificationRequestPayment/v1/querys/getGeneralRequestPayByParams/{signatureIdentifier}","timeout":{"connect":10000,"response":10000},"statusSuccess":"00"}'
|
||||
@ -61,7 +61,7 @@ data:
|
||||
quarkus.application.version: 1.0.0
|
||||
quarkus.log.level: INFO
|
||||
quarkus.debug.reflection: 'false'
|
||||
api.dom-service-order-payment-search.messages.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":"VRN02","httpCode":"204","statusCode":"VRN02","description":"Cliente sin productos"}]'
|
||||
api.dom-service-order-payment-search.messages.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":"PIBE-00","httpCode":409,"statusCode":"PIB-00","description":"Error Interno backend"},{"backendCode":"PIBE-01","httpCode":409,"statusCode":"PIB-01","description":"Error Interno backend"}]'
|
||||
quarkus.debug.print-startup-times: 'true'
|
||||
quarkus.swagger-ui.path: /swagger-ui
|
||||
quarkus.application.name: dom-service-order-payment-search
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user