From 9c3c9bf7dfaf0f1c162a6aa06fdb7ca81711f70d Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 10 十月 2023 11:49:07 +0800 Subject: [PATCH] #回退流程相关 --- src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java | 70 ++++++++++- src/main/webapp/views/priOnline2/priOnline.html | 3 src/main/java/com/zy/crm/manager/controller/PlanController.java | 20 +- src/main/webapp/static/js/priOnline2/priOnline.js | 232 ++++++++++++++++++++++++-------------- src/main/java/com/zy/crm/manager/controller/OrderController.java | 10 + 5 files changed, 228 insertions(+), 107 deletions(-) diff --git a/src/main/java/com/zy/crm/manager/controller/OrderController.java b/src/main/java/com/zy/crm/manager/controller/OrderController.java index 00d130f..e7fe05e 100644 --- a/src/main/java/com/zy/crm/manager/controller/OrderController.java +++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java @@ -158,7 +158,7 @@ for (SettleDto dto : priQuoteDtos) { switch (dto.getStep()) { case 1: - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priQuote.getUserId$()); + dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priQuote.getUserId$()); dto.setUserId(priQuote.getUserId()); dto.setUsername(priQuote.getUserId$()); break; @@ -175,6 +175,8 @@ priQuoteService.updateById(priQuote); } + }else { + signPriOnline2=true; } if (!signPriOnline2){ continue; @@ -191,9 +193,7 @@ for (SettleDto dto : priOnline2Dtos) { switch (dto.getStep()) { case 0: - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priOnline2.getUser$()); - dto.setUserId(priOnline2.getUserId()); - dto.setUsername(priOnline2.getUser$()); + dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priOnline2.getUser$()); break; case 3: dto.setUserId(priOnline2.getUserId()); @@ -209,6 +209,8 @@ priOnline2Service.updateById(priOnline2); } + }else { + signPlan=true; } if (!signPlan){ diff --git a/src/main/java/com/zy/crm/manager/controller/PlanController.java b/src/main/java/com/zy/crm/manager/controller/PlanController.java index 30617da..61a96cd 100644 --- a/src/main/java/com/zy/crm/manager/controller/PlanController.java +++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java @@ -56,6 +56,9 @@ @Autowired private SmsCodeService smsCodeService; + String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "; + + @GetMapping(value = "/plan/{id}/auth") @ManagerAuth public R get(@PathVariable("id") String id) { @@ -434,7 +437,7 @@ if (Cools.isEmpty(dto.getMsg())){ dto.setMsg("鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); }else { - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"鍞墠缁勯暱" + planLeader.getNickname() + "瀹℃壒閫氳繃"); } dto.setTime(DateUtils.convert(new Date())); break; @@ -494,7 +497,7 @@ if (Cools.isEmpty(dto.getMsg())){ dto.setMsg("瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); }else { - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"瑙勫垝鍛�" + plannerUser.getNickname() + "瀹℃壒閫氳繃"); } dto.setTime(DateUtils.convert(new Date())); break; @@ -534,7 +537,7 @@ if (Cools.isEmpty(dto.getMsg())){ dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); }else { - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃"); } dto.setTime(DateUtils.convert(new Date())); break; @@ -574,16 +577,19 @@ List<SettleDto> planDtoList = new ArrayList<>(); boolean sign = true; for (SettleDto dto : planDtos) { + if (dto.getStep().equals(2)){ + plan.setDirector(dto.getUserId()); + } if (sign && dto.getUserId().equals(directorId) && plan.getSettle()+1==dto.getStep()){ if (Cools.isEmpty(dto.getMsg())){ dto.setMsg(DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); }else { - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); } sign = false; } if (sign){ - dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); + dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+director.getNickname()+"鍥為��瀹℃壒"); } planDtoList.add(dto); @@ -591,10 +597,6 @@ plan.setStatus(0); plan.setStep(1); plan.setSettle(1); - - PlanType planType = planTypeService.selectById(plan.getPlanType()); - User planLeader = planTypeService.findPlanLeader(planType); - plan.setDirector(planLeader.getId()); plan.setSettleMsg(JSON.toJSONString(planDtoList)); planService.updateById(plan); return R.ok("鍥為��鎴愬姛"); 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 0a9e933..b7a6737 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) { @@ -183,8 +185,8 @@ 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纭浜� + 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<>(); @@ -433,6 +435,46 @@ 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.setSettleMsg(JSON.toJSONString(planDtoList)); + priOnline2Service.updateById(priOnline2); + return R.ok("鍥為��鎴愬姛"); + } + @PostMapping(value = "/priOnline2/approval/auth") @ManagerAuth public R approvalBusinessTrip(@RequestParam Long priOnlineId, @@ -443,16 +485,18 @@ switch (priOnline2.getSettle()) { case 0: // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜� + 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锛氭姤浠锋祦绋� + 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 +508,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: @@ -507,7 +555,11 @@ 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(now)); break; default: @@ -543,7 +595,11 @@ break; case 3: 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: diff --git a/src/main/webapp/static/js/priOnline2/priOnline.js b/src/main/webapp/static/js/priOnline2/priOnline.js index d8f706b..05e67a8 100644 --- a/src/main/webapp/static/js/priOnline2/priOnline.js +++ b/src/main/webapp/static/js/priOnline2/priOnline.js @@ -5,7 +5,7 @@ base: baseUrl + "/static/layui/lay/modules/" }).extend({ cascader: 'cascader/cascader', -}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function(){ +}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function() { var table = layui.table; var $ = layui.jquery; var layer = layui.layer; @@ -20,19 +20,19 @@ // 閮ㄩ棬浜哄憳 绛涢�� dropdown.render({ elem: '#organization' - ,content: ['<div id="organizationTree" style="height: calc(100vh - 525px);border: none"></div>'].join('') - ,style: 'width: 370px; height: 350px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);' - ,ready: function(){ + , content: ['<div id="organizationTree" style="height: calc(100vh - 525px);border: none"></div>'].join('') + , style: 'width: 370px; height: 350px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);' + , ready: function () { loadTree(); } }); // 鏍戝舰鍥� var organizationTree; - window.loadTree = function(condition){ + window.loadTree = function (condition) { var loadIndex = layer.load(2); $.ajax({ - url: baseUrl+"/dept/user/tree/auth", + url: baseUrl + "/dept/user/tree/auth", headers: {'token': localStorage.getItem('token')}, data: { 'condition': condition @@ -40,7 +40,7 @@ method: 'POST', success: function (res) { layer.close(loadIndex); - if (res.code === 200){ + if (res.code === 200) { organizationTree = tree.render({ elem: '#organizationTree', id: 'organizationTree', @@ -62,8 +62,8 @@ } }); treeData = res.data; - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; } else { layer.msg(res.msg) } @@ -75,7 +75,7 @@ tableIns = table.render({ elem: '#priOnline', headers: {token: localStorage.getItem('token')}, - url: baseUrl+'/priOnline2/list/auth', + url: baseUrl + '/priOnline2/list/auth', page: true, limit: 16, limits: [16, 30, 50, 100, 200, 500], @@ -83,21 +83,43 @@ cellMinWidth: 150, cols: [[ {type: 'checkbox', fixed: 'left'} - ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80,hide: true} - ,{field: 'templateName', align: 'center',title: '瀹㈡埛鍚嶇О', style: 'color: #1890ff;cursor:pointer', event: 'moreCstmr', width: 350,hide: false} - ,{field: 'cstmrId$', align: 'center',title: '瀹㈡埛id',hide: true} - ,{field: 'orderNum', align: 'center',title: '鏍镐环鍗曞彿',hide: false} - ,{field: 'planId$', align: 'center',title: '瑙勫垝鍗曞彿', style: 'color: #1890ff;cursor:pointer', event: 'morePlan',hide: false} - ,{field: 'itemId', align: 'center',title: '瑙勫垝鍗曞彿', hide: true} - ,{field: 'createTime$', align: 'center',title: '鍒涘缓鏃堕棿'} - ,{field: 'updateTime$', align: 'center',title: '鏇存柊鏃堕棿'} - ,{field: 'status$', align: 'center',title: '鐘舵��'} + , {field: 'id', title: 'ID', sort: true, align: 'center', fixed: 'left', width: 80, hide: true} + , { + field: 'templateName', + align: 'center', + title: '瀹㈡埛鍚嶇О', + style: 'color: #1890ff;cursor:pointer', + event: 'moreCstmr', + width: 350, + hide: false + } + , {field: 'cstmrId$', align: 'center', title: '瀹㈡埛id', hide: true} + , {field: 'orderNum', align: 'center', title: '鏍镐环鍗曞彿', hide: false} + , { + field: 'planId$', + align: 'center', + title: '瑙勫垝鍗曞彿', + style: 'color: #1890ff;cursor:pointer', + event: 'morePlan', + hide: false + } + , {field: 'itemId', align: 'center', title: '瑙勫垝鍗曞彿', hide: true} + , {field: 'createTime$', align: 'center', title: '鍒涘缓鏃堕棿'} + , {field: 'updateTime$', align: 'center', title: '鏇存柊鏃堕棿'} + , {field: 'status$', align: 'center', title: '鐘舵��'} // ,{field: 'memberId$', align: 'center',title: ''} - ,{field: 'settle$', align: 'center',title: '杩涘害', style: 'color: #1890ff;cursor:pointer', event: 'more',hide: false} - ,{field: 'user$', align: 'center',title: '涓氬姟鍛�'} - ,{field: 'updateUserId$', align: 'center',title: '鏇存柊浜哄憳'} - ,{field: 'checkDataStatus$', align: 'center',title: '鎶ヤ环鏁版嵁'} - ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:350} + , { + field: 'settle$', + align: 'center', + title: '杩涘害', + style: 'color: #1890ff;cursor:pointer', + event: 'more', + hide: false + } + , {field: 'user$', align: 'center', title: '涓氬姟鍛�'} + , {field: 'updateUserId$', align: 'center', title: '鏇存柊浜哄憳'} + , {field: 'checkDataStatus$', align: 'center', title: '鎶ヤ环鏁版嵁'} + , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 350} ]], request: { pageName: 'curr', @@ -114,11 +136,11 @@ response: { statusCode: 200 }, - done: function(res, curr, count) { + done: function (res, curr, count) { if (res.code === 403) { - top.location.href = baseUrl+"/"; + top.location.href = baseUrl + "/"; } - pageCurr=curr; + pageCurr = curr; limit(); } }); @@ -126,7 +148,7 @@ // 鐩戝惉鎺掑簭浜嬩欢 table.on('sort(priOnline)', function (obj) { var searchData = {}; - $.each($('#search-box [name]').serializeArray(), function() { + $.each($('#search-box [name]').serializeArray(), function () { searchData[this.name] = this.value; }); searchData['orderByField'] = obj.field; @@ -138,9 +160,9 @@ }, done: function (res, curr, count) { if (res.code === 403) { - top.location.href = baseUrl+"/"; + top.location.href = baseUrl + "/"; } - pageCurr=curr; + pageCurr = curr; limit(); } }); @@ -149,7 +171,7 @@ // 鐩戝惉澶村伐鍏锋爮浜嬩欢 table.on('toolbar(priOnline)', function (obj) { var checkStatus = table.checkStatus(obj.config.id); - switch(obj.event) { + switch (obj.event) { case 'addBlank': showEditModel(); break; @@ -163,26 +185,26 @@ break; case 'deleteData': var data = checkStatus.data; - var ids=[]; + var ids = []; data.map(function (track) { ids.push(track.id); }); - if (ids.length === 0){ + if (ids.length === 0) { layer.msg('璇烽�夋嫨鏁版嵁'); } else { - layer.confirm('纭畾鍒犻櫎'+(ids.length===1?'姝�':ids.length)+'鏉℃暟鎹悧', function(){ + layer.confirm('纭畾鍒犻櫎' + (ids.length === 1 ? '姝�' : ids.length) + '鏉℃暟鎹悧', function () { $.ajax({ - url: baseUrl+"/priOnline2/delete/auth", + url: baseUrl + "/priOnline2/delete/auth", headers: {'token': localStorage.getItem('token')}, data: {ids: ids}, method: 'POST', - traditional:true, + traditional: true, success: function (res) { - if (res.code === 200){ + if (res.code === 200) { layer.closeAll(); tableReload(false); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; } else { layer.msg(res.msg) } @@ -192,9 +214,9 @@ } break; case 'exportData': - layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ - var titles=[]; - var fields=[]; + layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function () { + var titles = []; + var fields = []; obj.config.cols[0].map(function (col) { if (col.type === 'normal' && col.hide === false && col.toolbar == null) { titles.push(col.title); @@ -202,7 +224,7 @@ } }); var exportData = {}; - $.each($('#search-box [name]').serializeArray(), function() { + $.each($('#search-box [name]').serializeArray(), function () { exportData[this.name] = this.value; }); var param = { @@ -210,18 +232,18 @@ 'fields': fields }; $.ajax({ - url: baseUrl+"/priOnline2/export/auth", + url: baseUrl + "/priOnline2/export/auth", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify(param), - dataType:'json', - contentType:'application/json;charset=UTF-8', + dataType: 'json', + contentType: 'application/json;charset=UTF-8', method: 'POST', success: function (res) { layer.closeAll(); if (res.code === 200) { - table.exportFile(titles,res.data,'xls'); + table.exportFile(titles, res.data, 'xls'); } else if (res.code === 403) { - top.location.href = baseUrl+"/"; + top.location.href = baseUrl + "/"; } else { layer.msg(res.msg) } @@ -233,9 +255,20 @@ }); // 鐩戝惉琛屽伐鍏蜂簨浠� - table.on('tool(priOnline)', function(obj){ + table.on('tool(priOnline)', function (obj) { var data = obj.data; switch (obj.event) { + case 'approvalEnd': + layer.confirm('瀹℃壒鎷掔粷锛�', { + skin: 'layui-layer-admin', + shade: .1, + offset: '200px', + title: data.name + }, function (i) { + layer.close(i); + approvalEnd(data.id); + }); + break; case 'approval': layer.confirm('瀹℃壒閫氳繃锛�', { skin: 'layui-layer-admin', @@ -262,7 +295,7 @@ remoteMethod: function (val, cb, show) { let loadIndex = layer.load(2); $.ajax({ - url: baseUrl+"/priOnline2/priQuoteAdd/list/auth", + url: baseUrl + "/priOnline2/priQuoteAdd/list/auth", headers: {'token': localStorage.getItem('token')}, data: { planId: data.id @@ -344,25 +377,25 @@ area: [top.detailWidth, top.detailHeight], shadeClose: false, content: 'priOnline_detail.html?id=' + data.id, - success: function(layero, index){ + success: function (layero, index) { // layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); } }); break; case 'del': - layer.confirm('纭畾鍒犻櫎杩欐潯鏁版嵁鍚�', function(){ + layer.confirm('纭畾鍒犻櫎杩欐潯鏁版嵁鍚�', function () { $.ajax({ - url: baseUrl+"/priOnline2/delete/auth", + url: baseUrl + "/priOnline2/delete/auth", headers: {'token': localStorage.getItem('token')}, data: {ids: data.id}, method: 'POST', - traditional:true, + traditional: true, success: function (res) { - if (res.code === 200){ + if (res.code === 200) { layer.closeAll(); tableReload(false); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; } else { layer.msg(res.msg) } @@ -375,36 +408,36 @@ break; case "upload": $.ajax({ - type:"get", - url: baseUrl+"/priOnline2/viewCheck/" + data.id + "/auth", - dataType:"json", + type: "get", + url: baseUrl + "/priOnline2/viewCheck/" + data.id + "/auth", + dataType: "json", headers: {'token': localStorage.getItem('token')}, - success:function(res) { + success: function (res) { if (res.code == 200) { - layer.confirm('褰撳墠宸插瓨鍦ㄦ暟鎹紝缁х画涓婁紶灏嗕細瑕嗙洊鏃ф暟鎹紝鏄惁涓婁紶锛�', function(){ + layer.confirm('褰撳墠宸插瓨鍦ㄦ暟鎹紝缁х画涓婁紶灏嗕細瑕嗙洊鏃ф暟鎹紝鏄惁涓婁紶锛�', function () { $("#uploadQuote").click() }); - }else{ + } else { $("#uploadQuote").click() } } }); - $("#uploadQuote").on("change",(evt) => { + $("#uploadQuote").on("change", (evt) => { var files = evt.target.files; - if(files==null || files.length==0){ + if (files == null || files.length == 0) { alert("No files wait for import"); return; } let name = files[0].name; - let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length-1]; - if(suffix!="xlsx"){ + let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length - 1]; + if (suffix != "xlsx") { alert("Currently only supports the import of xlsx files"); return; } - LuckyExcel.transformExcelToLucky(files[0], function(exportJson, luckysheetfile){ - if(exportJson.sheets==null || exportJson.sheets.length==0){ + LuckyExcel.transformExcelToLucky(files[0], function (exportJson, luckysheetfile) { + if (exportJson.sheets == null || exportJson.sheets.length == 0) { alert("Failed to read the content of the excel file, currently does not support xls files!"); return; } @@ -413,7 +446,7 @@ formData.append("id", data.id); formData.append("checkData", zip(exportJson.sheets)); $.ajax({ - url: baseUrl+"/priOnline2/uploadCheck/auth", + url: baseUrl + "/priOnline2/uploadCheck/auth", headers: {'token': localStorage.getItem('token')}, data: formData, // data: JSON.stringify({ @@ -428,11 +461,11 @@ // contentType:'application/json;charset=UTF-8', success: function (res) { if (res.code == 200) { - layer.msg('涓婁紶鎴愬姛',{time:1000},() => { + layer.msg('涓婁紶鎴愬姛', {time: 1000}, () => { parent.location.reload() }) - }else{ - layer.msg(res.msg,{time:1000},() => { + } else { + layer.msg(res.msg, {time: 1000}, () => { parent.location.reload() }) } @@ -444,11 +477,11 @@ case "viewCheck": //鏌ョ湅璇环 $.ajax({ - type:"get", - url: baseUrl+"/priOnline2/viewCheck/" + data.id + "/auth", - dataType:"json", + type: "get", + url: baseUrl + "/priOnline2/viewCheck/" + data.id + "/auth", + dataType: "json", headers: {'token': localStorage.getItem('token')}, - success:function(res) { + success: function (res) { if (res.code == 200) { layer.open({ type: 2, @@ -457,12 +490,12 @@ area: [top.detailWidth, top.detailHeight], shadeClose: false, content: 'priOnline_check.html?id=' + data.id, - success: function(layero, index){ + success: function (layero, index) { // layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); } }); - }else{ - layer.msg(res.msg,{time:1000}) + } else { + layer.msg(res.msg, {time: 1000}) } } }); @@ -497,7 +530,7 @@ area: [top.detailWidth, top.detailHeight], shadeClose: false, content: 'priOnline_detail.html?item_id=' + data.field.planId + "&template=" + data.field.template + "&name=" + data.field.name, - success: function(layero, index){ + success: function (layero, index) { clearFormVal(layer.getChildFrame('#detail', index)); // layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); } @@ -523,17 +556,17 @@ form.on('submit(editSubmit)', function (data) { var loadIndex = layer.load(2); $.ajax({ - url: baseUrl+"/priOnline2/updateForm/auth", + url: baseUrl + "/priOnline2/updateForm/auth", headers: {'token': localStorage.getItem('token')}, data: data.field, method: 'POST', - traditional:true, + traditional: true, success: function (res) { - if (res.code === 200){ + if (res.code === 200) { layer.closeAll(); tableReload(false); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; } else { layer.msg(res.msg) } @@ -548,7 +581,32 @@ } }); } - + function approvalEnd(planId, plannerId, dIdx) { + let loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/priOnline2/approvalEnd/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + priOnlineId: priOnlineId, + plannerId: plannerId + }, + method: 'POST', + success: function (res) { + if (dIdx) { + layer.close(dIdx); + } + layer.close(loadIndex); + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}); + tableReload(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + } function approval(priOnlineId, plannerId, dIdx) { let loadIndex = layer.load(2); diff --git a/src/main/webapp/views/priOnline2/priOnline.html b/src/main/webapp/views/priOnline2/priOnline.html index d142faa..81e0f95 100644 --- a/src/main/webapp/views/priOnline2/priOnline.html +++ b/src/main/webapp/views/priOnline2/priOnline.html @@ -82,6 +82,9 @@ {{# 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> {{# } }} -- Gitblit v1.9.1