@@ -119,33 +119,32 @@ public class LawCaseHandler implements RequestHandler {
|
||||
}
|
||||
|
||||
private void validateLawCaseRequestFilters(LawCaseRequest lawCaseRequest) {
|
||||
if (lawCaseRequest.getFilterPriority() != null && !lawCaseRequest.getFilterPriority().equals(LawCasePriority.HIGH.name()) &&
|
||||
!lawCaseRequest.getFilterPriority().equals(LawCasePriority.MIDDLE.name()) &&
|
||||
!lawCaseRequest.getFilterPriority().equals(LawCasePriority.LOW.name()) &&
|
||||
!lawCaseRequest.getFilterPriority().equals(LawCasePriority.CRITICAL.name())) {
|
||||
|
||||
throw new NotValidFieldException("Not valid filter priority",
|
||||
new BaseResponse(30017, MessageCode.NOT_VALID_FIELD.getCode(),
|
||||
MessageCode.NOT_VALID_FIELD.getDescription(),
|
||||
Map.of("field", "filterPriority",
|
||||
"valid_values", Arrays.stream(LawCasePriority.values())
|
||||
.map(LawCasePriority::name)
|
||||
.collect(Collectors.toList()),
|
||||
"received_value", lawCaseRequest.getFilterPriority())));
|
||||
if (lawCaseRequest.getFilterPriority() != null) {
|
||||
validateEnumValue(lawCaseRequest.getFilterPriority(),
|
||||
LawCasePriority.class,
|
||||
"filterPriority");
|
||||
}
|
||||
|
||||
if (lawCaseRequest.getFilterType() != null &&
|
||||
!lawCaseRequest.getFilterType().equals(LawCaseType.CLOSED.getName()) ||
|
||||
!Objects.equals(lawCaseRequest.getFilterType(), LawCaseType.ACTIVE.getName()) ||
|
||||
!lawCaseRequest.getFilterType().equals(LawCaseType.COMPLETED.getName())) {
|
||||
throw new NotValidFieldException("Not valid filter type",
|
||||
if (lawCaseRequest.getFilterType() != null) {
|
||||
validateEnumValue(lawCaseRequest.getFilterType(),
|
||||
LawCaseType.class,
|
||||
"filterType");
|
||||
}
|
||||
}
|
||||
|
||||
private <T extends Enum<T>> void validateEnumValue(String value, Class<T> enumClass, String fieldName) {
|
||||
boolean valid = Arrays.stream(enumClass.getEnumConstants())
|
||||
.anyMatch(e -> e.name().equals(value));
|
||||
|
||||
if (!valid) {
|
||||
throw new NotValidFieldException("Not valid " + fieldName,
|
||||
new BaseResponse(30017, MessageCode.NOT_VALID_FIELD.getCode(),
|
||||
MessageCode.NOT_VALID_FIELD.getDescription(),
|
||||
Map.of("field", "filterType",
|
||||
"valid_values", Arrays.stream(LawCaseType.values())
|
||||
.map(LawCaseType::name)
|
||||
Map.of("field", fieldName,
|
||||
"valid_values", Arrays.stream(enumClass.getEnumConstants())
|
||||
.map(Enum::name)
|
||||
.collect(Collectors.toList()),
|
||||
"received_value", lawCaseRequest.getFilterType())));
|
||||
"received_value", value)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user