Updated code for evaluation-v2(call)

This commit is contained in:
Piyush
2025-01-24 19:33:47 +05:30
parent e64d10add6
commit 0ebd33e544
26 changed files with 214 additions and 36 deletions

View File

@@ -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);
}
}

View File

@@ -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,29 +30,35 @@ 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())
if (response.getEvaluationVersion() == EvaluationVersionEnum.V1 &&(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()) {
if (response.getEvaluationVersion() == EvaluationVersionEnum.V1 &&(formResponses == null || formResponses.isEmpty()) ){
data.addError(Translator.toLocale(GepafinConstant.FORM_NOT_FOUND));
}
data.validate();

View File

@@ -52,10 +52,10 @@ public class EvaluationFormServiceImpl implements EvaluationFormService {
}
@Override
public List<EvaluationFormResponseBean> getEvaluationFormsByCallId(HttpServletRequest request, Long callId) {
public EvaluationFormResponseBean getEvaluationFormByCallId(HttpServletRequest request, Long callId) {
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return evalauationFormDao.getEvaluationFormsByCallId(call);
return evalauationFormDao.getEvaluationFormByCallId(call);
}