From fabb29dfd7fdcc19727c459c8ef309a86d73ed09 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 17 十月 2023 10:37:14 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/controller/PlanController.java | 92 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 85 insertions(+), 7 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 8fd9277..f90a914 100644 --- a/src/main/java/com/zy/crm/manager/controller/PlanController.java +++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java @@ -33,6 +33,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; +import javax.xml.crypto.Data; import java.io.IOException; import java.io.InputStream; import java.util.*; @@ -54,6 +55,11 @@ private OrderService orderService; @Autowired private SmsCodeService smsCodeService; + @Autowired + private ProcessPermissionsService processPermissionsService; + + String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "; + @GetMapping(value = "/plan/{id}/auth") @ManagerAuth @@ -139,6 +145,7 @@ plan.setUpdateBy(getUserId()); plan.setUpdateTime(now); plan.setStatus(0); + plan.setStep(1); plan.setForm(JSON.toJSONString(param)); // 鑷畾涔夎〃鍗曞唴瀹� plan.setSettle(1); // 1.寮�濮� @@ -151,6 +158,8 @@ PlanType planType = planTypeService.selectById(plan.getPlanType()); User planLeader = planTypeService.findPlanLeader(planType); plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader))); + + plan.setDirector(planLeader.getId()); if (!planService.insert(plan)) { throw new CoolException("淇濇寔澶辫触锛岃閲嶈瘯"); @@ -416,6 +425,7 @@ if (Cools.isEmpty(plannerId)) { return R.error("鎸囧畾瑙勫垝鍛樹笉鑳戒负绌�"); } + plan.setDirector(plannerId); User planner = userService.selectById(plannerId); // 淇敼 settle 姝ラ鏁版嵁 List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); @@ -426,7 +436,11 @@ break; case 2: dto.setCurr(Boolean.TRUE); - dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); + if (Cools.isEmpty(dto.getMsg())){ + dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); + }else { + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); + } dto.setTime(DateUtils.convert(new Date())); break; case 3: @@ -471,6 +485,8 @@ } // 涓氬姟鍛� User salesman = userService.selectById(plan.getUserId()); + plan.setDirector(salesman.getId()); + // 淇敼 settle 姝ラ鏁版嵁 List<SettleDto> list0 = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); for (SettleDto dto : list0) { @@ -480,7 +496,11 @@ break; case 3: dto.setCurr(Boolean.TRUE); - dto.setMsg("瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); + if (Cools.isEmpty(dto.getMsg())){ + dto.setMsg("瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); + }else { + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); + } dto.setTime(DateUtils.convert(new Date())); break; case 4: @@ -516,7 +536,11 @@ break; case 4: dto.setCurr(Boolean.TRUE); - dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); + if (Cools.isEmpty(dto.getMsg())){ + dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); + }else { + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); + } dto.setTime(DateUtils.convert(new Date())); break; default: @@ -538,6 +562,48 @@ return R.error(); } return R.ok("瀹℃壒鎴愬姛"); + } + + @PostMapping(value = "/plan/approvalEnd/auth") + @ManagerAuth(memo = "鎷掔粷鐢宠鍗�") + public R approvalEnd(@RequestParam Long planId, + @RequestParam(required = false) Long plannerId) { + Plan plan = planService.selectById(planId); + Date now = new Date(); + Long directorId = plan.getDirector(); + User director = userService.selectById(directorId); + if (!director.getId().equals(getUserId())){ + return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�"); + } + List<SettleDto> planDtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); + 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()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); + } + sign = false; + } + if (sign){ + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); + } + + planDtoList.add(dto); + } + plan.setStatus(0); + plan.setStep(1); + plan.setSettle(1); + plan.setSettleMsg(JSON.toJSONString(planDtoList)); + plan.setUpdateBy(getUserId()); + plan.setUpdateTime(now); + planService.updateById(plan); + return R.ok("鍥為��鎴愬姛"); } @PostMapping(value = "/plan/planner/list/auth") @@ -613,12 +679,24 @@ wrapper.like("name", condition); wrapper.eq("status",1); - int type =1; - if (getUser().getNickname().equals("鏉庝笘璞�3绾�")){ - type=2; + + ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "1-1"));//2锛氭牳浠锋祦绋� + User manager1 = userService.selectById(processPermissions1.getUserId()); // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜� + + ProcessPermissions processPermissions2 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "1-2"));//2锛氭牳浠锋祦绋� + User manager2 = userService.selectById(processPermissions2.getUserId()); // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜� + + + int type =0; + if (getUserId().equals(manager1.getId())){ + type=1;//(璐ф灦) + }else if (getUserId().equals(manager2.getId())){ + type = 2;//(闆嗘垚) + }else { + return R.error("浣犱笉鏄牳浠峰憳,鏃犳潈鎺ヤ换鍔�"); } - List<Long> typeList = new ArrayList<>(); + List<Long> typeList = new ArrayList<>(); List<PlanType> planTypes = planTypeService.selectList(new EntityWrapper<PlanType>().eq("type", type)); for (PlanType planType : planTypes){ typeList.add(planType.getId()); -- Gitblit v1.9.1