From 0c6296917b118f415ee856f3d47064a3d37cf496 Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Tue, 25 Aug 2020 22:53:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/lz/common/utils/R.java | 12 +++++++++++ .../controller/ResultRecordController.java | 2 +- .../sys/service/app/ResultRecordService.java | 2 ++ .../app/impl/ResultRecordServiceImpl.java | 21 ++++++++++++++++--- 4 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/lz/common/utils/R.java b/src/main/java/com/lz/common/utils/R.java index c69ba46c..2e6741c1 100644 --- a/src/main/java/com/lz/common/utils/R.java +++ b/src/main/java/com/lz/common/utils/R.java @@ -21,9 +21,12 @@ import java.util.Map; public class R extends HashMap { private static final long serialVersionUID = 1L; + private boolean isSuccess; + public R() { put("code", 0); put("msg", "success"); + this.isSuccess = true ; } public static R error() { @@ -38,6 +41,7 @@ public class R extends HashMap { R r = new R(); r.put("code", code); r.put("msg", msg); + r.setSuccess(false); return r; } @@ -61,4 +65,12 @@ public class R extends HashMap { super.put(key, value); return this; } + + public boolean isSuccess() { + return isSuccess; + } + + public void setSuccess(boolean success) { + this.isSuccess = success; + } } diff --git a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java index a168c5a8..90bfbaf0 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -293,7 +293,7 @@ public class ResultRecordController extends AbstractController { R r = null; int status = 1; if (req.getStatus() == 2) { - r = resultRecordService.approval(req.getRecordResultId(), getUserId()); + r = resultRecordService.approval(req.getRecordResultId(), getUserId()); } else if (req.getStatus() == 3) { //侍提交 ResultRecord resultRecord = resultRecordService.selectResultRecordById(req.getRecordResultId()); resultRecord.setStatus(Constant.STATUS_3); diff --git a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java index 1f52e5a1..542badd4 100644 --- a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java +++ b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java @@ -55,4 +55,6 @@ public interface ResultRecordService extends IService { ResultRecord createResultRecord(Long userId, int type,Long roleId); ResultRecord initResult(Long staffId ,Integer recordType,Long roleId) ; + + R checkApproval(Long recordId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java index c061fed0..11972162 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java @@ -324,12 +324,29 @@ public class ResultRecordServiceImpl extends ServiceImpl resultDetails = resultDetailService.selectByRecordId(recordId); + if (CollectionUtils.isEmpty(resultDetails)) { + return R.error("请先添加业绩"); + } + double sum = resultDetails.stream().filter(p -> p.getType() == 2).mapToDouble(p -> NumberUtil.objToDoubleWithDefault(p.getCheckWeight(), 0d)).sum(); + if (sum < 0.7) { + return R.error("recordId为[" + recordId + "]业绩权重之和必需大于0.7"); + } + return R.ok(); + + } @Override public R approval(Long resultRecordId, Long userId) { ResultRecord resultRecord = resultRecordService.selectResultRecordById(resultRecordId); + R r = resultRecordService.checkApproval(resultRecordId); + if (!r.isSuccess()) { + return r; + } StaffEntity mySelf = staffService.selectStaffById(userId); - TwoTuple> flowInfo = getFlowInfo(resultRecord.getStaffId(),resultRecord.getType()); + TwoTuple> flowInfo = getFlowInfo(resultRecord.getStaffId(), resultRecord.getType()); Long flowId = flowInfo.getFirst(); List list = flowInfo.getSecond(); List flowRelations = flowRelationService.selectFlowRelationAll(); @@ -348,7 +365,6 @@ public class ResultRecordServiceImpl extends ServiceImpl