Fixed application form issue

This commit is contained in:
rajesh
2024-12-14 12:11:10 +05:30
parent f0c28c4349
commit d7302e6f4e

View File

@@ -455,8 +455,9 @@ public class ApplicationDao {
if (applicationFormFieldEntities == null || applicationFormFieldEntities.isEmpty()) { if (applicationFormFieldEntities == null || applicationFormFieldEntities.isEmpty()) {
applicationFormFieldEntity.setApplicationForm(applicationFormEntity); applicationFormFieldEntity.setApplicationForm(applicationFormEntity);
} else { } else {
applicationFormFieldEntity.setApplicationForm(applicationFormEntity);
for (ApplicationFormFieldEntity applicationFormFieldEntity1 : applicationFormFieldEntities) { for (ApplicationFormFieldEntity applicationFormFieldEntity1 : applicationFormFieldEntities) {
if (applicationFormFieldEntity1.getFieldId().equals(applicationFormFieldRequestBean.getFieldId())) { if (applicationFormFieldEntity1.getFieldId().equals(applicationFormFieldRequestBean.getFieldId()) && checkIfRequestFieldIsDifferent(applicationFormFieldEntity1, applicationFormFieldRequestBean)) {
applicationFormFieldEntity = applicationFormFieldEntity1; applicationFormFieldEntity = applicationFormFieldEntity1;
oldApplicationFormFieldData = Utils.getClonedEntityForData(applicationFormFieldEntity); oldApplicationFormFieldData = Utils.getClonedEntityForData(applicationFormFieldEntity);
if (applicationFormEntity.getForm().getId().equals(applicationFormEntity.getApplication().getCall().getInitialForm())) { if (applicationFormEntity.getForm().getId().equals(applicationFormEntity.getApplication().getCall().getInitialForm())) {
@@ -464,8 +465,6 @@ public class ApplicationDao {
} }
actionType = VersionActionTypeEnum.UPDATE; actionType = VersionActionTypeEnum.UPDATE;
break; break;
} else {
applicationFormFieldEntity.setApplicationForm(applicationFormEntity);
} }
} }
} }
@@ -495,7 +494,30 @@ public class ApplicationDao {
return applicationFormField; return applicationFormField;
} }
void updateDocumentDeletionStatus(ApplicationFormFieldEntity applicationFormFieldEntity, ApplicationFormFieldRequestBean applicationFormFieldRequestBean, FormEntity formEntity, List<Long> newDocumentIds, private Boolean checkIfRequestFieldIsDifferent(ApplicationFormFieldEntity applicationFormFieldEntity,
ApplicationFormFieldRequestBean applicationFormFieldRequestBean) {
// Retrieve the field values from both objects
String entityFieldValue = applicationFormFieldEntity.getFieldValue();
Object requestFieldValue = applicationFormFieldRequestBean.getFieldValue();
// Check if both are null
if (entityFieldValue == null && requestFieldValue == null) {
return false; // No difference if both are null
}
// Compare values
Boolean check = !Objects.equals(entityFieldValue, requestFieldValue);
// Additional comparison if both are non-null
if (Boolean.TRUE.equals(check) && entityFieldValue != null && requestFieldValue != null) {
check = !entityFieldValue.equals(requestFieldValue.toString());
}
return check;
}
void updateDocumentDeletionStatus(ApplicationFormFieldEntity applicationFormFieldEntity, ApplicationFormFieldRequestBean applicationFormFieldRequestBean, FormEntity formEntity, List<Long> newDocumentIds,
List<String> preInstructorDocumentId,boolean isPreInstructor) { List<String> preInstructorDocumentId,boolean isPreInstructor) {
if (newDocumentIds == null) { if (newDocumentIds == null) {
newDocumentIds = Collections.emptyList(); newDocumentIds = Collections.emptyList();