From 4ae96705fa3d704b0de284e2a2059ec802944da3 Mon Sep 17 00:00:00 2001 From: rajesh Date: Thu, 30 Jan 2025 14:20:25 +0530 Subject: [PATCH] Added evaluation version in the evaluation API's response. --- .../dao/ApplicationEvaluationDao.java | 18 ++++++++++++++++-- .../entities/ApplicationEvaluationEntity.java | 3 +++ .../ApplicationEvaluationFormResponse.java | 2 ++ .../ApplicationEvaluationResponse.java | 3 +++ .../ApplicationEvaluationResponseBean.java | 2 ++ .../db/changelog/db.changelog-1.0.0.xml | 9 +++++++++ 6 files changed, 35 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java index edb69587..70ac9a4a 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java @@ -165,6 +165,7 @@ public class ApplicationEvaluationDao { entity.setSuspendedDays(0L); entity.setStartDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now())); entity.setEndDate(DateTimeUtil.DateServerToUTC(application.getSubmissionDate().plusDays(30))); + entity.setEvaluationVersion(application.getEvaluationVersion()); entity.setStatus(ApplicationEvaluationStatusTypeEnum.OPEN.getValue()); return entity; } @@ -286,6 +287,7 @@ public class ApplicationEvaluationDao { response.setNote(entity.getNote()); response.setMotivation(entity.getMotivation()); response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(entity.getStatus())); + response.setEvaluationVersion(EvaluationVersionEnum.valueOf(entity.getEvaluationVersion())); response.setEvaluationEndDate(entity.getEndDate()); response.setCreatedDate(entity.getCreatedDate()); response.setUpdatedDate(entity.getUpdatedDate()); @@ -635,6 +637,7 @@ public class ApplicationEvaluationDao { ApplicationEvaluationEntity oldApplicationEvaluation = null; ApplicationEntity application = applicationService.validateApplication(assignedApplications.get().getApplication().getId()); VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT; + validateApplicationEvaluationRequest(req, application); if (existingEntityOptional.isPresent()) { entity = existingEntityOptional.get(); oldApplicationEvaluation = Utils.getClonedEntityForData(entity); @@ -706,7 +709,14 @@ public class ApplicationEvaluationDao { } } - private void updateAmendmentDocumentsAndFormFields(List applicationAmendmentRequestEntities, List amendmentFormFields) { + private void validateApplicationEvaluationRequest(ApplicationEvaluationRequest req, ApplicationEntity application) { + if(EvaluationVersionEnum.V2.getValue().equals(application.getEvaluationVersion())) { + req.setChecklist(null); + req.setCriteria(null); + } + } + + private void updateAmendmentDocumentsAndFormFields(List applicationAmendmentRequestEntities, List amendmentFormFields) { // Iterate through amendment request entities // @@ -1130,6 +1140,7 @@ public class ApplicationEvaluationDao { List applicationFormEntities = applicationFormRepository.findByApplicationId(applicationId); response.setApplicationId(application.getId()); response.setAssignedApplicationId(assignedApplications.getId()); + response.setEvaluationVersion(EvaluationVersionEnum.valueOf(application.getEvaluationVersion())); response.setNote(null); response.setMotivation(null); response.setApplicationStatus(ApplicationStatusTypeEnum.valueOf(application.getStatus())); @@ -2001,7 +2012,7 @@ public class ApplicationEvaluationDao { ApplicationEvaluationFormEntity applicationEvaluationFormEntity, List applicationEvaluationFormFieldEntities, EvaluationFormEntity evaluationFormEntity){ - ApplicationEvaluationFormFieldEntity applicationEvaluationFormFieldEntity = null; + ApplicationEvaluationFormFieldEntity applicationEvaluationFormFieldEntity = new ApplicationEvaluationFormFieldEntity(); validateFileUploadDocuments(applicationFormFieldRequestBean, evaluationFormEntity); VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT; ApplicationEvaluationFormFieldEntity oldApplicationEvaluationFormFieldData = null; @@ -2018,6 +2029,7 @@ public class ApplicationEvaluationDao { break; } else { applicationEvaluationFormFieldEntity.setApplicationEvaluationForm(applicationEvaluationFormEntity); + applicationEvaluationFormFieldEntity.setIsDeleted(Boolean.FALSE); } } } @@ -2131,6 +2143,7 @@ public class ApplicationEvaluationDao { response.setApplicationId(entity.getApplicationId()); response.setEvaluationId(entity.getId()); response.setNote(entity.getNote()); + response.setEvaluationVersion(EvaluationVersionEnum.valueOf(entity.getEvaluationVersion())); response.setCreatedDate(entity.getCreatedDate()); response.setUpdatedDate(entity.getUpdatedDate()); return response; @@ -2152,6 +2165,7 @@ public class ApplicationEvaluationDao { response.setApplicationId(evaluationEntity.getApplicationId()); response.setNote(evaluationEntity.getNote()); response.setStatus(evaluationEntity.getStatus()); + response.setEvaluationVersion(EvaluationVersionEnum.valueOf(evaluationEntity.getEvaluationVersion())); response.setAssignedApplicationId(evaluationEntity.getAssignedApplicationsEntity().getId()); EvaluationFormEntity evaluationFormEntity = evaluationFormRepository.findByCallIdAndIsDeletedFalse(evaluationEntity.getAssignedApplicationsEntity().getApplication().getCall().getId()); diff --git a/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEvaluationEntity.java b/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEvaluationEntity.java index 6ab7b72c..045a1bdb 100644 --- a/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEvaluationEntity.java +++ b/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEvaluationEntity.java @@ -67,5 +67,8 @@ public class ApplicationEvaluationEntity extends BaseEntity{ @Column(name = "ACTIVE_DAYS") private Long activeDays; + + @Column(name = "evaluationVersion") + private String evaluationVersion; } diff --git a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java index 7c806d39..d58219dd 100644 --- a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java +++ b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java @@ -1,6 +1,7 @@ package net.gepafin.tendermanagement.model.response; import lombok.Data; +import net.gepafin.tendermanagement.enums.EvaluationVersionEnum; @Data public class ApplicationEvaluationFormResponse { @@ -10,6 +11,7 @@ public class ApplicationEvaluationFormResponse { private Long assignedApplicationId; private String note; private String status; + private EvaluationVersionEnum evaluationVersion; private ApplicationEvaluationFormResponseBean applicationEvaluationFormResponse; diff --git a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java index c2fcd6cb..4afd57eb 100644 --- a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java +++ b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java @@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.model.response; import lombok.Data; import net.gepafin.tendermanagement.enums.ApplicationEvaluationStatusTypeEnum; import net.gepafin.tendermanagement.enums.ApplicationStatusTypeEnum; +import net.gepafin.tendermanagement.enums.EvaluationVersionEnum; import java.math.BigDecimal; import java.time.LocalDateTime; @@ -43,4 +44,6 @@ public class ApplicationEvaluationResponse { private BigDecimal amountAccepted; private LocalDateTime dateAccepted; private LocalDateTime dateRejected; + private EvaluationVersionEnum evaluationVersion; + } diff --git a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponseBean.java b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponseBean.java index cf4b5865..b8adf7a6 100644 --- a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponseBean.java +++ b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponseBean.java @@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.model.response; import lombok.Data; import net.gepafin.tendermanagement.enums.ApplicationEvaluationStatusTypeEnum; +import net.gepafin.tendermanagement.enums.EvaluationVersionEnum; import net.gepafin.tendermanagement.model.BaseBean; import java.util.List; @@ -11,5 +12,6 @@ public class ApplicationEvaluationResponseBean extends BaseBean { private Long applicationId; private Long evaluationId; private String note; + private EvaluationVersionEnum evaluationVersion; private List formFields; } diff --git a/src/main/resources/db/changelog/db.changelog-1.0.0.xml b/src/main/resources/db/changelog/db.changelog-1.0.0.xml index e9cc9cb3..cdc7e6f1 100644 --- a/src/main/resources/db/changelog/db.changelog-1.0.0.xml +++ b/src/main/resources/db/changelog/db.changelog-1.0.0.xml @@ -2366,4 +2366,13 @@ columnName="field_value" newDataType="TEXT"/> + + + + + + + + +