Updated code

This commit is contained in:
harish
2024-10-26 17:48:31 +05:30
parent 24d4f6a65c
commit 9b1c86d179
13 changed files with 87 additions and 58 deletions

View File

@@ -53,11 +53,14 @@ public class ApplicationEvaluationDao {
private ApplicationFormRepository applicationFormRepository;
@Autowired
private ApplicationFormFieldRepository applicationFormFieldRepository;
@Autowired AssignedApplicationsRepository assignedApplicationsRepository;
private ApplicationEvaluationEntity convertToEntity(UserEntity user, ApplicationEvaluationRequest req) {
private ApplicationEvaluationEntity convertToEntity(UserEntity user, ApplicationEvaluationRequest req,Long applicationId) {
ApplicationEvaluationEntity entity = new ApplicationEvaluationEntity();
ApplicationEntity application = applicationService.validateApplication(req.getApplicationId());
entity.setApplication(application);
ApplicationEntity application = applicationService.validateApplication(applicationId);
AssignedApplicationsEntity assignedApplications = assignedApplicationsRepository.findByApplicationIdAndIsDeletedFalse(applicationId).orElse(null);
entity.setApplicationId(application.getId());
entity.setAssignedApplicationsEntity(assignedApplications);
entity.setUserId(user.getId());
entity.setCriteria(Utils.convertObjectToJson(req.getCriteria()));
entity.setChecklist(Utils.convertObjectToJson(req.getChecklist()));
@@ -72,10 +75,10 @@ public class ApplicationEvaluationDao {
ApplicationEvaluationResponse response = new ApplicationEvaluationResponse();
populateBasicDetails(entity, response);
CallEntity call = callRepository.findCallEntityByApplicationId(entity.getApplication().getId());
CallEntity call = callRepository.findCallEntityByApplicationId(entity.getApplicationId());
List<EvaluationCriteriaEntity> evaluationCriterias = evaluationCriteriaRepository.findByCallId(call.getId());
List<CallTargetAudienceChecklistEntity> checklistEntities = callTargetAudienceChecklistRepository.findByCallId(call.getId());
List<ApplicationFormEntity> applicationFormEntities = applicationFormRepository.findByApplicationId(entity.getApplication().getId());
List<ApplicationFormEntity> applicationFormEntities = applicationFormRepository.findByApplicationId(entity.getApplicationId());
setCriteriaResponses(entity, response, evaluationCriterias);
setChecklistResponses(entity, response, checklistEntities);
@@ -88,7 +91,9 @@ public class ApplicationEvaluationDao {
private void populateBasicDetails(ApplicationEvaluationEntity entity, ApplicationEvaluationResponse response) {
response.setId(entity.getId());
response.setApplicationId(entity.getApplication().getId());
response.setApplicationId(entity.getApplicationId());
AssignedApplicationsEntity assignedApplications = assignedApplicationsRepository.findByApplicationIdAndIsDeletedFalse(entity.getApplicationId()).orElse(null);
response.setAssignedApplicationId(assignedApplications.getId());
response.setNote(entity.getNote());
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(entity.getStatus()));
response.setCreatedDate(entity.getCreatedDate());
@@ -100,7 +105,7 @@ public class ApplicationEvaluationDao {
? Utils.convertJsonToList(entity.getCriteria(), new TypeReference<List<CriteriaResponse>>() {})
: new ArrayList<>();
List<CriteriaResponse> criteriaResponsesFromDB = getCriteriaResponse(entity.getApplication().getId());
List<CriteriaResponse> criteriaResponsesFromDB = getCriteriaResponse(entity.getApplicationId());
addMissingCriteriaResponses(criteriaResponsesFromEntity, criteriaResponsesFromDB);
criteriaResponsesFromEntity.forEach(criteriaResponse -> {
@@ -135,7 +140,7 @@ public class ApplicationEvaluationDao {
? Utils.convertJsonToList(entity.getChecklist(), new TypeReference<List<ChecklistResponse>>() {})
: new ArrayList<>();
List<ChecklistResponse> checklistResponsesFromDB = getChecklistResponse(entity.getApplication().getId());
List<ChecklistResponse> checklistResponsesFromDB = getChecklistResponse(entity.getApplicationId());
addMissingChecklistResponses(checklistResponsesFromEntity, checklistResponsesFromDB);
checklistResponsesFromEntity.forEach(checklistResponse -> {
@@ -169,7 +174,7 @@ public class ApplicationEvaluationDao {
? Utils.convertJsonToList(entity.getFile(), new TypeReference<List<FieldResponse>>() {})
: new ArrayList<>();
List<FieldResponse> fieldResponsesFromDB = getFieldResponses(entity.getApplication().getId());
List<FieldResponse> fieldResponsesFromDB = getFieldResponses(entity.getApplicationId());
addMissingFieldResponses(fieldResponsesFromEntity, fieldResponsesFromDB);
fieldResponsesFromEntity.forEach(fieldResponse -> {
@@ -202,7 +207,7 @@ public class ApplicationEvaluationDao {
}
private void setApplicationDetails(ApplicationEvaluationResponse response, ApplicationEvaluationEntity entity) {
ApplicationEntity application = applicationService.validateApplication(entity.getApplication() != null ? entity.getApplication().getId() : null);
ApplicationEntity application = applicationService.validateApplication(entity.getApplicationId() != null ? entity.getApplicationId(): null);
UserEntity user = userService.validateUser(application.getUserId());
String firstName = user.getFirstName() != null ? user.getFirstName() : "";
String lastName = user.getLastName() != null ? user.getLastName() : "";
@@ -213,12 +218,13 @@ public class ApplicationEvaluationDao {
response.setCallName(application.getCall().getName());
response.setProtocolNumber(application.getProtocol() != null ? application.getProtocol().getProtocolNumber() : null);
response.setSubmissionDate(application.getSubmissionDate());
response.setEvaluationDate(LocalDateTime.now());
response.setEvaluationDate(application.getSubmissionDate().plusDays(30));
}
public ApplicationEvaluationResponse createOrUpdateApplicationEvaluation(UserEntity user, ApplicationEvaluationRequest req) {
Optional<ApplicationEvaluationEntity> existingEntityOptional = applicationEvaluationRepository.findByApplicationId(req.getApplicationId());
public ApplicationEvaluationResponse createOrUpdateApplicationEvaluation(UserEntity user, ApplicationEvaluationRequest req,Long applicationId) {
Optional<ApplicationEvaluationEntity> existingEntityOptional = applicationEvaluationRepository.findByApplicationId(applicationId);
ApplicationEvaluationEntity entity;
if (existingEntityOptional.isPresent()) {
@@ -229,7 +235,7 @@ public class ApplicationEvaluationDao {
entity.setIsDeleted(false);
setIfUpdated(entity::getNote, entity::setNote, req.getNote());
} else {
entity = convertToEntity(user, req);
entity = convertToEntity(user, req,applicationId);
}
ApplicationEvaluationEntity savedEntity = applicationEvaluationRepository.save(entity);
@@ -376,8 +382,9 @@ public class ApplicationEvaluationDao {
List<EvaluationCriteriaEntity> evaluationCriterias = evaluationCriteriaRepository.findByCallId(call.getId());
List<CallTargetAudienceChecklistEntity> checklistEntities = callTargetAudienceChecklistRepository.findByCallId(call.getId());
List<ApplicationFormEntity> applicationFormEntities = applicationFormRepository.findByApplicationId(applicationId);
AssignedApplicationsEntity assignedApplications = assignedApplicationsRepository.findByApplicationIdAndIsDeletedFalse(applicationId).orElse(null);
response.setApplicationId(applicationId);
response.setAssignedApplicationId(assignedApplications.getId());
response.setNote(null);
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(ApplicationEvaluationStatusTypeEnum.DRAFT.getValue()));
@@ -463,7 +470,8 @@ public class ApplicationEvaluationDao {
response.setCallName(application.getCall().getName());
response.setProtocolNumber(application.getProtocol() != null ? application.getProtocol().getProtocolNumber() : null);
response.setSubmissionDate(application.getSubmissionDate());
response.setEvaluationDate(LocalDateTime.now());
response.setEvaluationDate(application.getSubmissionDate().plusDays(30));
}
List<CriteriaResponse> getCriteriaResponse(Long applicationId){ CallEntity call = callRepository.findCallEntityByApplicationId(applicationId);