Merge pull request #179 from Kitzanos/feature/GEPAFINBE-143
GEPAFINBE-143(Evaluation Process V2)
This commit is contained in:
@@ -5,10 +5,8 @@ import net.gepafin.tendermanagement.dao.CallDao;
|
||||
import net.gepafin.tendermanagement.entities.CallEntity;
|
||||
import net.gepafin.tendermanagement.entities.UserEntity;
|
||||
import net.gepafin.tendermanagement.enums.CallStatusEnum;
|
||||
import net.gepafin.tendermanagement.model.request.CallPageableRequestBean;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep1;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep2;
|
||||
import net.gepafin.tendermanagement.model.request.UpdateCallRequestStep1;
|
||||
import net.gepafin.tendermanagement.enums.EvaluationVersionEnum;
|
||||
import net.gepafin.tendermanagement.model.request.*;
|
||||
import net.gepafin.tendermanagement.model.response.CallDetailsResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.CallResponse;
|
||||
import net.gepafin.tendermanagement.model.response.PageableResponseBean;
|
||||
@@ -110,5 +108,11 @@ public class CallServiceImpl implements CallService {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
return callDao.getAllCallsByPagination(request,user,companyId,onlyPreferredCall,callPageableRequestBean);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public CallResponse createCallStep2EvaluationV2(HttpServletRequest request, Long callId, CreateCallRequestStep2EvaluationV2 createCallRequest) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
CallEntity call = validator.validateUserWithCall(user, callId);
|
||||
return callDao.createCallStep2EvaluationV2(call, createCallRequest, user);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,9 @@ import java.util.List;
|
||||
|
||||
import net.gepafin.tendermanagement.config.Translator;
|
||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.enums.EvaluationVersionEnum;
|
||||
import net.gepafin.tendermanagement.model.response.CallResponse;
|
||||
import net.gepafin.tendermanagement.model.response.EvaluationFormResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.FlowResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
import net.gepafin.tendermanagement.util.FieldValidator;
|
||||
@@ -15,7 +17,7 @@ import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationExceptio
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
||||
|
||||
public class CallValidatorServiceImpl {
|
||||
public static void validateResponse(CallResponse response, FlowResponseBean flowResponse, List<FormResponseBean> formResponses) {
|
||||
public static void validateResponse(CallResponse response, FlowResponseBean flowResponse, List<FormResponseBean> formResponses, EvaluationFormResponseBean evaluationFormResponseBean) {
|
||||
// Validate CallResponse (existing logic)
|
||||
FieldValidator data = FieldValidator.create()
|
||||
.notNull(response.getId(), "id")
|
||||
@@ -28,26 +30,32 @@ public class CallValidatorServiceImpl {
|
||||
.notNull(response.getRegionId(), "regionId")
|
||||
.notNull(response.getAmount(), "amount")
|
||||
.notNull(response.getAmountMax(), "amountMax")
|
||||
.notNull(response.getThreshold(), "threshold")
|
||||
.notNull(response.getEmail(),"email")
|
||||
.notNull(response.getAmountMin(),"amountMin")
|
||||
.notNull(response.getStartTime(),"startTime")
|
||||
.notNull(response.getEndTime(),"endTime")
|
||||
.notNull(response.getDocumentationRequested(), "documentationRequested")
|
||||
.notEmpty(response.getAimedTo(), "aimedTo")
|
||||
.notEmpty(response.getCriteria(), "criteria")
|
||||
.notEmpty(response.getDocs(), "docs")
|
||||
.notEmpty(response.getCheckList(), "checkList");
|
||||
.notEmpty(response.getDocs(), "docs");
|
||||
if (response.getEvaluationVersion() == EvaluationVersionEnum.V1) {
|
||||
|
||||
data = data.notEmpty(response.getCheckList(), "checkList")
|
||||
.notEmpty(response.getCriteria(), "criteria")
|
||||
.notNull(response.getThreshold(), "threshold");
|
||||
}
|
||||
|
||||
if (response.getEvaluationVersion() == EvaluationVersionEnum.V2 && evaluationFormResponseBean == null) {
|
||||
data.addError(Translator.toLocale(GepafinConstant.EVALUATION_FORM_NOT_FOUND));
|
||||
}
|
||||
if (response.getDates().get(0) == null || response.getDates().get(1) == null
|
||||
|| response.getDates().get(0).toLocalDate().isBefore(LocalDate.now())
|
||||
|| response.getDates().get(1).toLocalDate().isBefore(LocalDate.now())
|
||||
|| response.getDates().get(0).toLocalDate().isAfter(response.getDates().get(1).toLocalDate())) {
|
||||
data = data.addError(Translator.toLocale(GepafinConstant.INVALID_DATE_MSG));
|
||||
}
|
||||
if (flowResponse == null || ((flowResponse.getFlowData() == null || flowResponse.getFlowData().isEmpty())
|
||||
&& (flowResponse.getFlowEdges() == null || flowResponse.getFlowEdges().isEmpty()))) {
|
||||
|
||||
if (flowResponse == null || ((flowResponse.getFlowData() == null || flowResponse.getFlowData().isEmpty()))
|
||||
&& (flowResponse.getFlowEdges() == null || flowResponse.getFlowEdges().isEmpty())) {
|
||||
data.addError(Translator.toLocale(GepafinConstant.FLOW_NOT_FOUND));
|
||||
}
|
||||
if (formResponses == null || formResponses.isEmpty()) {
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
package net.gepafin.tendermanagement.service.impl;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.dao.EvaluationFormDao;
|
||||
import net.gepafin.tendermanagement.entities.*;
|
||||
import net.gepafin.tendermanagement.model.request.EvaluationFormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.EvaluationFormResponseBean;
|
||||
import net.gepafin.tendermanagement.service.EvaluationFormService;
|
||||
import net.gepafin.tendermanagement.util.Validator;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class EvaluationFormServiceImpl implements EvaluationFormService {
|
||||
|
||||
@Autowired
|
||||
private EvaluationFormDao evalauationFormDao;
|
||||
|
||||
@Autowired
|
||||
private Validator validator;
|
||||
|
||||
@Override
|
||||
public EvaluationFormResponseBean createEvaluationForm(HttpServletRequest request, Long callId, EvaluationFormRequest evaluationFormRequest) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
CallEntity call = validator.validateUserWithCall(user, callId);
|
||||
return evalauationFormDao.createEvaluationForm(call,evaluationFormRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EvaluationFormResponseBean updateEvaluationForm(HttpServletRequest request, Long evaluationFormId, EvaluationFormRequest evaluationFormRequest) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
return evalauationFormDao.updateEvaluationForm(user, evaluationFormId,evaluationFormRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EvaluationFormResponseBean getEvaluationFormById(HttpServletRequest request, Long evaluationFormId) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
return evalauationFormDao.getEvaluationFormById(user, evaluationFormId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteEvaluationForm(HttpServletRequest request, Long evaluationFormId) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
evalauationFormDao.deleteEvaluationForm(user, evaluationFormId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EvaluationFormEntity validateEvaluationForm(Long id) {
|
||||
return evalauationFormDao.validateForm(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EvaluationFormResponseBean getEvaluationFormByCallId(HttpServletRequest request, Long callId) {
|
||||
UserEntity user = validator.validateUser(request);
|
||||
CallEntity call = validator.validateUserWithCall(user, callId);
|
||||
return evalauationFormDao.getEvaluationFormByCallId(call);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user