From 1618b864a7db55e541fa5b73022f305aae4cf1e1 Mon Sep 17 00:00:00 2001 From: ZQN <364596817@qq.com> Date: 星期二, 25 三月 2025 17:39:30 +0800 Subject: [PATCH] 脱敏 --- project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 51 insertions(+), 4 deletions(-) diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java index d8fcbb8..56feac4 100644 --- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java +++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java @@ -1,19 +1,23 @@ package com.project.enforce.service.impl; +import cn.hutool.core.convert.Convert; import com.project.common.exception.base.BaseException; +import com.project.common.utils.JsonUtils; +import com.project.common.utils.NumberUtils; import com.project.common.utils.StringUtils; import com.project.enforce.domain.EnforceEvaluateAnswer; +import com.project.enforce.domain.EnforceEvaluateLog; import com.project.enforce.domain.EnforceEvaluateQuestion; +import com.project.enforce.domain.EnforceOrder; import com.project.enforce.domain.bo.editBo.EnforceEvaluateBo; import com.project.enforce.domain.vo.EnforceEvaluateVo; -import com.project.enforce.service.IEnforceEvaluateAnswerService; -import com.project.enforce.service.IEnforceEvaluateQuestionService; -import com.project.enforce.service.IEnforceEvaluateService; +import com.project.enforce.service.*; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.List; /** @@ -30,17 +34,20 @@ private final IEnforceEvaluateQuestionService questionService; private final IEnforceEvaluateAnswerService answerService; + private final IEnforceOrderService orderService; + private final IEnforceEvaluateLogService evaluateLogService; @Override//淇濆瓨 @Transactional public Boolean save(EnforceEvaluateBo bo) { + questionService.clearQuestionAndAnswer(); List<EnforceEvaluateQuestion> questionList = bo.getQuestionList(); if (StringUtils.isEmpty(questionList)){ throw new BaseException("璇勪环椤逛笉鍙负绌猴紒"); } - for (EnforceEvaluateQuestion question : bo.getQuestionList()) { + for (EnforceEvaluateQuestion question : questionList) { if (question.getQuestionType()==1 && StringUtils.isEmpty(question.getAnswerList())){ throw new BaseException("閫夋嫨绫诲瀷绛旀涓嶅彲涓虹┖锛�"); } @@ -85,4 +92,44 @@ vo.setQuestionList(questionList); return vo; } + + @Override + @Transactional + public Boolean saveOrder(EnforceEvaluateBo bo) + { + if (bo.getOrderId()==null){ + throw new BaseException("璇烽�夋嫨璇勪环鎵ф硶鍗曪紒"); + } + EnforceOrder order = orderService.getById(bo.getOrderId()); + if (order.getOrderStatus()==2){ + throw new BaseException("璇ユ墽娉曞崟杩樻湭鎵ф硶锛屼笉鍙瘎浠凤紒"); + } + List<EnforceEvaluateQuestion> questionList = bo.getQuestionList(); + if (StringUtils.isEmpty(questionList)){ + throw new BaseException("璇勪环椤逛笉鍙负绌猴紒"); + } + int count = evaluateLogService.count(EnforceEvaluateLog::getOrderId, bo.getOrderId()); + if (count>0) { + throw new BaseException("璇ユ墽娉曞崟宸茶瘎浠凤紒"); + } + BigDecimal totalScore = BigDecimal.ZERO; + for (EnforceEvaluateQuestion question : questionList) { + totalScore = NumberUtils.add(totalScore, question.getGetScore()); + } + + + EnforceEvaluateLog evaluateLog = Convert.convert(EnforceEvaluateLog.class, order); + evaluateLog.setQuestionRemark(bo.getQuestionRemark()); + evaluateLog.setTotalScore(NumberUtils.divToBigDecSca2(totalScore,1)); + evaluateLog.setQuestionStatic(JsonUtils.objectToJson(bo.getQuestionList())); + + evaluateLogService.saveOrUpdate(evaluateLog); + return orderService.update(orderService.lu() + .set(EnforceOrder::getIsEva,1) + .set(EnforceOrder::getTotalScore, totalScore) + .eq(EnforceOrder::getOrderId, bo.getOrderId()) + ); + } + + } -- Gitblit v1.9.1