|  |  | 
 |  |  |     @Autowired | 
 |  |  |     private PlanTypeService planTypeService; | 
 |  |  |  | 
 |  |  |     String PZH=" ———————————————————————————————————————————————————————————————————————————————— "; | 
 |  |  |  | 
 |  |  |     @RequestMapping(value = "/priQuote/{id}/auth") | 
 |  |  |     @ManagerAuth | 
 |  |  |     public R get(@PathVariable("id") String id) { | 
 |  |  | 
 |  |  |                                 break; | 
 |  |  |                             case 2: | 
 |  |  |                                 dto.setCurr(Boolean.TRUE); | 
 |  |  |                                 dto.setMsg("部门经理" + manager.getNickname() + "审批通过"); | 
 |  |  |                                 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(new Date())); | 
 |  |  |                                 break; | 
 |  |  |                             default: | 
 |  |  | 
 |  |  |                             break; | 
 |  |  |                         case 3: | 
 |  |  |                             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; | 
 |  |  |                         default: | 
 |  |  | 
 |  |  |                             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: | 
 |  |  | 
 |  |  |     @ManagerAuth | 
 |  |  |     public R refusePriQuote(@RequestParam Long planId, | 
 |  |  |                               @RequestParam(required = false) Long plannerId){ | 
 |  |  | //        PriQuote priQuote = priQuoteService.selectById(planId); | 
 |  |  | //        assert priQuote != null; | 
 |  |  | // | 
 |  |  | //        switch (priQuote.getSettle()) { | 
 |  |  | //            case 1: | 
 |  |  | //                // 本部门经理审核 | 
 |  |  | //                User user = userService.selectById(priQuote.getUserId()); | 
 |  |  | //                User manager = userService.getDeptManager(getHostId(), user.getDeptId()); | 
 |  |  | //                if (manager.getId().equals(getUserId())) { | 
 |  |  | // | 
 |  |  | //                    // 修改 settle 步骤数据 | 
 |  |  | //                    List<SettleDto> list = JSON.parseArray(priQuote.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; | 
 |  |  | //                            default: | 
 |  |  | //                                break; | 
 |  |  | //                        } | 
 |  |  | //                    } | 
 |  |  | //                    priQuote.setSettleMsg(JSON.toJSONString(list)); | 
 |  |  | // | 
 |  |  | //                    // 修改规划单状态 | 
 |  |  | //                    priQuote.setSettle(2);  // 总裁办待审 | 
 |  |  | //                    priQuote.setUpdateUserId(getUserId()); | 
 |  |  | //                    priQuote.setUpdateTime(new Date()); | 
 |  |  | // | 
 |  |  | //                    if (!priQuoteService.updateById(priQuote)) { | 
 |  |  | //                        throw new CoolException("审核失败,请联系管理员"); | 
 |  |  | //                    } | 
 |  |  | // | 
 |  |  | //                } else { | 
 |  |  | //                    return R.error("抱歉,您没有审核的权限"); | 
 |  |  | //                } | 
 |  |  | //                break; | 
 |  |  | //            case 2: | 
 |  |  | //                ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 2).eq("process", "3-1"));//2:报价流程 | 
 |  |  | //                User planLeader = userService.selectById(processPermissions.getUserId());       // 获取报价流程节点3确认人 | 
 |  |  | //                if (Cools.isEmpty(planLeader)) { | 
 |  |  | //                    throw new CoolException("未查找到报价流程节点3-1确认人,请联系在审批权限添加确认人!"); | 
 |  |  | //                } | 
 |  |  | //                if (!getUserId().equals(planLeader.getId())) { | 
 |  |  | //                    return R.error("抱歉,您没有审核的权限"); | 
 |  |  | //                } | 
 |  |  | //                User planner = userService.selectById(plannerId); | 
 |  |  | //                // 修改 settle 步骤数据 | 
 |  |  | //                List<SettleDto> list = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class); | 
 |  |  | //                for (SettleDto dto : list) { | 
 |  |  | //                    switch (dto.getStep()) { | 
 |  |  | //                        case 2: | 
 |  |  | //                            dto.setCurr(Boolean.FALSE); | 
 |  |  | //                            break; | 
 |  |  | //                        case 3: | 
 |  |  | //                            dto.setCurr(Boolean.TRUE); | 
 |  |  | //                            dto.setMsg("总裁办" + planLeader.getNickname() + "审批通过"); | 
 |  |  | //                            dto.setTime(DateUtils.convert(new Date())); | 
 |  |  | //                            break; | 
 |  |  | //                        default: | 
 |  |  | //                            break; | 
 |  |  | //                    } | 
 |  |  | //                } | 
 |  |  | //                priQuote.setSettleMsg(JSON.toJSONString(list)); | 
 |  |  | //                // 修改规划单状态 | 
 |  |  | //                priQuote.setSettle(3);  // 规划员待审 | 
 |  |  | //                priQuote.setUpdateUserId(getUserId()); | 
 |  |  | //                priQuote.setUpdateTime(new Date()); | 
 |  |  | // | 
 |  |  | //                if (!priQuoteService.updateById(priQuote)) { | 
 |  |  | //                    throw new CoolException("审核失败,请联系管理员"); | 
 |  |  | //                } | 
 |  |  | //                break; | 
 |  |  | //            case 3: | 
 |  |  | //                // 业务员 | 
 |  |  | //                User salesman0 = userService.selectById(priQuote.getUserId()); | 
 |  |  | //                if (!getUserId().equals(salesman0.getId())) { | 
 |  |  | //                    return R.error("抱歉,您没有审核的权限"); | 
 |  |  | //                } | 
 |  |  | //                // 修改 settle 步骤数据 | 
 |  |  | //                List<SettleDto> list1 = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class); | 
 |  |  | //                for (SettleDto dto : list1) { | 
 |  |  | //                    switch (dto.getStep()) { | 
 |  |  | //                        case 3: | 
 |  |  | //                            dto.setCurr(Boolean.TRUE); | 
 |  |  | //                            break; | 
 |  |  | //                        case 4: | 
 |  |  | //                            dto.setCurr(Boolean.TRUE); | 
 |  |  | //                            dto.setMsg("业务员" + salesman0.getNickname() + "审批通过"); | 
 |  |  | //                            dto.setTime(DateUtils.convert(new Date())); | 
 |  |  | //                            break; | 
 |  |  | //                        default: | 
 |  |  | //                            break; | 
 |  |  | //                    } | 
 |  |  | //                } | 
 |  |  | //                priQuote.setSettleMsg(JSON.toJSONString(list1)); | 
 |  |  | //                // 修改规划单状态 | 
 |  |  | //                priQuote.setSettle(4);  // 审批通过 | 
 |  |  | //                priQuote.setUpdateUserId(getUserId()); | 
 |  |  | //                priQuote.setUpdateTime(new Date()); | 
 |  |  | // | 
 |  |  | //                if (!priQuoteService.updateById(priQuote)) { | 
 |  |  | //                    throw new CoolException("审核失败,请联系管理员"); | 
 |  |  | //                } | 
 |  |  | //                break; | 
 |  |  | //            default: | 
 |  |  | //                return R.error(); | 
 |  |  | //        } | 
 |  |  |         return R.ok("审批成功"); | 
 |  |  |  | 
 |  |  |         PriQuote priQuote = priQuoteService.selectById(planId); | 
 |  |  |  | 
 |  |  |         Date now = new Date(); | 
 |  |  |         Long memberId = priQuote.getMemberId(); | 
 |  |  |         User member = userService.selectById(memberId); | 
 |  |  |         if (!member.getId().equals(getUserId())){ | 
 |  |  |             return R.error("抱歉,您没有审核的权限"); | 
 |  |  |         } | 
 |  |  |         List<SettleDto> planDtos = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class); | 
 |  |  |         List<SettleDto> planDtoList = new ArrayList<>(); | 
 |  |  |         boolean sign = true; | 
 |  |  |         for (SettleDto dto : planDtos) { | 
 |  |  |             if (dto.getStep().equals(2)){ | 
 |  |  |                 priQuote.setMemberId(dto.getUserId()); | 
 |  |  |             } | 
 |  |  |             if (sign && dto.getUserId().equals(memberId) && priQuote.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); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         priQuote.setSettle(1); | 
 |  |  |         priQuote.setUpdateUserId(getUserId()); | 
 |  |  |         priQuote.setUpdateTime(now); | 
 |  |  |  | 
 |  |  |         priQuote.setSettleMsg(JSON.toJSONString(planDtoList)); | 
 |  |  |         priQuoteService.updateById(priQuote); | 
 |  |  |         return R.ok("回退成功"); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |