From 3fc935a8b53708a4402e24bf4086741f684bbd35 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期四, 14 九月 2023 16:17:34 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/crm/manager/controller/CstmrController.java |    3 
 src/main/java/com/zy/crm/manager/controller/PlanController.java  |  144 ++++++++++++++++++-----------------
 src/main/java/com/zy/crm/common/model/SettleDto.java             |   20 ++--
 src/main/webapp/views/plan/plan_more.html                        |    2 
 src/main/webapp/views/plan/plan.html                             |   12 +-
 src/main/java/com/zy/crm/manager/entity/Plan.java                |    4 
 6 files changed, 96 insertions(+), 89 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 3b57330..8f3ecad 100644
--- a/src/main/java/com/zy/crm/common/model/SettleDto.java
+++ b/src/main/java/com/zy/crm/common/model/SettleDto.java
@@ -30,7 +30,7 @@
 
     private Boolean curr;
 
-    public static List<SettleDto> init(Plan plan, User manager) {
+    public static List<SettleDto> init(Plan plan, User manager,User planLeader) {
         List<SettleDto> list = new ArrayList<>();
         for (int i = 1; i < 6; i++) {
             SettleDto dto = new SettleDto();
@@ -45,21 +45,23 @@
                     dto.setCurr(Boolean.TRUE);
                     list.add(dto);
                     break;
+//                case 2:
+//                    dto.setTitle("缁勯暱瀹℃牳");
+//                    dto.setUserId(manager.getId());
+//                    dto.setUsername(manager.getNickname());
+//                    list.add(dto);
+//                    break;
                 case 2:
-                    dto.setTitle("缁勯暱瀹℃牳");
-                    dto.setUserId(manager.getId());
-                    dto.setUsername(manager.getNickname());
+                    dto.setTitle("鍞墠瀹℃牳");
+                    dto.setUserId(planLeader.getId());
+                    dto.setUsername(planLeader.getNickname());
                     list.add(dto);
                     break;
                 case 3:
-                    dto.setTitle("鍞墠瀹℃牳");
-                    list.add(dto);
-                    break;
-                case 4:
                     dto.setTitle("瑙勫垝鍛樺鏍�");
                     list.add(dto);
                     break;
-                case 5:
+                case 4:
                     dto.setTitle("瀹℃壒閫氳繃");
                     dto.setUserId(plan.getUserId());
                     dto.setUsername(plan.getUserId$());
diff --git a/src/main/java/com/zy/crm/manager/controller/CstmrController.java b/src/main/java/com/zy/crm/manager/controller/CstmrController.java
index 69d029b..8694fa1 100644
--- a/src/main/java/com/zy/crm/manager/controller/CstmrController.java
+++ b/src/main/java/com/zy/crm/manager/controller/CstmrController.java
@@ -119,6 +119,9 @@
         if (cstmrService.selectByUuid(hostId, cstmr.getUuid()) != null) {
             throw new CoolException("瀹㈡埛宸插瓨鍦�");
         }
+        if (cstmrService.selectByName(hostId, cstmr.getName()) != null) {
+            throw new CoolException("瀹㈡埛宸插瓨鍦�");
+        }
         Cstmr cstmr1 = cstmrService.selectByName(hostId, cstmr.getName());
         if (cstmr1!=null){
             throw new CoolException("璇ュ鎴蜂俊鎭凡瀛樺湪锛屼笟鍔″憳鏄�:"+cstmr1.getDirector$());
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 41b28cf..fee04bc 100644
--- a/src/main/java/com/zy/crm/manager/controller/PlanController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -78,7 +78,7 @@
         }
         resultObj.put("formHtml", planType.getHtml());
         // 姝ラ鏉$浉鍏�
-        resultObj.put("step", plan.getSettle() == 5 ? 0 : plan.getSettle() + 1);
+        resultObj.put("step", plan.getSettle() == 4 ? 0 : plan.getSettle() + 1);
 
         return R.ok().add(resultObj);
     }
@@ -140,7 +140,9 @@
         plan.setForm(JSON.toJSONString(param));     // 鑷畾涔夎〃鍗曞唴瀹�
         plan.setSettle(1);  // 1.寮�濮�
         User manager = userService.getDeptManager(hostId, getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
-        plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager)));
+        PlanType planType = planTypeService.selectById(plan.getPlanType());
+        User planLeader = planTypeService.findPlanLeader(planType);
+        plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader)));
 
         if (!planService.insert(plan)) {
             throw new CoolException("淇濇寔澶辫触锛岃閲嶈瘯");
@@ -329,63 +331,63 @@
         assert plan != null;
 
         switch (plan.getSettle()) {
+//            case 1:
+//                // 鏈粍缁勯暱瀹℃牳
+//                User user = userService.selectById(plan.getUserId());
+//                User manager = userService.getDeptManager(getHostId(), user.getDeptId());
+//                if (manager.getId().equals(getUserId())) {
+//
+//                    // 鏌ユ壘瑙勫垝缁勯暱
+//                    PlanType planType = planTypeService.selectById(plan.getPlanType());
+//                    User planLeader = planTypeService.findPlanLeader(planType);
+//                    if (Cools.isEmpty(planLeader)) {
+//                        throw new CoolException("鏈煡鎵惧埌瑙勫垝缁勯暱锛岃鑱旂郴绠$悊鍛�");
+//                    }
+//
+//                    // 淇敼 settle 姝ラ鏁版嵁
+//                    List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
+//                    for (SettleDto dto : list) {
+//                        switch (dto.getStep()) {
+//                            case 1:
+//                                dto.setCurr(Boolean.FALSE);
+//                                break;
+//                            case 2:
+//                                dto.setCurr(Boolean.TRUE);
+//                                dto.setMsg("鏈粍缁勯暱" + manager.getNickname() + "瀹℃壒閫氳繃");
+//                                dto.setTime(DateUtils.convert(new Date()));
+//                                break;
+//                            case 3:
+//                                dto.setUserId(planLeader.getId());
+//                                dto.setUsername(planLeader.getNickname());
+//                                break;
+//                            default:
+//                                break;
+//                        }
+//                    }
+//                    plan.setSettleMsg(JSON.toJSONString(list));
+//
+//                    // 淇敼瑙勫垝鍗曠姸鎬�
+//                    plan.setSettle(2);  // 瑙勫垝缁勯暱寰呭
+//                    plan.setUpdateBy(getUserId());
+//                    plan.setUpdateTime(new Date());
+//
+//                    if (!planService.updateById(plan)) {
+//                        throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
+//                    }
+//
+//                    // 娣诲姞瑙勫垝缁勯暱璺熻繘浜�
+//                    PlanFoll planFoll = new PlanFoll();
+//                    planFoll.setPlanId(plan.getId());
+//                    planFoll.setUserId(planLeader.getId());
+//                    if (!planFollService.insert(planFoll)) {
+//                        throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
+//                    }
+//
+//                } else {
+//                    return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�");
+//                }
+//                break;
             case 1:
-                // 鏈粍缁勯暱瀹℃牳
-                User user = userService.selectById(plan.getUserId());
-                User manager = userService.getDeptManager(getHostId(), user.getDeptId());
-                if (manager.getId().equals(getUserId())) {
-
-                    // 鏌ユ壘瑙勫垝缁勯暱
-                    PlanType planType = planTypeService.selectById(plan.getPlanType());
-                    User planLeader = planTypeService.findPlanLeader(planType);
-                    if (Cools.isEmpty(planLeader)) {
-                        throw new CoolException("鏈煡鎵惧埌瑙勫垝缁勯暱锛岃鑱旂郴绠$悊鍛�");
-                    }
-
-                    // 淇敼 settle 姝ラ鏁版嵁
-                    List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
-                    for (SettleDto dto : list) {
-                        switch (dto.getStep()) {
-                            case 1:
-                                dto.setCurr(Boolean.FALSE);
-                                break;
-                            case 2:
-                                dto.setCurr(Boolean.TRUE);
-                                dto.setMsg("鏈粍缁勯暱" + manager.getNickname() + "瀹℃壒閫氳繃");
-                                dto.setTime(DateUtils.convert(new Date()));
-                                break;
-                            case 3:
-                                dto.setUserId(planLeader.getId());
-                                dto.setUsername(planLeader.getNickname());
-                                break;
-                            default:
-                                break;
-                        }
-                    }
-                    plan.setSettleMsg(JSON.toJSONString(list));
-
-                    // 淇敼瑙勫垝鍗曠姸鎬�
-                    plan.setSettle(2);  // 瑙勫垝缁勯暱寰呭
-                    plan.setUpdateBy(getUserId());
-                    plan.setUpdateTime(new Date());
-
-                    if (!planService.updateById(plan)) {
-                        throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
-                    }
-
-                    // 娣诲姞瑙勫垝缁勯暱璺熻繘浜�
-                    PlanFoll planFoll = new PlanFoll();
-                    planFoll.setPlanId(plan.getId());
-                    planFoll.setUserId(planLeader.getId());
-                    if (!planFollService.insert(planFoll)) {
-                        throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
-                    }
-
-                } else {
-                    return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�");
-                }
-                break;
-            case 2:
                 // 鏌ユ壘瑙勫垝缁勯暱
                 PlanType planType = planTypeService.selectById(plan.getPlanType());
                 User planLeader = planTypeService.findPlanLeader(planType);
@@ -406,15 +408,15 @@
                 List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
                 for (SettleDto dto : list) {
                     switch (dto.getStep()) {
-                        case 2:
+                        case 1:
                             dto.setCurr(Boolean.FALSE);
                             break;
-                        case 3:
+                        case 2:
                             dto.setCurr(Boolean.TRUE);
                             dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃");
                             dto.setTime(DateUtils.convert(new Date()));
                             break;
-                        case 4:
+                        case 3:
                             dto.setUserId(planner.getId());
                             dto.setUsername(planner.getNickname());
                             break;
@@ -424,7 +426,7 @@
                 }
                 plan.setSettleMsg(JSON.toJSONString(list));
                 // 淇敼瑙勫垝鍗曠姸鎬�
-                plan.setSettle(3);  // 瑙勫垝鍛樺緟瀹�
+                plan.setSettle(2);  // 瑙勫垝鍛樺緟瀹�
                 plan.setPlanner(planner.getId());
                 plan.setUpdateBy(getUserId());
                 plan.setUpdateTime(new Date());
@@ -441,7 +443,7 @@
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                 }
                 break;
-            case 3:
+            case 2:
                 User plannerUser = userService.selectById(plan.getPlanner());
                 if (Cools.isEmpty(plannerUser)) {
                     return R.error("鏈壘鍒拌鍒掑憳");
@@ -455,15 +457,15 @@
                 List<SettleDto> list0 = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
                 for (SettleDto dto : list0) {
                     switch (dto.getStep()) {
-                        case 3:
+                        case 2:
                             dto.setCurr(Boolean.FALSE);
                             break;
-                        case 4:
+                        case 3:
                             dto.setCurr(Boolean.TRUE);
                             dto.setMsg("瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃");
                             dto.setTime(DateUtils.convert(new Date()));
                             break;
-                        case 5:
+                        case 4:
                             dto.setUserId(salesman.getId());
                             dto.setUsername(salesman.getNickname());
                             break;
@@ -473,7 +475,7 @@
                 }
                 plan.setSettleMsg(JSON.toJSONString(list0));
                 // 淇敼瑙勫垝鍗曠姸鎬�
-                plan.setSettle(4);  // 瀹℃壒閫氳繃
+                plan.setSettle(3);  // 瀹℃壒閫氳繃
                 plan.setUpdateBy(getUserId());
                 plan.setUpdateTime(new Date());
 
@@ -481,7 +483,7 @@
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                 }
                 break;
-            case 4:
+            case 3:
                 // 涓氬姟鍛�
                 User salesman0 = userService.selectById(plan.getUserId());
                 if (!getUserId().equals(salesman0.getId())) {
@@ -491,10 +493,10 @@
                 List<SettleDto> list1 = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
                 for (SettleDto dto : list1) {
                     switch (dto.getStep()) {
-                        case 4:
+                        case 3:
                             dto.setCurr(Boolean.TRUE);
                             break;
-                        case 5:
+                        case 4:
                             dto.setCurr(Boolean.TRUE);
                             dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
                             dto.setTime(DateUtils.convert(new Date()));
@@ -505,7 +507,7 @@
                 }
                 plan.setSettleMsg(JSON.toJSONString(list1));
                 // 淇敼瑙勫垝鍗曠姸鎬�
-                plan.setSettle(5);  // 瀹℃壒閫氳繃
+                plan.setSettle(4);  // 瀹℃壒閫氳繃
                 plan.setUpdateBy(getUserId());
                 plan.setUpdateTime(new Date());
 
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 7a4ff33..5189cd6 100644
--- a/src/main/java/com/zy/crm/manager/entity/Plan.java
+++ b/src/main/java/com/zy/crm/manager/entity/Plan.java
@@ -360,9 +360,9 @@
     public String getSettle$(){
         if (null == this.settle){ return null; }
         switch (this.settle){
+//            case 1:
+//                return "绛夊緟缁勯暱瀹℃牳";
             case 1:
-                return "绛夊緟缁勯暱瀹℃牳";
-            case 2:
                 return "绛夊緟鍞墠鍒嗛厤瑙勫垝鍛�";
             case 3:
                 return "绛夊緟瑙勫垝鍛樻彁浜�";
diff --git a/src/main/webapp/views/plan/plan.html b/src/main/webapp/views/plan/plan.html
index 1a108a8..1255c7d 100644
--- a/src/main/webapp/views/plan/plan.html
+++ b/src/main/webapp/views/plan/plan.html
@@ -273,12 +273,12 @@
             <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鍞墠瑙勫垝</blockquote>
             <div class="layui layui-row">
                 <div class="layui-col-md6">
-                    <div class="layui-form-item">
-                        <label class="layui-form-label  layui-form-required">瑙勫垝鍛�: </label>
-                        <div class="layui-input-block">
-                            <input class="layui-input" name="planner$" placeholder="璇疯緭鍏ヨ鍒掑憳"  lay-verify="required">
-                        </div>
-                    </div>
+<!--                    <div class="layui-form-item">-->
+<!--                        <label class="layui-form-label">瑙勫垝鍛�: </label>-->
+<!--                        <div class="layui-input-block">-->
+<!--                            <input class="layui-input" name="planner$" placeholder="璇疯緭鍏ヨ鍒掑憳">-->
+<!--                        </div>-->
+<!--                    </div>-->
                     <div class="layui-form-item">
                         <label class="layui-form-label">鏇存敼鏂规: </label>
                         <div class="layui-input-block">
diff --git a/src/main/webapp/views/plan/plan_more.html b/src/main/webapp/views/plan/plan_more.html
index 0f4afe5..8e85936 100644
--- a/src/main/webapp/views/plan/plan_more.html
+++ b/src/main/webapp/views/plan/plan_more.html
@@ -131,7 +131,7 @@
                             <div class="layui-inline layui-col-md6">
                                 <label class="layui-form-label">瑙勫垝鍛�:</label>
                                 <div class="layui-input-block">
-                                    <input name="planner" class="layui-input" disabled />
+                                    <input name="planner$" class="layui-input" disabled />
                                 </div>
                             </div>
                             <div class="layui-inline layui-col-md6">

--
Gitblit v1.9.1