From 13a34d2197b001799ef8f0f09e5b48af2add0926 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期一, 15 四月 2024 09:25:31 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/controller/WeeklyController.java | 172 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 147 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/zy/crm/manager/controller/WeeklyController.java b/src/main/java/com/zy/crm/manager/controller/WeeklyController.java index 5a13521..4b21846 100644 --- a/src/main/java/com/zy/crm/manager/controller/WeeklyController.java +++ b/src/main/java/com/zy/crm/manager/controller/WeeklyController.java @@ -45,14 +45,28 @@ private WeeklyFollService weeklyFollService; @Autowired private SmsCodeService smsCodeService; + @Autowired + private CstmrService cstmrService; String PZH = " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "; - Integer PBN = 6; + Integer PBN = 3; @RequestMapping(value = "/weekly/{id}/auth") @ManagerAuth public R get(@PathVariable("id") String id) { - return R.ok(weeklyService.selectById(String.valueOf(id))); + Weekly weekly = weeklyService.selectById(String.valueOf(id)); + assert weekly != null; + JSONObject resultObj = JSON.parseObject(JSON.toJSONString(weekly)); + if (!Cools.isEmpty(weekly.getForm())) { + JSONObject formObj = JSON.parseObject(weekly.getForm()); + formObj.forEach(resultObj::putIfAbsent); + } + + // 姝ラ鏉$浉鍏� + resultObj.put("step", weekly.getSettle().equals(weekly.getSettleSize()) ? 0 : weekly.getSettle() + 1); + + return R.ok().add(resultObj); +// return R.ok(weeklyService.selectById(String.valueOf(id))); } @RequestMapping(value = "/weekly/list/auth") @@ -103,11 +117,27 @@ @RequestMapping(value = "/weekly/delete/auth") @ManagerAuth - public R delete(@RequestParam(value="ids[]") Long[] ids){ - for (Long id : ids){ - weeklyService.deleteById(id); - } - return R.ok(); + public R delete(@RequestParam() Long[] ids){ + try{ + for (Long id : ids){ + List<WeeklyDailyReality> weeklyDailyRealities = weeklyDailyRealityService.selectList(new EntityWrapper<WeeklyDailyReality>().eq("weekly_id", id)); + for (WeeklyDailyReality weeklyDailyReality:weeklyDailyRealities){ + weeklyDailyRealityService.deleteById(weeklyDailyReality); + } + List<WeeklyDailyPlan> weeklyDailyPlans = weeklyDailyPlanService.selectList(new EntityWrapper<WeeklyDailyPlan>().eq("weekly_id", id)); + for (WeeklyDailyPlan weeklyDailyPlan:weeklyDailyPlans){ + weeklyDailyPlanService.deleteById(weeklyDailyPlan); + } + List<WeeklyFoll> weeklyFolls = weeklyFollService.selectList(new EntityWrapper<WeeklyFoll>().eq("weekly_id", id)); + for (WeeklyFoll weeklyFoll:weeklyFolls){ + weeklyFollService.deleteById(weeklyFoll); + } + weeklyService.deleteById(id); + } + }catch (Exception e){ + throw new CoolException("鍒犻櫎澶辫触锛屽紓甯镐俊鎭細"+e); + } + return R.ok(); } @RequestMapping(value = "/weekly/export/auth") @@ -220,16 +250,33 @@ weekly.setWeeklyNowMonth(TimeCalculatorUtils.WeeklyNowMonthDay(weekly.getStartTime())); weekly.setWeeklyDayMonth(weekly.getWeeklyMonth()+"鏈堢"+weekly.getWeeklyNowMonth()+"鍛�"); - List<User> userList = new ArrayList<>(); - userList.add(getUser()); User manager = new User(); try { manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗 } catch (Exception e) { manager = getUser(); } - userList.add(manager); - weekly.setDirector(manager.getId()); + // 鑾峰彇涓氬姟鍛� + List<String> initNames = new ArrayList<>(); + initNames.add("鍒涘缓浜嗗鎵�"); + initNames.add("涓氬姟鍛樻彁浜�"); + initNames.add("閮ㄩ棬棰嗗瀹℃牳"); + List<User> users = new ArrayList<>(); + users.add(getUser()); + users.add(getUser()); + users.add(manager); +// users.add(getUser()); + weekly.setSettleMsg(JSON.toJSONString(SettleDto.InItFlowPathTwo(users, initNames, users.size()))); + weekly.setSettleSize(users.size()); + weekly.setSettleCurrent(1); + if (users.size() > 1) { + weekly.setDirector(users.get(1).getId()); + } else { + weekly.setDirector(getUserId()); + } + + + weekly.setSettleSize(users.size()); List<Date> dates = TimeCalculatorUtils.WeeklyListDays(dateList);//鑾峰彇鍛ㄤ竴鍒板懆鏃ユ棩鏈� @@ -268,7 +315,7 @@ } try{ - insertWeeklyFoll(userList,weekly.getId()); // 鑷姩娣诲姞璺熻繘浜� + insertWeeklyFoll(users,weekly.getId()); // 鑷姩娣诲姞璺熻繘浜� }catch (Exception e){ log.error("鍛ㄦ姤娣诲姞璺熻繘浜哄紓甯革紝寮傚父淇℃伅1锛�"+e); } @@ -285,10 +332,13 @@ for (User user:userList){ try{ // 鑷姩娣诲姞璺熻繘浜� - WeeklyFoll weeklyFoll = new WeeklyFoll(); - weeklyFoll.setUserId(user.getId()); - weeklyFoll.setWeeklyId(weeklyId); - weeklyFollService.insert(weeklyFoll); + List<WeeklyFoll> weeklyFolls = weeklyFollService.selectList(new EntityWrapper<WeeklyFoll>().eq("weekly_id", weeklyId).eq("user_id", user.getId())); + if (weeklyFolls.size()==0){ + WeeklyFoll weeklyFoll = new WeeklyFoll(); + weeklyFoll.setUserId(user.getId()); + weeklyFoll.setWeeklyId(weeklyId); + weeklyFollService.insert(weeklyFoll); + } }catch (Exception e){ log.error("鍛ㄦ姤娣诲姞璺熻繘浜哄紓甯革紝寮傚父淇℃伅2锛�"+e); continue; @@ -323,23 +373,21 @@ weekly.setUpdateBy(getUserId()); weekly.setUpdateTime(now); - List<User> userList = new ArrayList<>(); - userList.add(getUser()); User manager = new User(); try { manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗 } catch (Exception e) { manager = getUser(); } - userList.add(manager); weekly.setDirector(manager.getId()); // 鑾峰彇涓氬姟鍛� List<String> initNames = new ArrayList<>(); initNames.add("鍒涘缓浜嗗鎵�"); + initNames.add("涓氬姟鍛樻彁浜�"); initNames.add("閮ㄩ棬棰嗗瀹℃牳"); -// initNames.add("涓氬姟鍛樼‘璁�"); List<User> users = new ArrayList<>(); + users.add(getUser()); users.add(getUser()); users.add(manager); // users.add(getUser()); @@ -426,7 +474,7 @@ } try{ - insertWeeklyFoll(userList,weekly.getId()); // 鑷姩娣诲姞璺熻繘浜� + insertWeeklyFoll(users,weekly.getId()); // 鑷姩娣诲姞璺熻繘浜� }catch (Exception e){ log.error("鍛ㄦ姤娣诲姞璺熻繘浜哄紓甯革紝寮傚父淇℃伅1锛�"+e); } @@ -451,8 +499,6 @@ throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDailyPlanList"); } else if (Cools.isEmpty(param.getWeeklyId())){ throw new CoolException("鍙傛暟涓虹┖锛歐eeklyId"); - } else if (Cools.isEmpty(param.getWeeklyType())){ - throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDailyPlanList"); } else if (Cools.isEmpty(param.getType())){ throw new CoolException("鍙傛暟涓虹┖锛歍ype"); } else if (Cools.isEmpty(param.getWeeklyType())){ @@ -549,8 +595,6 @@ throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDailyRealityList"); } else if (Cools.isEmpty(param.getWeeklyId())){ throw new CoolException("鍙傛暟涓虹┖锛歐eeklyId"); - } else if (Cools.isEmpty(param.getWeeklyType())){ - throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDailyPlanList"); } else if (Cools.isEmpty(param.getType())){ throw new CoolException("鍙傛暟涓虹┖锛歍ype"); } else if (Cools.isEmpty(param.getWeeklyType())){ @@ -754,4 +798,82 @@ } return R.ok("鍥為��鎴愬姛"); } + + @RequestMapping(value = "/weekly/from/add/phone/auth") + @ManagerAuth(memo = "鍛ㄨ鍒�/鏃ヨ鍒�/鏃ュ疄闄�") + @Transactional + public R formAddModifyPhone(@RequestBody WeeklyDomainParam param){ + try{ + if (Cools.isEmpty(param)){ + throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDomainParam"); + } else if (Cools.isEmpty(param.getWeeklyDailyRealityList()) || param.getWeeklyDailyRealityList().size()==0){ + throw new CoolException("鍙傛暟涓虹┖锛歐eeklyDailyRealityList"); + } else if (Cools.isEmpty(param.getWeeklyId())){ + throw new CoolException("鍙傛暟涓虹┖锛歐eeklyId"); +// } else if (Cools.isEmpty(param.getType())){ +// throw new CoolException("鍙傛暟涓虹┖锛歍ype"); +// } else if (Cools.isEmpty(param.getWeeklyType())){ +// throw new CoolException("鍙傛暟涓虹┖锛歐eekly"); + } + Date now = new Date(); + Weekly weekly = weeklyService.selectById(param.getWeeklyId()); + weekly.setUpdateBy(getUserId()); + weekly.setUpdateTime(now); + + + List<Date> dateList = new ArrayList<>();//鑾峰彇鍛ㄤ竴涓庡懆鏃ユ棩鏈� + dateList = TimeCalculatorUtils.WeeklyMondayAndSundayNow(weekly.getStartTime()); + + List<Date> dates = TimeCalculatorUtils.WeeklyListDays(dateList);//鑾峰彇鍛ㄤ竴鍒板懆鏃ユ棩鏈� + + try{ + weeklyService.updateById(weekly); + } catch (Exception e) { + log.error("鏇存柊鍛ㄨ鍒掍富琛ㄥけ璐ワ紝寮傚父淇℃伅锛�"+e); + throw new CoolException("鏇存柊鍛ㄨ鍒掍富琛ㄥけ璐�"); + } + + List<CstmrUtilsParam> cstmrUtilsParamList = new ArrayList<>(); + for (WeeklyDailyReality weeklyDailyReality: param.getWeeklyDailyRealityList()){ + Cstmr cstmr = null; + if (!Cools.isEmpty(weeklyDailyReality.getCstmrName())){ + cstmr = cstmrService.selectByName(getHostId(), weeklyDailyReality.getCstmrName()); + if(Cools.isEmpty(cstmr)){ + throw new CoolException("鏈煡璇㈠埌鐢叉柟鍗曚綅锛�"); + }else { + weeklyDailyReality.setCstmrId(cstmr.getId()); + } + } + weeklyDailyReality.setHostId(getHostId()); + weeklyDailyReality.setDeptId(getDeptId()); // 鎵�灞為儴闂� + weeklyDailyReality.setUserId(getUserId()); // 鎵�灞炰汉鍛� + + weeklyDailyReality.setDirector(getUserId()); // 鎵�灞炰汉鍛� + + weeklyDailyReality.setCreateBy(getUserId()); + weeklyDailyReality.setCreateTime(now); + weeklyDailyReality.setUpdateBy(getUserId()); + weeklyDailyReality.setUpdateTime(now); + + weeklyDailyReality.setStatus(weekly.getStatus()); + + weeklyDailyReality.setDailyTime(dates.get(weeklyDailyReality.getWeeklyDay()-1)); + weeklyDailyReality.setWeeklyId(weekly.getId()); + + try{ + weeklyDailyRealityService.insert(weeklyDailyReality); + } catch (Exception e){ + log.error("鏂板鏃ヨ鍒掑け璐�"+e); + throw new CoolException("鏂板鏃ヨ鍒掑け璐�"); + } + + } + + } catch (Exception e){ + log.error("鏇存柊鍛ㄨ鍒掑紓甯革紝寮傚父淇℃伅锛�"+e); + throw new CoolException("鏇存柊鍛ㄨ鍒掑け璐�==>"+e); + } + + return R.ok("鏇存柊鎴愬姛"); + } } -- Gitblit v1.9.1