From 7dfbe35bfaa7ab48da27073858c64e7602c702dd Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期一, 28 十一月 2022 13:56:38 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/controller/PlanController.java | 61 +++++++++++++++++++++++++++++- src/main/java/com/zy/crm/common/model/SettleDto.java | 2 src/main/webapp/views/plan/plan.html | 2 src/main/java/com/zy/crm/manager/entity/Plan.java | 4 +- 4 files changed, 63 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/crm/common/model/SettleDto.java b/src/main/java/com/zy/crm/common/model/SettleDto.java index 5ec1d8c..2cb884d 100644 --- a/src/main/java/com/zy/crm/common/model/SettleDto.java +++ b/src/main/java/com/zy/crm/common/model/SettleDto.java @@ -51,7 +51,7 @@ list.add(dto); break; case 3: - dto.setTitle("鍞墠缁勯暱瀹℃牳"); + dto.setTitle("鍞墠瀹℃牳"); list.add(dto); break; case 4: diff --git a/src/main/java/com/zy/crm/manager/controller/PlanController.java b/src/main/java/com/zy/crm/manager/controller/PlanController.java index 6516449..95381bb 100644 --- a/src/main/java/com/zy/crm/manager/controller/PlanController.java +++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java @@ -174,7 +174,7 @@ @PostMapping(value = "/plan/approval/auth") @ManagerAuth public R approval(@RequestParam Long planId, - @RequestParam(required = false) Long planner){ + @RequestParam(required = false) Long plannerId){ Plan plan = planService.selectById(planId); assert plan != null; @@ -236,6 +236,63 @@ } break; case 2: + // 鏌ユ壘瑙勫垝缁勯暱 + PlanType planType = planTypeService.selectById(plan.getPlanType()); + User planLeader = planTypeService.findPlanLeader(planType); + if (Cools.isEmpty(planLeader)) { + throw new CoolException("鏈煡鎵惧埌瑙勫垝缁勯暱锛岃鑱旂郴绠$悊鍛�"); + } + if (Cools.isEmpty(planLeader)) { + throw new CoolException("鏈煡鎵惧埌瑙勫垝缁勯暱锛岃鑱旂郴绠$悊鍛�"); + } + if (!getUserId().equals(planLeader.getId())) { + return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�"); + } + if (Cools.isEmpty(plannerId)) { + return R.error("鎸囧畾瑙勫垝鍛樹笉鑳戒负绌�"); + } + User planner = userService.selectById(plannerId); + // 淇敼 settle 姝ラ鏁版嵁 + List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); + for (SettleDto dto : list) { + switch (dto.getStep()) { + case 2: + dto.setCurr(Boolean.FALSE); + break; + case 3: + dto.setCurr(Boolean.TRUE); + dto.setUserId(planLeader.getId()); + dto.setUsername(planLeader.getNickname()); + dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); + dto.setTime(DateUtils.convert(new Date())); + break; + case 4: + dto.setUserId(planner.getId()); + dto.setUsername(planner.getNickname()); + break; + default: + break; + } + } + plan.setSettleMsg(JSON.toJSONString(list)); + // 淇敼瑙勫垝鍗曠姸鎬� + plan.setSettle(3); // 瑙勫垝鍛樺緟瀹� + plan.setPlanner(planner.getId()); + plan.setUpdateBy(getUserId()); + plan.setUpdateTime(new Date()); + + if (!planService.updateById(plan)) { + throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�"); + } + + // 娣诲姞瑙勫垝缁勯暱璺熻繘浜� + PlanFoll planFoll = new PlanFoll(); + planFoll.setPlanId(planner.getId()); + planFoll.setUserId(planLeader.getId()); + if (!planFollService.insert(planFoll)) { + throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�"); + } + break; case 3: break; @@ -244,7 +301,7 @@ default: return R.error(); } - return R.ok(); + return R.ok("瀹℃壒鎴愬姛"); } @PostMapping(value = "/plan/planner/list/auth") diff --git a/src/main/java/com/zy/crm/manager/entity/Plan.java b/src/main/java/com/zy/crm/manager/entity/Plan.java index e1c44a0..0514720 100644 --- a/src/main/java/com/zy/crm/manager/entity/Plan.java +++ b/src/main/java/com/zy/crm/manager/entity/Plan.java @@ -176,7 +176,7 @@ /** * 杩涘害 1: 寮�濮� 2: 缁勯暱瀹℃牳 3: 鍞墠缁勯暱瀹℃牳 4: 瑙勫垝鍛樺鏍� 5: 瀹℃壒閫氳繃 */ - @ApiModelProperty(value= "杩涘害 1: 寮�濮� 2: 缁勯暱瀹℃牳 3: 鍞墠缁勯暱瀹℃牳 4: 瑙勫垝鍛樺鏍� 5: 瀹℃壒閫氳繃 ") + @ApiModelProperty(value= "杩涘害 1: 寮�濮� 2: 缁勯暱瀹℃牳 3: 鍞墠瀹℃牳 4: 瑙勫垝鍛樺鏍� 5: 瀹℃壒閫氳繃 ") private Integer settle; /** @@ -345,7 +345,7 @@ case 2: return "缁勯暱瀹℃牳"; case 3: - return "鍞墠缁勯暱瀹℃牳"; + return "鍞墠瀹℃牳"; case 4: return "瑙勫垝鍛樺鏍�"; case 5: diff --git a/src/main/webapp/views/plan/plan.html b/src/main/webapp/views/plan/plan.html index bcf0f08..3ce96aa 100644 --- a/src/main/webapp/views/plan/plan.html +++ b/src/main/webapp/views/plan/plan.html @@ -104,7 +104,7 @@ </div> <script type="text/html" id="operate"> - {{# if (d.settle == 1 || d.settle == 2) { }} + {{# if (d.settle == 1 || d.settle == 2 || d.settle == 3) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">瀹℃壒</a> {{# } }} <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a> -- Gitblit v1.9.1