src/main/java/com/zy/crm/common/model/SettleDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/DashboardController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/OrderController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/controller/PriQuoteController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/crm/manager/entity/PriOnline2.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/priOnline2/priOnline.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/priOnline2/priOnline.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/processPermissions/processPermissions.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/crm/common/model/SettleDto.java
@@ -96,7 +96,7 @@ list.add(dto); break; case 3: dto.setTitle("总裁办审核"); dto.setTitle("总经办审核"); dto.setUserId(president.getId()); dto.setUsername(president.getNickname()); list.add(dto); @@ -250,6 +250,40 @@ return list; } public static List<SettleDto> initSalesPricingPriOnline2(User user,User userUp,List<String> names ,int nodes) { List<SettleDto> list = new ArrayList<>(); for (int i = 0; i < nodes+1; i++) { SettleDto dto = new SettleDto(); dto.setStep(i); switch (i) { case 0: dto.setTitle("开始"); dto.setMsg(user.getUsername() + names.get(i)); dto.setUserId(user.getId()); dto.setUsername(user.getUsername()); dto.setTime(DateUtils.convert(new Date())); dto.setCurr(Boolean.TRUE); list.add(dto); break; case 1: dto.setTitle(names.get(i)); dto.setUserId(user.getId()); dto.setUsername(user.getNickname()); list.add(dto); break; case 2: dto.setTitle(names.get(i)); dto.setUserId(userUp.getId()); dto.setUsername(userUp.getUsername()); list.add(dto); break; default: break; } } return list; } public static List<SettleDto> initContract(User manager ,User user,User president,List<String> names ,int nodes) { List<SettleDto> list = new ArrayList<>(); for (int i = 0; i < nodes+1; i++) { src/main/java/com/zy/crm/manager/controller/DashboardController.java
@@ -131,7 +131,28 @@ @ManagerAuth public R getCurrentMonthData() { List<Double> list = orderService.selectCurrentYearMonthSuccess(); return R.ok().add(list); List<Double> lists = new ArrayList<>(); int i = 0; Double[] money=new Double[]{0.0,0.0,0.0,0.0}; for (Double d : list){ if (i<3){ money[0] = money[0]+d; }else if (i<6){ money[1] = money[1]+d; }else if (i<9){ money[2] = money[2]+d; }else if (i<12){ money[3] = money[3]+d; } i++; } for (Double d : money){ double d1=d/3; lists.add(d1); lists.add(d1); lists.add(d1); } return R.ok().add(lists); } @RequestMapping("/dashboard/popup/auth") src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -195,7 +195,7 @@ case 0: dto.setMsg(dto.getMsg()+" ———————————————————————————————————————————————————————————————————————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+priOnline2.getUser$()); break; case 3: case 2: dto.setUserId(priOnline2.getUserId()); dto.setUsername(priOnline2.getUser$()); break; src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
@@ -65,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); } @@ -180,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); @@ -490,10 +489,10 @@ User user = userService.selectById(priOnline2.getMemberId()); 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确认人 // 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("抱歉,您没有提交的权限"); @@ -526,63 +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); 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("抱歉,您没有审核的权限!!!"); } break; case 2: // break; case 1: // 业务员 User salesman0 = userService.selectById(priOnline2.getUserId()); if (!getUserId().equals(salesman0.getId())) { @@ -592,10 +591,10 @@ 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); if (Cools.isEmpty(dto.getMsg())){ dto.setMsg("业务员" + salesman0.getNickname() + "审批通过"); @@ -610,7 +609,7 @@ } priOnline2.setSettleMsg(JSON.toJSONString(list2)); // 修改规划单状态 priOnline2.setSettle(3); // 审批通过 priOnline2.setSettle(2); // 审批通过 priOnline2.setStatus(1); priOnline2.setUpdateTime(new Date()); priOnline2.setUpdateUserId(getUserId()); src/main/java/com/zy/crm/manager/controller/PriQuoteController.java
@@ -527,7 +527,7 @@ if (Cools.isEmpty(dto.getMsg())){ dto.setMsg("总裁办" + planLeader.getNickname() + "审批通过"); }else { dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"总裁办" + planLeader.getNickname() + "审批通过"); dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"总经办" + planLeader.getNickname() + "审批通过"); } dto.setTime(DateUtils.convert(new Date())); break; src/main/java/com/zy/crm/manager/entity/PriOnline2.java
@@ -163,10 +163,8 @@ case 0: return "等待提交"; case 1: return "等待审批"; case 2: return "等待确认"; case 3: case 2: return "审批通过"; default: return String.valueOf(this.settle); src/main/webapp/static/js/priOnline2/priOnline.js
@@ -278,7 +278,7 @@ }, function (i) { layer.close(i); // 指定规划员 if (data.settle === 2) { if (data.settle === 1) { admin.open({ type: 1, area: '300px', src/main/webapp/views/priOnline2/priOnline.html
@@ -75,18 +75,11 @@ <script type="text/html" id="operate"> {{# if (d.settle == 0) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">提交</a> <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">删除</a> {{# } }} {{# if (d.settle == 1) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">审批</a> {{# } }} {{# if (d.settle == 2) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">确认</a> {{# } }} {{# if (d.settle == 1 || d.settle == 2) { }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="approvalEnd">回退审批</a> {{# } }} {{# if (d.settle == 0 || d.settle == 1) { }} <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">删除</a> {{# } }} <a class="layui-btn layui-btn-xs btn-edit" lay-event="check">核价</a> <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">编辑</a> src/main/webapp/views/processPermissions/processPermissions.html
@@ -108,7 +108,7 @@ <div class="layui-row"> <div class="layui-col-md12"> <div class="layui-form-item"> <label class="layui-form-label">员工姓名: </label> <label class="layui-form-label layui-form-required">员工姓名: </label> <div class="layui-input-inline cool-auto-complete"> <input id="userName" class="layui-input" name="userName" type="text" placeholder="请选择员工" autocomplete="off" style="display: none" lay-verify="required"> <input id="userName$" name="userName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="员工姓名" onfocus=this.blur()> @@ -185,37 +185,37 @@ <!-- </div>--> <!-- </div>--> <!-- </div>--> <div class="layui-form-item"> <label class="layui-form-label layui-form-required">权限类型: </label> <div class="layui-input-block"> <select name="processMemo" lay-vertype="tips" lay-verify="required"> <option value="">请选择状态</option> <option value="1">核价流程</option> <option value="2">报价流程</option> <option value="3">报销流程</option> <option value="4">出差流程</option> <option value="5">核价流程</option> <option value="7">合同管理</option> </select> </div> </div> <div class="layui-form-item"> <label class="layui-form-label layui-form-required">权限节点: </label> <div class="layui-input-block"> <select name="process" lay-vertype="tips" lay-verify="required"> <option value="">请选择状态</option> <option value="1-1">1-1</option> <option value="1-2">1-2</option> <option value="2-1">2-1</option> <option value="3-1">3-1</option> <option value="3-2">3-2</option> <option value="4-1">4-1</option> <option value="5-1">5-1</option> <option value="6-1">6-1</option> <option value="7-1">7-1</option> </select> </div> </div> <!-- <div class="layui-form-item">--> <!-- <label class="layui-form-label layui-form-required">权限类型: </label>--> <!-- <div class="layui-input-block">--> <!-- <select name="processMemo" lay-vertype="tips" lay-verify="required">--> <!-- <option value="">请选择状态</option>--> <!-- <option value="1">核价流程</option>--> <!-- <option value="2">报价流程</option>--> <!-- <option value="3">报销流程</option>--> <!-- <option value="4">出差流程</option>--> <!-- <option value="5">核价流程</option>--> <!-- <option value="7">合同管理</option>--> <!-- </select>--> <!-- </div>--> <!-- </div>--> <!-- <div class="layui-form-item">--> <!-- <label class="layui-form-label layui-form-required">权限节点: </label>--> <!-- <div class="layui-input-block">--> <!-- <select name="process" lay-vertype="tips" lay-verify="required">--> <!-- <option value="">请选择状态</option>--> <!-- <option value="1-1">1-1</option>--> <!-- <option value="1-2">1-2</option>--> <!-- <option value="2-1">2-1</option>--> <!-- <option value="3-1">3-1</option>--> <!-- <option value="3-2">3-2</option>--> <!-- <option value="4-1">4-1</option>--> <!-- <option value="5-1">5-1</option>--> <!-- <option value="6-1">6-1</option>--> <!-- <option value="7-1">7-1</option>--> <!-- </select>--> <!-- </div>--> <!-- </div>--> <div class="layui-form-item"> <label class="layui-form-label">备注: </label> <div class="layui-input-block">