From 93ef3f2ab542b7b6fe941c30bf56b35e743cf299 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 04 十一月 2023 17:51:39 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/crm/manager/controller/PlanController.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 47 insertions(+), 13 deletions(-)

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 30617da..eb74659 100644
--- a/src/main/java/com/zy/crm/manager/controller/PlanController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -55,6 +55,12 @@
     private OrderService orderService;
     @Autowired
     private SmsCodeService smsCodeService;
+    @Autowired
+    private ProcessPermissionsService processPermissionsService;
+
+    String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
+    Integer PBN = 6;
+
 
     @GetMapping(value = "/plan/{id}/auth")
     @ManagerAuth
@@ -84,10 +90,22 @@
                   @RequestParam(required = false) String condition,
                   @RequestParam(required = false, value = "dept_id") Long deptId,
                   @RequestParam(required = false, value = "user_id") Long userId) {
+        Long director = null;
+        if (deptId==null && userId == null){
+            if (getRole().getId()==3){
+                userId = getUserId();
+            }else if (getRole().getId()==2){
+                deptId = getDeptId();
+                userId = null;
+            }
+            director = getUserId();
+        }
+
         return R.ok(planService.getPage(new Page<>(curr, limit)
                 , getHostId()
                 , deptId == null ? null : String.valueOf(deptId)
-                , userId == null ? getUserId() : userId
+                , userId
+                , director
                 , condition)
         );
     }
@@ -434,7 +452,7 @@
                             if (Cools.isEmpty(dto.getMsg())){
                                 dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃");
                             }else {
-                                dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃");
+                                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃");
                             }
                             dto.setTime(DateUtils.convert(new Date()));
                             break;
@@ -494,7 +512,7 @@
                             if (Cools.isEmpty(dto.getMsg())){
                                 dto.setMsg("瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃");
                             }else {
-                                dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃");
+                                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃");
                             }
                             dto.setTime(DateUtils.convert(new Date()));
                             break;
@@ -534,7 +552,7 @@
                             if (Cools.isEmpty(dto.getMsg())){
                                 dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
                             }else {
-                                dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
+                                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
                             }
                             dto.setTime(DateUtils.convert(new Date()));
                             break;
@@ -574,16 +592,19 @@
         List<SettleDto> planDtoList = new ArrayList<>();
         boolean sign = true;
         for (SettleDto dto : planDtos) {
+            if (dto.getStep().equals(2)){
+                plan.setDirector(dto.getUserId());
+            }
             if (sign && dto.getUserId().equals(directorId) && plan.getSettle()+1==dto.getStep()){
                 if (Cools.isEmpty(dto.getMsg())){
                     dto.setMsg(DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒");
                 }else {
-                    dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒");
+                    dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒");
                 }
                 sign = false;
             }
             if (sign){
-                dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒");
+                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒");
             }
 
             planDtoList.add(dto);
@@ -591,11 +612,9 @@
         plan.setStatus(0);
         plan.setStep(1);
         plan.setSettle(1);
-
-        PlanType planType = planTypeService.selectById(plan.getPlanType());
-        User planLeader = planTypeService.findPlanLeader(planType);
-        plan.setDirector(planLeader.getId());
         plan.setSettleMsg(JSON.toJSONString(planDtoList));
+        plan.setUpdateBy(getUserId());
+        plan.setUpdateTime(now);
         planService.updateById(plan);
         return R.ok("鍥為��鎴愬姛");
     }
@@ -622,6 +641,11 @@
         List<User> users = userService.selectList(new EntityWrapper<User>().eq("dept_id", planLeader.getDeptId()));
         List<KeyValueVo> vos = new ArrayList<>();
         users.forEach(item -> vos.add(new KeyValueVo(String.valueOf(item.getNickname()), item.getId())));
+        if (planType.getType().equals(2)){
+            ProcessPermissions processPermissions= processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 101).eq("process", "1-1"));//2锛氭牳浠锋祦绋�
+            User manager = userService.selectById(processPermissions.getUserId());       // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜�
+            vos.add(new KeyValueVo(String.valueOf(manager.getNickname()), manager.getId()));
+        }
         return R.ok().add(vos);
     }
 
@@ -673,13 +697,23 @@
         wrapper.like("name", condition);
         wrapper.eq("status",1);
 
-        int type =1;
-        if (getUser().getNickname().equals("鏉庝笘璞�2绾�")){
-            type=2;
+        List<ProcessPermissions> processPermissionsList = processPermissionsService.selectList(new EntityWrapper<ProcessPermissions>().eq("process_memo", 4).or().eq("process_memo", 5));//2锛氭牳浠锋祦绋�
+        int type =0;
+        for (ProcessPermissions processPermissions:processPermissionsList){
+            if (getUserId().equals(processPermissions.getUserId())){
+                type=PBN-processPermissions.getProcessMemo();
+                break;
+            }
+        }
+        if (type==0){
+            return R.error("浣犱笉鏄牳浠峰憳,鏃犳潈鎺ヤ换鍔�");
         }
 
         List<Long> typeList = new ArrayList<>();
         List<PlanType> planTypes = planTypeService.selectList(new EntityWrapper<PlanType>().eq("type", type));
+        if (Cools.isEmpty(planTypes) || planTypes.size()==0){
+            return R.ok();
+        }
         for (PlanType planType : planTypes){
             typeList.add(planType.getId());
         }

--
Gitblit v1.9.1