Updated code
This commit is contained in:
@@ -20,6 +20,7 @@ import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -94,7 +95,7 @@ public class ApplicationEvaluationDao {
|
|||||||
private void populateBasicDetails(ApplicationEvaluationEntity entity, ApplicationEvaluationResponse response) {
|
private void populateBasicDetails(ApplicationEvaluationEntity entity, ApplicationEvaluationResponse response) {
|
||||||
response.setId(entity.getId());
|
response.setId(entity.getId());
|
||||||
response.setApplicationId(entity.getApplicationId());
|
response.setApplicationId(entity.getApplicationId());
|
||||||
AssignedApplicationsEntity assignedApplications = assignedApplicationsRepository.findByApplicationIdAndIsDeletedFalse(entity.getApplicationId()).orElse(null);
|
AssignedApplicationsEntity assignedApplications = assignedApplicationsRepository.findByIdAndIsDeletedFalse(entity.getAssignedApplicationsEntity().getId()).orElse(null);
|
||||||
response.setAssignedApplicationId(assignedApplications.getId());
|
response.setAssignedApplicationId(assignedApplications.getId());
|
||||||
response.setNote(entity.getNote());
|
response.setNote(entity.getNote());
|
||||||
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(entity.getStatus()));
|
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(entity.getStatus()));
|
||||||
@@ -327,7 +328,8 @@ public class ApplicationEvaluationDao {
|
|||||||
response.setProtocolNumber(application.getProtocol() != null ? application.getProtocol().getProtocolNumber() : null);
|
response.setProtocolNumber(application.getProtocol() != null ? application.getProtocol().getProtocolNumber() : null);
|
||||||
response.setSubmissionDate(application.getSubmissionDate() != null ? application.getSubmissionDate() : null);
|
response.setSubmissionDate(application.getSubmissionDate() != null ? application.getSubmissionDate() : null);
|
||||||
response.setEvaluationDate(application.getSubmissionDate() != null ? application.getSubmissionDate().plusDays(30) : null);
|
response.setEvaluationDate(application.getSubmissionDate() != null ? application.getSubmissionDate().plusDays(30) : null);
|
||||||
|
LocalDateTime callEndDate = application.getCall().getEndDate();
|
||||||
|
response.setCallEndDate(callEndDate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -335,13 +337,6 @@ public class ApplicationEvaluationDao {
|
|||||||
Optional<ApplicationEvaluationEntity> existingEntityOptional = applicationEvaluationRepository.findByAssignedApplicationsEntity_IdAndIsDeletedFalse(assignedApplciationId);
|
Optional<ApplicationEvaluationEntity> existingEntityOptional = applicationEvaluationRepository.findByAssignedApplicationsEntity_IdAndIsDeletedFalse(assignedApplciationId);
|
||||||
ApplicationEvaluationEntity entity;
|
ApplicationEvaluationEntity entity;
|
||||||
Optional<AssignedApplicationsEntity> assignedApplications=assignedApplicationsRepository.findByIdAndIsDeletedFalse(assignedApplciationId);
|
Optional<AssignedApplicationsEntity> assignedApplications=assignedApplicationsRepository.findByIdAndIsDeletedFalse(assignedApplciationId);
|
||||||
{if(assignedApplications.isPresent())
|
|
||||||
if (applicationEvaluationRepository.existsByApplicationIdAndIsDeletedFalse(assignedApplications.get().getApplication().getId())) {
|
|
||||||
throw new CustomValidationException(
|
|
||||||
Status.BAD_REQUEST,
|
|
||||||
GepafinConstant.EVALUATION_ALREADY_EXISTS_MSG
|
|
||||||
);
|
|
||||||
}}
|
|
||||||
if (existingEntityOptional.isPresent()) {
|
if (existingEntityOptional.isPresent()) {
|
||||||
entity = existingEntityOptional.get();
|
entity = existingEntityOptional.get();
|
||||||
entity.setCriteria(Utils.convertObjectToJson(filterNonNullCriteria(processCriteria(entity, req))));
|
entity.setCriteria(Utils.convertObjectToJson(filterNonNullCriteria(processCriteria(entity, req))));
|
||||||
@@ -558,6 +553,8 @@ public class ApplicationEvaluationDao {
|
|||||||
response.setApplicationStatus(ApplicationStatusTypeEnum.valueOf(application.getStatus()));
|
response.setApplicationStatus(ApplicationStatusTypeEnum.valueOf(application.getStatus()));
|
||||||
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(ApplicationEvaluationStatusTypeEnum.OPEN.getValue()));
|
response.setStatus(ApplicationEvaluationStatusTypeEnum.valueOf(ApplicationEvaluationStatusTypeEnum.OPEN.getValue()));
|
||||||
response.setMinScore(call.getThreshold()!=null?call.getThreshold():null);
|
response.setMinScore(call.getThreshold()!=null?call.getThreshold():null);
|
||||||
|
LocalDateTime callEndDate = application.getCall().getEndDate();
|
||||||
|
response.setCallEndDate(callEndDate);
|
||||||
setCriteriaResponses(entity, application.getId(), response, evaluationCriterias);
|
setCriteriaResponses(entity, application.getId(), response, evaluationCriterias);
|
||||||
setChecklistResponses(entity, application.getId(), response, checklistEntities);
|
setChecklistResponses(entity, application.getId(), response, checklistEntities);
|
||||||
setFileResponses(entity, application.getId(), response, applicationFormEntities);
|
setFileResponses(entity, application.getId(), response, applicationFormEntities);
|
||||||
|
|||||||
@@ -28,4 +28,5 @@ public class ApplicationEvaluationResponse {
|
|||||||
private String callName;
|
private String callName;
|
||||||
private LocalDateTime submissionDate;
|
private LocalDateTime submissionDate;
|
||||||
private LocalDateTime evaluationDate;
|
private LocalDateTime evaluationDate;
|
||||||
|
private LocalDateTime callEndDate;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,9 +15,13 @@ public interface AssignedApplicationsRepository extends JpaRepository<AssignedAp
|
|||||||
Optional<AssignedApplicationsEntity> findByIdAndIsDeletedFalse(Long id);
|
Optional<AssignedApplicationsEntity> findByIdAndIsDeletedFalse(Long id);
|
||||||
@Query("SELECT aa FROM AssignedApplicationsEntity aa WHERE aa.isDeleted = false " +
|
@Query("SELECT aa FROM AssignedApplicationsEntity aa WHERE aa.isDeleted = false " +
|
||||||
"AND (:applicationId IS NULL OR aa.application.id = :applicationId) " +
|
"AND (:applicationId IS NULL OR aa.application.id = :applicationId) " +
|
||||||
"AND (:id IS NULL OR aa.id = :id)")
|
"AND (:id IS NULL OR aa.id = :id) " +
|
||||||
Optional<AssignedApplicationsEntity> findByApplicationIdOrId(@Param("applicationId") Long applicationId,
|
"AND (:userId IS NULL OR aa.userId = :userId)")
|
||||||
@Param("id") Long id);
|
Optional<AssignedApplicationsEntity> findByApplicationIdOrIdAndUserIdAndIsDeletedFalse(
|
||||||
|
@Param("applicationId") Long applicationId,
|
||||||
|
@Param("id") Long id,
|
||||||
|
@Param("userId") Long userId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,29 +50,36 @@ public class ApplicationEvaluationServiceImpl implements ApplicationEvaluationSe
|
|||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
public ApplicationEvaluationResponse getApplicationEvaluationByApplicationId(
|
public ApplicationEvaluationResponse getApplicationEvaluationByApplicationId(
|
||||||
HttpServletRequest request, Long applicationId, Long assignedApplicationId) {
|
HttpServletRequest request, Long applicationId, Long assignedApplicationId) {
|
||||||
|
|
||||||
if (applicationId == null && assignedApplicationId == null) {
|
if (applicationId == null && assignedApplicationId == null) {
|
||||||
throw new CustomValidationException(
|
throw new CustomValidationException(
|
||||||
Status.BAD_REQUEST,
|
Status.BAD_REQUEST,
|
||||||
Translator.toLocale(GepafinConstant.EITHER_APPLICATION_OR_ASSIGNED_APPLICATION_ID_REQUIRED_MSG)
|
Translator.toLocale(GepafinConstant.EITHER_APPLICATION_OR_ASSIGNED_APPLICATION_ID_REQUIRED_MSG)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
UserEntity preInstructor = validator.validateUser(request);
|
||||||
Optional<AssignedApplicationsEntity> assignedApplicationsOptional =
|
Optional<AssignedApplicationsEntity> assignedApplicationsOptional =
|
||||||
assignedApplicationsRepository.findByApplicationIdOrId(applicationId, assignedApplicationId);
|
assignedApplicationsRepository.findByApplicationIdOrIdAndUserIdAndIsDeletedFalse(applicationId,assignedApplicationId, preInstructor.getId());
|
||||||
|
|
||||||
|
if (assignedApplicationId != null) {
|
||||||
|
assignedApplicationsOptional = assignedApplicationsOptional.filter(a -> a.getId().equals(assignedApplicationId));
|
||||||
|
}
|
||||||
AssignedApplicationsEntity assignedApplications = assignedApplicationsOptional
|
AssignedApplicationsEntity assignedApplications = assignedApplicationsOptional
|
||||||
.orElseThrow(() -> new CustomValidationException(
|
.orElseThrow(() -> new CustomValidationException(
|
||||||
Status.BAD_REQUEST,
|
Status.BAD_REQUEST,
|
||||||
Translator.toLocale(GepafinConstant.ASSIGNED_APPLICATION_NOT_FOUND_WITH_ID_MSG)
|
Translator.toLocale(GepafinConstant.ASSIGNED_APPLICATION_NOT_FOUND_WITH_ID_MSG)
|
||||||
));
|
));
|
||||||
UserEntity user = validator.validatePreInstructor(request, assignedApplications.getUserId());
|
validator.validatePreInstructor(request, assignedApplications.getUserId());
|
||||||
|
|
||||||
return applicationEvaluationDao.getApplicationEvaluationByApplicationId(
|
return applicationEvaluationDao.getApplicationEvaluationByApplicationId(
|
||||||
user,
|
preInstructor,
|
||||||
assignedApplications.getApplication().getId(),
|
assignedApplications.getApplication().getId(),
|
||||||
assignedApplications.getId()
|
assignedApplications.getId()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void deleteApplicationEvaluation(HttpServletRequest request,Long id) {
|
public void deleteApplicationEvaluation(HttpServletRequest request,Long id) {
|
||||||
|
|||||||
Reference in New Issue
Block a user