Done ticket GEPAFINBE-169

This commit is contained in:
nisha
2025-02-24 18:04:34 +05:30
parent 32617b0291
commit c2e8fa321c
8 changed files with 271 additions and 31 deletions

View File

@@ -59,16 +59,56 @@ public class FieldValidator {
throw new ValidationException(Status.VALIDATION_ERROR, errors, Translator.toLocale(GepafinConstant.VALIDATION_MESSAGE));
}
}
public FieldValidator minLength(String value, Long minLength, String fieldLabel) {
if (minLength != null && value != null && value.length() < minLength) {
errors.add(MessageFormat.format(Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MIN_LENGTH), fieldLabel, minLength));
}
public FieldValidator minLength(String value, Long minLength, String fieldLabel,Long min,ContentResponseBean contentResponseBean) {
if (value != null) {
if(min!=null) {
if(contentResponseBean.getName().equals(GepafinConstant.NUMBER_INPUT)) {
long numericValue = Long.parseLong(value); // Convert String to Long
if (numericValue < min) {
errors.add(MessageFormat.format(
Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MIN), fieldLabel, min));
}
}
else if(contentResponseBean.getName().equals(GepafinConstant.CHECK_BOXES)){
List<String> check = Utils.convertJsonStringToList(value,String.class);
if (check== null || check.size() < min) {
errors.add(MessageFormat.format(
Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MIN_CHECK_BOX), fieldLabel, min));
}
}
}
if(minLength!=null) {
if (value.length() < minLength) {
errors.add(MessageFormat.format(Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MIN_LENGTH), fieldLabel, minLength));
}
}
}
return this;
}
public FieldValidator maxLength(String value, Long maxLength, String fieldLabel) {
if (maxLength != null && value != null && value.length() > maxLength) {
errors.add(MessageFormat.format(Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MAX_LENGTH), fieldLabel, maxLength));
public FieldValidator maxLength(String value, Long maxLength, String fieldLabel, Long max, ContentResponseBean contentResponseBean) {
if (value != null) {
if (max != null) {
if(contentResponseBean.getName().equals(GepafinConstant.NUMBER_INPUT)) {
long numericValue = Long.parseLong(value); // Convert String to Long
if (numericValue > max) {
errors.add(MessageFormat.format(
Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MAX), fieldLabel, max));
}
}
else if(contentResponseBean.getName().equals(GepafinConstant.CHECK_BOXES)){
List<String> check = Utils.convertJsonStringToList(value,String.class);
if (check== null || check.size() > max) {
errors.add(MessageFormat.format(
Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MAX_CHECK_BOX), fieldLabel, max));
}
}
}
if (maxLength != null) {
if (value.length() > maxLength) {
errors.add(MessageFormat.format(Translator.toLocale(GepafinConstant.VALIDATION_FIELD_MAX_LENGTH), fieldLabel, maxLength));
}
}
}
return this;
}
@@ -167,12 +207,12 @@ public class FieldValidator {
switch (customRule) {
case GepafinConstant.NON_EMPTY_TABLES:
try {
checkTableValidation(value, fieldId, contentResponseBean, errors);
} catch (Exception e) {
throw new RuntimeException(e);
}
break;
try {
checkTableValidation(value, fieldId, contentResponseBean, errors);
} catch (Exception e) {
throw new RuntimeException(e);
}
break;
}
return this;
@@ -187,13 +227,13 @@ public class FieldValidator {
.orElse(null); // Default to null if no match
if (tableType!=null){
try {
try {
Object object = PdfUtils.extractRows(value);;
value= Utils.convertToString(object);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
} catch (Exception e) {
throw new RuntimeException(e);
}
}
contentResponseBean.getSettings().stream()
.filter(setting -> "table_columns".equals(setting.getName()) || GepafinConstant.CRITERIA_TABLE_COLUMNS.equals(setting.getName())) // Check for "table_columns"