src/main/java/com/zy/crm/common/model/SettleDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/OrderController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/PlanController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/entity/Plan.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/PlanMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/plan/plan.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/loginSuper.html | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/plan/plan.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/crm/common/model/SettleDto.java
@@ -30,6 +30,9 @@ private Boolean curr; /* * 浓缩 * */ public static List<SettleDto> InItFlowPath(List<User> users, List<String> names, int nodes) { List<SettleDto> list = new ArrayList<>(); for (int i = 0; i < nodes; i++) { @@ -50,6 +53,29 @@ return list; } /* * 浓缩 * */ public static List<SettleDto> InItFlowPathTwo(List<User> users, List<String> names, int nodes) { List<SettleDto> list = new ArrayList<>(); for (int i = 1; i < nodes+1; i++) { SettleDto dto = new SettleDto(); dto.setStep(i); if (i == 1) { dto.setTitle("开始"); dto.setMsg(users.get(i-1).getUsername() + names.get(i-1)); dto.setTime(DateUtils.convert(new Date())); dto.setCurr(Boolean.TRUE); } else { dto.setTitle(names.get(i-1)); } dto.setUserId(users.get(i-1).getId()); dto.setUsername(users.get(i-1).getUsername()); list.add(dto); } return list; } public static List<SettleDto> init(Plan plan, User manager, User planLeader) { List<SettleDto> list = new ArrayList<>(); for (int i = 1; i < 6; i++) { src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -141,6 +141,10 @@ followUp.setUpdateTime(now); followUpService.insert(followUp); } }else { if (Cools.isEmpty(order.getMemoExperience())) { order.setMemoExperience(null); } } order.setMemoExperience(null); @@ -195,23 +199,17 @@ List<SettleDto> priQuoteDtos = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class); List<SettleDto> priQuoteDtoList = new ArrayList<>(); for (SettleDto dto : priQuoteDtos) { switch (dto.getStep()) { case 1: dto.setMsg(dto.getMsg()+" ———————————————————————————————————————————————————————————————————————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+priQuote.getUserId$()); dto.setUserId(priQuote.getUserId()); dto.setUsername(priQuote.getUserId$()); break; case 2: dto.setMsg(dto.getMsg()+" ———————————————————————————————————————————————————————————————————————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人时同步修改负责人经理为:"+manager.getNickname()); dto.setUserId(manager.getId()); dto.setUsername(manager.getNickname()); break; case 4: dto.setUserId(priQuote.getUserId()); dto.setUsername(priQuote.getUserId$()); break; default: break; if (priQuoteDtos.indexOf(dto) == 0) { dto.setMsg(dto.getMsg() + " ———————————————————————————————————————————————————————————————————————————————— " + DateUtils.convert(now) + " 跟踪项目修改负责人为:" + priQuote.getUserId$()); dto.setUserId(priQuote.getUserId()); dto.setUsername(priQuote.getUserId$()); } else if (dto.getStep() == 2) { dto.setMsg(dto.getMsg() + " ———————————————————————————————————————————————————————————————————————————————— " + DateUtils.convert(now) + " 跟踪项目修改负责人时同步修改负责人经理为:" + manager.getNickname()); dto.setUserId(manager.getId()); dto.setUsername(manager.getNickname()); } else if (dto.getStep() == 4) { dto.setUserId(priQuote.getUserId()); dto.setUsername(priQuote.getUserId$()); } priQuoteDtoList.add(dto); } @@ -235,9 +233,9 @@ List<SettleDto> priOnline2Dtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); List<SettleDto> priOnline2DtoList = new ArrayList<>(); for (SettleDto dto : priOnline2Dtos) { if (dto.getStep() == 0) { if (priOnline2Dtos.indexOf(dto) == 0) { dto.setMsg(dto.getMsg() + " ———————————————————————————————————————————————————————————————————————————————— " + DateUtils.convert(now) + " 跟踪项目修改负责人为:" + priOnline2.getUser$()); } else if (dto.getStep().equals(priOnline2.getSettleSize())) { } else if (priOnline2Dtos.indexOf(dto) == priOnline2Dtos.size()-1) { dto.setUserId(priOnline2.getUserId()); dto.setUsername(priOnline2.getUser$()); } @@ -265,18 +263,13 @@ List<SettleDto> planDtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); List<SettleDto> planDtoList = new ArrayList<>(); for (SettleDto dto : planDtos) { switch (dto.getStep()) { case 1: dto.setMsg(dto.getMsg()+" ——————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+plan.getUserId$()); dto.setUserId(plan.getUserId()); dto.setUsername(plan.getUserId$()); break; case 4: dto.setUserId(plan.getUserId()); dto.setUsername(plan.getUserId$()); break; default: break; if (planDtos.indexOf(dto) == 0) { dto.setMsg(dto.getMsg() + " ——————————————— " + DateUtils.convert(now) + " 跟踪项目修改负责人为:" + plan.getUserId$()); dto.setUserId(plan.getUserId()); dto.setUsername(plan.getUserId$()); } else if (dto.getStep().equals(plan.getSettleSize())) { dto.setUserId(plan.getUserId()); dto.setUsername(plan.getUserId$()); } planDtoList.add(dto); } src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -12,7 +12,6 @@ import com.zy.crm.common.entity.PhoneCodeTypeParam; import com.zy.crm.common.model.SettleDto; import com.zy.crm.common.service.OssService; import com.zy.crm.common.utils.FileSaveExampleUtil; import com.zy.crm.common.web.BaseController; import com.zy.crm.manager.controller.result.FollowerTableVo; import com.zy.crm.manager.entity.*; @@ -76,7 +75,7 @@ } resultObj.put("formHtml", planType.getHtml()); // 步骤条相关 resultObj.put("step", plan.getSettle() == 4 ? 0 : plan.getSettle() + 1); resultObj.put("step", plan.getSettle().equals(plan.getSettleSize()) ? 0 : plan.getSettle() + 1); return R.ok().add(resultObj); } @@ -177,12 +176,12 @@ plan.setForm(JSON.toJSONString(param)); // 自定义表单内容 plan.setSettle(1); // 1.开始 User manager = new User(); try{ manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 获取部门领导 }catch (Exception e){ manager = getUser(); } // User manager = new User(); // try{ // manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 获取部门领导 // }catch (Exception e){ // manager = getUser(); // } PlanType planType = planTypeService.selectById(plan.getPlanType()); if (planType.getType().equals(2)) { plan.setStatus2(0); @@ -190,9 +189,30 @@ plan.setStatus2(10); } User planLeader = planTypeService.findPlanLeader(planType); plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader))); plan.setDirector(planLeader.getId()); // 获取业务员 List<String> initNames = new ArrayList<>(); initNames.add("创建了审批"); if (!planType.getFlag().equals("增补")){ initNames.add("售前审核"); initNames.add("规划员审核"); } initNames.add("业务员确认"); List<User> users = new ArrayList<>(); users.add(getUser()); if (!planType.getFlag().equals("增补")){ users.add(planLeader); users.add(new User()); } users.add(getUser()); // plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader))); plan.setSettleMsg(JSON.toJSONString(SettleDto.InItFlowPathTwo(users, initNames, users.size()))); plan.setSettleSize(users.size()); if (users.size()>1){ plan.setDirector(users.get(1).getId()); }else { plan.setDirector(getUserId()); } if (!planService.insert(plan)) { throw new CoolException("保持失败,请重试"); @@ -218,6 +238,9 @@ @Transactional public R assistantPlanAdd(@RequestParam Long hostPlanId) { Plan hostPlan = planService.selectById(hostPlanId); if (!getUserId().equals(hostPlan.getUserId())){ return R.error("请联系业务员操作"); } if (hostPlan.getAssistantHostSign()!=0){ return R.error("此规划单不需要创建副流程"); } @@ -270,7 +293,25 @@ } PlanType planType = new PlanType(hostPlan.getHostId(),1);//1:货架 User planLeader = planTypeService.findPlanLeader(planType); plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader))); // 获取业务员 List<String> initNames = new ArrayList<>(); initNames.add("创建了审批"); initNames.add("售前审核"); initNames.add("规划员审核"); initNames.add("业务员确认"); List<User> users = new ArrayList<>(); users.add(getUser()); users.add(planLeader); users.add(new User()); users.add(getUser()); // plan.setSettleMsg(JSON.toJSONString(SettleDto.init(plan, manager, planLeader))); plan.setSettleMsg(JSON.toJSONString(SettleDto.InItFlowPathTwo(users, initNames, users.size()))); plan.setSettleSize(users.size()); if (users.size()>1){ plan.setDirector(users.get(1).getId()); }else { plan.setDirector(getUserId()); } plan.setDirector(planLeader.getId()); @@ -432,228 +473,88 @@ @RequestParam(required = false) Long plannerId){ Plan plan = planService.selectById(planId); assert plan != null; User plannerUser = new User(); Long nextUserId = getUserId(); User director = userService.selectById(plan.getDirector()); switch (plan.getSettle()) { // case 1: // // 本组组长审核 // User user = userService.selectById(plan.getUserId()); // User manager = new User(); // try{ // manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 获取部门领导 // }catch (Exception e){ // manager = user; // } // 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 planLeader = userService.selectById(plan.getDirector()); if (Cools.isEmpty(planLeader)) { throw new CoolException("未查找到规划组长,请联系管理员"); } if (Cools.isEmpty(planLeader)) { throw new CoolException("未查找到规划组长,请联系管理员"); } if (!getUserId().equals(planLeader.getId())) { return R.error("抱歉,您没有审核的权限"); } 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); 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("售前组长" + planLeader.getNickname() + "审批通过"); }else { dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"售前组长" + planLeader.getNickname() + "审批通过"); } dto.setTime(DateUtils.convert(new Date())); break; case 3: dto.setUserId(planner.getId()); dto.setUsername(planner.getNickname()); break; default: break; } } plan.setSettleMsg(JSON.toJSONString(list)); // 修改规划单状态 plan.setSettle(2); // 规划员待审 plan.setPlanner(planner.getId()); plan.setUpdateBy(getUserId()); plan.setUpdateTime(new Date()); if (!planService.updateById(plan)) { throw new CoolException("审核失败,请联系管理员"); } // 添加规划员跟进人 PlanFoll planFoll = new PlanFoll(); planFoll.setPlanId(plan.getId()); planFoll.setUserId(planner.getId()); if (!planFollService.insert(planFoll)) { throw new CoolException("审核失败,请联系管理员"); } if (!smsCodeService.sendSmsCodeText(planner.getMobile(), PhoneCodeTypeParam.ALIYUN_M6F3C81FE3)) { return R.ok("审核成功但短信发送失败!"); } break; case 2: User plannerUser = userService.selectById(plan.getPlanner()); if (Cools.isEmpty(plannerUser)) { return R.error("未找到规划员"); } if (!getUserId().equals(plannerUser.getId())) { return R.error("抱歉,您没有审核的权限"); } // 业务员 User salesman = userService.selectById(plan.getUserId()); plan.setDirector(salesman.getId()); // 修改 settle 步骤数据 List<SettleDto> list0 = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); for (SettleDto dto : list0) { switch (dto.getStep()) { case 2: dto.setCurr(Boolean.FALSE); break; case 3: dto.setCurr(Boolean.TRUE); 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: dto.setUserId(salesman.getId()); dto.setUsername(salesman.getNickname()); break; default: break; } } plan.setSettleMsg(JSON.toJSONString(list0)); // 修改规划单状态 plan.setSettle(3); // 审批通过 plan.setUpdateBy(getUserId()); plan.setUpdateTime(new Date()); if (!planService.updateById(plan)) { throw new CoolException("审核失败,请联系管理员"); } if (!smsCodeService.sendSmsCodeText(salesman.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) { return R.ok("审核成功但短信发送失败!"); } break; case 3: // 业务员 User salesman0 = userService.selectById(plan.getUserId()); if (!getUserId().equals(salesman0.getId())) { return R.error("抱歉,您没有审核的权限"); } // 修改 settle 步骤数据 List<SettleDto> list1 = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); for (SettleDto dto : list1) { switch (dto.getStep()) { case 3: dto.setCurr(Boolean.TRUE); break; case 4: dto.setCurr(Boolean.TRUE); 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: break; } } plan.setSettleMsg(JSON.toJSONString(list1)); // 修改规划单状态 plan.setSettle(4); // 审批通过 plan.setStatus(1); // 审批通过 plan.setUpdateBy(getUserId()); plan.setUpdateTime(new Date()); if (plan.getAssistantHostSign()==1){ Plan planHost = planService.selectById(plan.getHostPlanId()); planHost.setStatus2(1); planService.updateById(planHost); } if (!planService.updateById(plan)) { throw new CoolException("审核失败,请联系管理员"); } break; default: return R.error(); if (Cools.isEmpty(getUser()) || Cools.isEmpty(director)){ return R.error("抱歉,您无需确认!!!"); } if (!getUserId().equals(director.getId())) { return R.error("抱歉,您无需确认!!!"); } // 修改 settle 步骤数据 List<SettleDto> list = JSON.parseArray(plan.getSettleMsg(), SettleDto.class); // 修改 settle 步骤数据 for (SettleDto dto : list) { if (dto.getStep().equals(plan.getSettle())) { dto.setCurr(Boolean.TRUE); } else if (dto.getStep().equals(plan.getSettle()+1)) { dto.setCurr(Boolean.TRUE); if (Cools.isEmpty(dto.getMsg())) { dto.setMsg(director.getNickname() + "审批通过"); } else { dto.setMsg(dto.getMsg() + PZH + DateUtils.convert(new Date()) + " " + director.getNickname() + "审批通过"); } dto.setTime(DateUtils.convert(new Date())); } else if (dto.getStep().equals(plan.getSettle() + 2)) { if (Cools.isEmpty(dto.getUserId())){ if (Cools.isEmpty(plannerId)) { return R.error("指定规划员不能为空"); } plannerUser = userService.selectById(plannerId); if (Cools.isEmpty(plannerUser)){ return R.error("未查到指定规划员账号"); } nextUserId= plannerId; plan.setPlanner(plannerId); dto.setUserId(plannerId); dto.setUsername(plannerUser.getNickname()); // 添加规划员跟进人 PlanFoll planFoll = new PlanFoll(); planFoll.setPlanId(plan.getId()); planFoll.setUserId(nextUserId); if (!planFollService.insert(planFoll)) { throw new CoolException("审核失败,请联系管理员"); } }else { nextUserId=dto.getUserId(); } } } plan.setSettleMsg(JSON.toJSONString(list)); // 修改规划单状态 plan.setSettle(plan.getSettle()+1); // 审批通过 if (plan.getSettle().equals(plan.getSettleSize())){ plan.setStatus(1); if (plan.getAssistantHostSign()==1){ Plan planHost = planService.selectById(plan.getHostPlanId()); planHost.setStatus2(1); planService.updateById(planHost); } } plan.setUpdateBy(getUserId()); plan.setUpdateTime(new Date()); plan.setDirector(nextUserId); if (!planService.updateById(plan)) { throw new CoolException("审核失败,请联系管理员"); } if (!plan.getSettle().equals(plan.getSettleSize())){ if (!Cools.isEmpty(plannerId) && nextUserId.equals(plannerId)){ if (!smsCodeService.sendSmsCodeText(plannerUser.getMobile(), PhoneCodeTypeParam.ALIYUN_M6F3C81FE3)) { return R.ok("审核成功但短信发送失败!"); } }else { User phoneUser = userService.selectById(nextUserId); if (!smsCodeService.sendSmsCodeText(phoneUser.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) { return R.ok("审核成功但短信发送失败!"); } } } return R.ok("审批成功"); } src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
@@ -168,69 +168,6 @@ wrapper.or().eq("host_id", 1); } } // @RequestMapping(value = "/priOnline2/HJ/add/auth") // @ManagerAuth(memo = "接取集成核价任务") // public R addHJ(PriOnline2 priOnline2) { // PriOnline2 priOnline21 = priOnline2Service.selectById(priOnline2.getId()); // if (priOnline21.getSettle()!=1 || !priOnline21.getMemberId().equals(0L)){ // return R.error("此集成核价单状态已改变,请刷新页面重新选择!"); // } // Date now = new Date(); // priOnline21.setMemberId(getUserId()); // // // List<SettleDto> planDtos = JSON.parseArray(priOnline21.getSettleMsg(), SettleDto.class); // List<SettleDto> planDtoList = new ArrayList<>(); // for (SettleDto dto : planDtos) { // if (dto.getStep().equals(2)) { // dto.setUserId(getUserId()); // dto.setUsername(getUser().getNickname()); // if (Cools.isEmpty(dto.getMsg())) { // dto.setMsg(getUser().getNickname() + "接取核价"); // } else { // dto.setMsg(dto.getMsg() + PZH + DateUtils.convert(now) + " " + getUser().getNickname() + "接取核价"); // } // dto.setTime(DateUtils.convert(new Date())); // } // planDtoList.add(dto); // } // priOnline21.setSettleMsg(JSON.toJSONString(planDtoList)); // priOnline21.setUpdateUserId(getUserId()); // priOnline21.setUpdateTime(now); // priOnline2Service.updateById(priOnline21); // return R.ok("接取成功"); // } // @RequestMapping(value = "/priOnline2/HJ/search/auth") // @ManagerAuth // public R priOnline2Search(String condition) { // EntityWrapper<PriOnline2> wrapper = new EntityWrapper<>(); // wrapper.like("template_name", condition); // wrapper.eq("member_id",0L); // // List<ProcessPermissions> processPermissionsList = processPermissionsService.selectList(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5));//2:核价流程 // int type =0; // for (ProcessPermissions processPermissions:processPermissionsList){ // if (getUserId().equals(processPermissions.getUserId())){ // type=1; // break; // } // } // if (type==0){ // return R.error("你不是核价员,无权接任务"); // } // List<Map<String, Object>> result = new ArrayList<>(); // // List<PriOnline2> priOnline2s = priOnline2Service.selectList(wrapper); // for (PriOnline2 priOnline2 : priOnline2s){ // Map<String, Object> map = new HashMap<>(); // map.put("id", priOnline2.getId()); // map.put("name", priOnline2.getTemplateName()+" - ID:"+priOnline2.getId()); // result.add(map); // } // return R.ok(result); // } @RequestMapping(value = "/priOnline2/add/auth") @ManagerAuth(memo = "添加核价管理") @@ -271,7 +208,6 @@ if (plan.getStatus() != 1) { return R.error("此规划单状态改变,请刷新页面重新选择!"); } priOnline2.setMemberId(getUserId()); Cstmr cstmr = cstmrService.selectById(plan.getCstmrId()); priOnline2.setTemplateName(cstmr.getName()); //客户信息名称 @@ -286,7 +222,7 @@ // } // String node="2-"; PlanType planType = planTypeService.selectById(plan.getPlanType()); // PlanType planType = planTypeService.selectById(plan.getPlanType()); // node = node+planType.getType(); // ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-1"));//2:核价流程 // User manager = userService.selectById(processPermissions.getUserId()); // 获取核价流程节点2确认人 @@ -300,11 +236,16 @@ List<User> users = new ArrayList<>(); users.add(getUser()); users.add(getUser()); // users.add(new User()); users.add(userUp); priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.InItFlowPath(users, initNames, users.size()))); priOnline2.setSettleSize(users.size()); priOnline2.setPlanId(plan.getId()); if (users.size()>1){ priOnline2.setMemberId(users.get(1).getId()); } else { priOnline2.setMemberId(getUserId()); } //设置项目流程 plan.setStep(2); plan.setStatus(2); @@ -623,10 +564,7 @@ assert priOnline2 != null; Date now = new Date(); Long nextUserId = getUserId(); User user = new User(); List<SettleDto> list = new ArrayList<>(); user = userService.selectById(priOnline2.getMemberId()); User user = userService.selectById(priOnline2.getMemberId()); if (Cools.isEmpty(getUser()) || Cools.isEmpty(user)){ return R.error("抱歉,您无需确认!!!"); @@ -636,7 +574,7 @@ return R.error("抱歉,您无需确认!!!"); } // 修改 settle 步骤数据 list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); List<SettleDto> list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class); for (SettleDto dto : list) { if (dto.getStep().equals(priOnline2.getSettle())) { dto.setCurr(Boolean.TRUE); src/main/java/com/zy/crm/manager/entity/Plan.java
@@ -174,9 +174,9 @@ private String files; /** * 进度 1: 开始 2: 组长审核 3: 售前组长审核 4: 规划员审核 5: 审批通过 * 进度 1: 开始 2: 售前审核 3: 规划员审核 4: 审批通过 */ @ApiModelProperty(value = "进度 1: 开始 2: 组长审核 3: 售前审核 4: 规划员审核 5: 审批通过 ") @ApiModelProperty(value = "进度 1: 开始 2: 售前审核 3: 规划员审核 4: 审批通过 ") private Integer settle; /** @@ -278,6 +278,13 @@ @ApiModelProperty(value = "主planId") @TableField("assistant_host_sign") private Integer assistantHostSign; /** * 流程长度 */ @ApiModelProperty(value= "流程长度") @TableField("settle_size") private Integer settleSize; public Plan() { } @@ -496,9 +503,17 @@ if (null == this.settle) { return null; } if (this.getSettleSize()==2){ switch (this.settle) { case 1: return "等待确认"; case 2: return "审批通过"; default: return String.valueOf(this.settle); } } switch (this.settle) { // case 1: // return "等待组长审核"; case 1: return "等待售前分配规划员"; case 2: src/main/resources/mapper/PlanMapper.xml
@@ -40,6 +40,7 @@ <result column="assistant_plan_id" property="assistantPlanId" /> <result column="host_plan_id" property="hostPlanId" /> <result column="assistant_host_sign" property="assistantHostSign" /> <result column="settle_size" property="settleSize" /> </resultMap> src/main/webapp/static/js/plan/plan.js
@@ -173,6 +173,7 @@ }, hide: false } , {field: 'settleSize', align: 'center', title: '流程长度', hide: true} ,{field: 'deptId$', align: 'left',title: '所属部门',hide: true} ,{field: 'planner$', align: 'left',title: '规划员',hide: false, width: 100, sort:true} // ,{field: 'nowHeadman$', align: 'left',title: '规划组长',hide: true} @@ -555,7 +556,7 @@ }, function (i) { layer.close(i); // 指定规划员 if (data.settle === 1) { if (data.settle === 1 && data.settleSize === 4) { admin.open({ type: 1, area: '300px', src/main/webapp/views/loginSuper.html
src/main/webapp/views/plan/plan.html
@@ -143,18 +143,21 @@ </div> <script type="text/html" id="operate"> {{# if (d.settle == 1 || d.settle == 2 || d.settle == 3) { }} {{# if (d.settle == 1) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">审批</a> {{# } }} {{# if (d.settle == 2 || d.settle == 3) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approvalEnd">回退审批</a> {{# if ((d.settle == 2 || d.settle == 3) && d.settleSize==4) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">审批</a> {{# } }} <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="uploadLink">附件</a> {{# if ((d.settle == 2 || d.settle == 3)&& d.settleSize==4) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approvalEnd">回退审批</a> {{# } }} <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="uploadLink">附件</a> {{# if (d.settle == 1) { }} <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a> <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">删除</a> {{# } }} {{# if (d.assistantHostSign == 0 && d.assistantPlanId==0) { }} {{# if ((d.assistantHostSign == 0 && d.assistantPlanId==0)&& d.settleSize==4) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="assistantPlan">创建货架规划任务</a> {{# } }}