From d12182e55e566fe3d9e64a8d9dee7931600dda00 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 31 十月 2023 09:49:33 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java | 191 +++++++++++++++++++++++++++++++---------------- 1 files changed, 124 insertions(+), 67 deletions(-) diff --git a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java index b5e5cbf..d7d7733 100644 --- a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java +++ b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java @@ -56,6 +56,8 @@ @Autowired private UserService userService; + String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "; + @RequestMapping(value = "/priOnline2/{id}/auth") @ManagerAuth public R get(@PathVariable("id") String id) { @@ -63,7 +65,7 @@ assert priOnline2 != null; JSONObject resultObj = JSON.parseObject(JSON.toJSONString(priOnline2)); // 姝ラ鏉$浉鍏� - resultObj.put("step", priOnline2.getSettle() == 4 ? 0 : priOnline2.getSettle() + 1); + resultObj.put("step", priOnline2.getSettle() == 3 ? 0 : priOnline2.getSettle() + 1); return R.ok().add(resultObj); } @@ -178,21 +180,20 @@ // }catch (Exception e){ // manager = getUser(); // } - String node="2-"; - PlanType planType = planTypeService.selectById(plan.getPlanType()); - node = node+planType.getType(); - - ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", node));//2锛氭姤浠锋祦绋� - User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜� +// String node="2-"; +// PlanType planType = planTypeService.selectById(plan.getPlanType()); +// node = node+planType.getType(); +// ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", node));//2锛氭牳浠锋祦绋� +// User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鏍镐环娴佺▼鑺傜偣2纭浜� // 鑾峰彇涓氬姟鍛� List<String> initNames = new ArrayList<>(); initNames.add("鎺ュ彇鏍镐环浠诲姟"); initNames.add("瀹屾垚鏍镐环"); - initNames.add("缁忕悊瀹℃牳"); +// initNames.add("缁忕悊瀹℃牳"); initNames.add("涓氬姟鍛樼‘璁�"); - priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.initSalesPricing(manager,getUser(),userUp,initNames,3))); + priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.initSalesPricingPriOnline2(getUser(),userUp,initNames,2))); //璁剧疆椤圭洰娴佺▼ plan.setStep(2); @@ -407,7 +408,7 @@ map.put("id", priOnline2.getId()); // map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getPlanId$() + "/" + priOnline2.getMemberId$()); // map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getTemplateName()); - map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getPlanId$() + "/" + priOnline2.getMemberId$() + "/" + priOnline2.getTemplateName()); + map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getPlanId$() + "/" + priOnline2.getUser$() + "/" + priOnline2.getTemplateName()); result.add(map); } @@ -433,6 +434,48 @@ return R.ok().add(vos); } + @PostMapping(value = "/priOnline2/approvalEnd/auth") + @ManagerAuth(memo = "鎷掔粷鐢宠鍗�") + public R approvalEnd(@RequestParam Long priOnlineId, + @RequestParam(required = false) Long plannerId) { + PriOnline2 priOnline2 = priOnline2Service.selectById(priOnlineId); + Date now = new Date(); + Long memberId = priOnline2.getMemberId(); + User member = userService.selectById(memberId); + if (!member.getId().equals(getUserId())){ + return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�"); + } + List<SettleDto> planDtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); + List<SettleDto> planDtoList = new ArrayList<>(); + boolean sign = true; + for (SettleDto dto : planDtos) { + if (dto.getStep().equals(1)){ + priOnline2.setMemberId(dto.getUserId()); + } + if (sign && dto.getUserId().equals(memberId) && priOnline2.getSettle()+1==dto.getStep()){ + if (Cools.isEmpty(dto.getMsg())){ + dto.setMsg(DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒"); + }else { + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒"); + } + sign = false; + } + if (sign){ + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒"); + } + + planDtoList.add(dto); + } + priOnline2.setStatus(0); + priOnline2.setSettle(0); + priOnline2.setUpdateUserId(getUserId()); + priOnline2.setUpdateTime(now); + + priOnline2.setSettleMsg(JSON.toJSONString(planDtoList)); + priOnline2Service.updateById(priOnline2); + return R.ok("鍥為��鎴愬姛"); + } + @PostMapping(value = "/priOnline2/approval/auth") @ManagerAuth public R approvalBusinessTrip(@RequestParam Long priOnlineId, @@ -443,16 +486,18 @@ switch (priOnline2.getSettle()) { case 0: // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜� - Plan plan1 = planService.selectById(priOnline2.getItemId()); - PlanType planType1 = planTypeService.selectById(plan1.getPlanType()); + User user = userService.selectById(priOnline2.getMemberId()); - ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType1.getType()));//2锛氭姤浠锋祦绋� - User manager1 = userService.selectById(processPermissions1.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜� + Plan plan1 = planService.selectById(priOnline2.getItemId()); +// PlanType planType1 = planTypeService.selectById(plan1.getPlanType()); +// +// ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType1.getType()));//2锛氭牳浠锋祦绋� +// User manager1 = userService.selectById(processPermissions1.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜� if (Cools.isEmpty(getUser())) { return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�"); } - if (!getUserId().equals(getUser().getId())) { + if (!getUserId().equals(user.getId())) { return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�"); } // 淇敼 settle 姝ラ鏁版嵁 @@ -464,7 +509,11 @@ break; case 1: dto.setCurr(Boolean.TRUE); - dto.setMsg(getUser().getNickname() + "鎻愪氦瀹屾垚"); + if (Cools.isEmpty(dto.getMsg())){ + dto.setMsg(user.getNickname() + "鎻愪氦瀹屾垚"); + }else { + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + user.getNickname() + "鎻愪氦瀹屾垚"); + } dto.setTime(DateUtils.convert(now)); break; default: @@ -476,59 +525,63 @@ priOnline2.setSettle(1); priOnline2.setUpdateUserId(getUserId()); priOnline2.setUpdateTime(now); - priOnline2.setMemberId(manager1.getId()); + priOnline2.setMemberId(plan1.getUserId()); if (!priOnline2Service.updateById(priOnline2)) { throw new CoolException("鎻愪氦澶辫触锛岃鑱旂郴绠$悊鍛�"); } break; - case 1: - // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜� - Plan plan = planService.selectById(priOnline2.getItemId()); - PlanType planType = planTypeService.selectById(plan.getPlanType()); - - ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType.getType()));//2锛氭姤浠锋祦绋� - User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜� - -// User manager = new User(); -// try{ -// manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗 -// }catch (Exception e){ -// manager = user; +// case 1: +// // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜� +// Plan plan = planService.selectById(priOnline2.getItemId()); +// PlanType planType = planTypeService.selectById(plan.getPlanType()); +// +// ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType.getType()));//2锛氭姤浠锋祦绋� +// User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜� +// +//// User manager = new User(); +//// try{ +//// manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗 +//// }catch (Exception e){ +//// manager = user; +//// } +// if (manager.getId().equals(getUserId())) { +// +// // 淇敼 settle 姝ラ鏁版嵁 +// List<SettleDto> list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); +// for (SettleDto dto : list) { +// switch (dto.getStep()) { +// case 1: +// dto.setCurr(Boolean.FALSE); +// break; +// case 2: +// dto.setCurr(Boolean.TRUE); +// if (Cools.isEmpty(dto.getMsg())){ +// dto.setMsg(manager.getNickname() + "瀹℃壒閫氳繃"); +// }else { +// dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + manager.getNickname() + "瀹℃壒閫氳繃"); +// } +// dto.setTime(DateUtils.convert(now)); +// break; +// default: +// break; +// } +// } +// priOnline2.setSettleMsg(JSON.toJSONString(list)); +// +// // 淇敼瑙勫垝鍗曠姸鎬� +// priOnline2.setSettle(2); // 鐢宠閫氳繃 +// priOnline2.setUpdateTime(now); +// priOnline2.setUpdateUserId(getUserId()); +// priOnline2.setMemberId(plan.getUserId()); +// if (!priOnline2Service.updateById(priOnline2)) { +// throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�"); +// } +// } else { +// return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄愶紒锛侊紒"); // } - if (manager.getId().equals(getUserId())) { - - // 淇敼 settle 姝ラ鏁版嵁 - List<SettleDto> list = JSON.parseArray(priOnline2.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(now)); - break; - default: - break; - } - } - priOnline2.setSettleMsg(JSON.toJSONString(list)); - - // 淇敼瑙勫垝鍗曠姸鎬� - priOnline2.setSettle(2); // 鐢宠閫氳繃 - priOnline2.setUpdateTime(now); - priOnline2.setUpdateUserId(getUserId()); - priOnline2.setMemberId(plan.getUserId()); - if (!priOnline2Service.updateById(priOnline2)) { - throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�"); - } - } else { - return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄愶紒锛侊紒"); - } - break; - case 2: +// break; + case 1: // 涓氬姟鍛� User salesman0 = userService.selectById(priOnline2.getUserId()); if (!getUserId().equals(salesman0.getId())) { @@ -538,12 +591,16 @@ List<SettleDto> list2 = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); for (SettleDto dto : list2) { switch (dto.getStep()) { - case 2: + case 1: dto.setCurr(Boolean.TRUE); break; - case 3: + case 2: 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: @@ -552,7 +609,7 @@ } priOnline2.setSettleMsg(JSON.toJSONString(list2)); // 淇敼瑙勫垝鍗曠姸鎬� - priOnline2.setSettle(3); // 瀹℃壒閫氳繃 + priOnline2.setSettle(2); // 瀹℃壒閫氳繃 priOnline2.setStatus(1); priOnline2.setUpdateTime(new Date()); priOnline2.setUpdateUserId(getUserId()); -- Gitblit v1.9.1