From 34acfaaef92fd79771ae5c9c3c2f1a9d8204525b Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期四, 18 一月 2024 00:26:23 +0800 Subject: [PATCH] # 增加调拨、库存冻结、删除单个拣货信息功能 --- src/main/webapp/static/js/picking/picking.js | 38 +++++ src/main/webapp/views/configType/configTypeAdd.html | 1 src/main/java/com/zy/asrs/controller/PlaController.java | 48 ++++++ src/main/java/com/zy/asrs/service/PakoutService.java | 2 src/main/webapp/views/pla/plaDetl.html | 7 src/main/webapp/static/js/pla/plaDetl.js | 112 +++++++++++++++ src/main/webapp/views/picking/picking.html | 5 src/main/webapp/views/pla/updateOwner.html | 121 +++++++++++++++++ src/main/java/com/zy/asrs/controller/PakoutController.java | 21 ++ src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java | 46 ++++++ src/main/webapp/static/js/configType/configType.js | 2 src/main/java/com/zy/asrs/entity/Pla.java | 16 ++ 12 files changed, 404 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/PakoutController.java b/src/main/java/com/zy/asrs/controller/PakoutController.java index c529c01..548eab0 100644 --- a/src/main/java/com/zy/asrs/controller/PakoutController.java +++ b/src/main/java/com/zy/asrs/controller/PakoutController.java @@ -1,11 +1,14 @@ package com.zy.asrs.controller; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; +import com.core.annotations.ManagerAuth; +import com.core.common.BaseRes; +import com.core.common.Cools; import com.core.common.DateUtils; +import com.core.common.R; import com.zy.asrs.entity.ManLocDetl; import com.zy.asrs.entity.Order; import com.zy.asrs.entity.OrderDetl; @@ -15,13 +18,8 @@ import com.zy.asrs.service.OrderDetlService; import com.zy.asrs.service.OrderService; import com.zy.asrs.service.PakoutService; -import com.core.annotations.ManagerAuth; -import com.core.common.BaseRes; -import com.core.common.Cools; -import com.core.common.R; import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import java.util.*; @@ -297,6 +295,17 @@ return R.ok("鎷h揣鍗曞垹闄ゆ垚鍔�"); } + @RequestMapping(value = "/pakout/deleteDetl/auth") + @ManagerAuth(memo = "鎵嬪姩鍒犻櫎璁㈠崟") + public R deleteDetl(@RequestParam String wrkNo){ + try{ + pakoutService.deletePakoutByWrkNo(wrkNo); + }catch (Exception e){ + return R.error(e+""); + } + return R.ok("鎷h揣鍗曞垹闄ゆ垚鍔�"); + } + @RequestMapping(value = "/pakout/export/auth") @ManagerAuth public R export(@RequestBody JSONObject param){ diff --git a/src/main/java/com/zy/asrs/controller/PlaController.java b/src/main/java/com/zy/asrs/controller/PlaController.java index 4b7c317..de93414 100644 --- a/src/main/java/com/zy/asrs/controller/PlaController.java +++ b/src/main/java/com/zy/asrs/controller/PlaController.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.core.annotations.ManagerAuth; +import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; import com.core.exception.CoolException; @@ -131,6 +132,10 @@ for (Pla pla : plas){ + if(pla.getStockFreeze() == 0){ + throw new CoolException("搴撳瓨宸茶鍐荤粨锛岃閲嶆柊閫夋嫨搴撳瓨"); + } + allOrderWeight += pla.getOrderWeight(); if(pla.getWeightAnfme() - pla.getQtyAnfme() - pla.getOrderWeight() < 0){ @@ -199,6 +204,49 @@ return R.ok(); } + @RequestMapping(value = "/pla/updateStockFreeze") + @Transactional + @ManagerAuth(memo = "搴撲綅鍐荤粨") + public R updateStockFreeze(@RequestBody List<Pla> plas){ + if (Cools.isEmpty(plas)){ + return R.error("鏃犳暟鎹�"); + } + for (Pla pla : plas){ + if (pla.getStockFreeze() == 0){ + throw new CoolException("搴撳瓨宸茶鍐荤粨锛�"); + } + pla.setStockFreeze(0); + pla.setStockFreezeBy(getUser().getUsername()); + pla.setStockFreezeDate(new Date()); + pla.setModifyTime(new Date()); + plaService.updateById(pla); + } + return R.ok("鍐荤粨鎴愬姛"); + } + + @RequestMapping(value = "/pla/updateStockDisFreeze") + @ManagerAuth(memo = "搴撲綅瑙e喕") + public R updateStockDisFreeze(@RequestBody List<Pla> plas){ + if (Cools.isEmpty(plas)){ + return R.error("鏃犳暟鎹�"); + } + for (Pla pla : plas){ + if (pla.getStockFreeze() == 1){ + throw new CoolException("搴撲綅鏈喕缁擄紝鏃犻渶瑙e喕"); + } + if(!Cools.eq(pla.getStockFreezeBy(),getUser().getUsername())){ + throw new CoolException("鏃犳硶瑙e喕鍏朵粬鐢ㄦ埛鍐荤粨鐨勫簱浣�"); + } + pla.setStockFreeze(1); + pla.setStockFreezeBy(getUser().getUsername()); + pla.setStockFreezeDate(new Date()); + pla.setModifyTime(new Date()); + plaService.updateById(pla); + + } + return R.ok("瑙i櫎鍐荤粨鎴愬姛"); + } + /** * excel瀵煎叆妯℃澘涓嬭浇 */ diff --git a/src/main/java/com/zy/asrs/entity/Pla.java b/src/main/java/com/zy/asrs/entity/Pla.java index 209dd5e..a8a0fa2 100644 --- a/src/main/java/com/zy/asrs/entity/Pla.java +++ b/src/main/java/com/zy/asrs/entity/Pla.java @@ -261,10 +261,26 @@ @TableField("memo") private String memo; + @TableField("stock_freeze") + private int stockFreeze; + + @TableField("stock_freeze_by") + private String stockFreezeBy; + + @TableField("stock_freeze_date") + private Date stockFreezeDate; + public String getPakinTime$() { if (Cools.isEmpty(this.pakinTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.pakinTime); } + + public String getStockFreezeDate$() { + if (Cools.isEmpty(this.stockFreezeDate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.stockFreezeDate); + } } diff --git a/src/main/java/com/zy/asrs/service/PakoutService.java b/src/main/java/com/zy/asrs/service/PakoutService.java index 7240a23..68ff859 100644 --- a/src/main/java/com/zy/asrs/service/PakoutService.java +++ b/src/main/java/com/zy/asrs/service/PakoutService.java @@ -6,4 +6,6 @@ public interface PakoutService extends IService<Pakout> { void deletePakout(String docNum); + + void deletePakoutByWrkNo(String wrkNo); } diff --git a/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java index 895493e..5e56251 100644 --- a/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java @@ -3,12 +3,14 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.common.Cools; +import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.GlobleParameter; import com.zy.asrs.mapper.PakoutMapper; import com.zy.asrs.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; @@ -83,4 +85,48 @@ throw new RuntimeException("鎷h揣鍗曞垹闄ゅけ璐�"); } } + + @Override + @Transactional + public void deletePakoutByWrkNo(String wrkNo) { + Pakout pakout = this.selectById(wrkNo); + //鏇存柊鍗曟嵁淇℃伅 + if(pakout.getCount() > 0){ + throw new CoolException("璇ユ潯鎷h揣淇℃伅宸插畬鎴愶紝鏃犳硶鍒犻櫎"); + } + OrderDetl orderDetl = orderDetlService.selectById(pakout.getDocId()); + orderDetl.setWorkQty(orderDetl.getWorkQty() - pakout.getAnfme()); + orderDetl.setUpdateTime(new Date()); + orderDetlService.updateById(orderDetl); + + Order order = orderService.selectByNo(pakout.getDocNum()); + List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId()); + //鍒ゆ柇鍗曟嵁鏄惁鏈夋鍦ㄤ綔涓氱殑浠诲姟锛宼rue涓烘病鏈� + boolean flag = true; + for (OrderDetl od : orderDetlList){ + if(od.getWorkQty() + od.getQty() > 0){ + flag = false; + } + } + + if(flag){ + order.setSettle(1L); + order.setUpdateTime(new Date()); + orderService.updateById(order); + } + + //鏇存柊pla淇℃伅 + Pla pla = plaService.selectByBatchAndPackageNo(pakout.getBatch(), pakout.getBarcode()); + pla.setQtyAnfme(pla.getQtyAnfme() - pakout.getAnfme()); + pla.setStatus(GlobleParameter.PLA_STATUS_1); + pla.setModifyTime(new Date()); + plaService.updateById(pla); + + //鏇存柊plaQty淇℃伅 + plaQtyService.deleteById(pakout.getNodeId()); + + //鍒犻櫎鎷h揣鍗� + this.deleteById(wrkNo); + + } } diff --git a/src/main/webapp/static/js/configType/configType.js b/src/main/webapp/static/js/configType/configType.js index fc3a2d6..3ae58db 100644 --- a/src/main/webapp/static/js/configType/configType.js +++ b/src/main/webapp/static/js/configType/configType.js @@ -22,7 +22,7 @@ cols: [[ {type: 'checkbox', fixed: 'left'} ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} - ,{field: 'type', align: 'center',title: '绫诲瀷'} + ,{field: 'type', align: 'center',title: '绫诲瀷',hide:true} ,{field: 'name', align: 'center',title: '鍚嶇О'} ,{field: 'value', align: 'center',title: '鍊�'} ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150} diff --git a/src/main/webapp/static/js/picking/picking.js b/src/main/webapp/static/js/picking/picking.js index 2f1f451..76a4937 100644 --- a/src/main/webapp/static/js/picking/picking.js +++ b/src/main/webapp/static/js/picking/picking.js @@ -127,7 +127,7 @@ cellMinWidth: 100, cols: [[ {type: 'numbers'} - ,{field: 'id', align: 'center',title: 'id', hide:true} + ,{field: 'wrkNo', align: 'center',title: 'id', hide:true} ,{field: 'docNum', align: 'center',title: '鎷h揣鍗曞彿'} ,{field: 'uuid', align: 'center',title: 'uuid'} ,{field: 'locNo', align: 'center',title: '搴撲綅'} @@ -141,6 +141,7 @@ ,{field: 'status$', align: 'center',title: '鐘舵��'} ,{field: 'memo', align: 'center',title: '澶囨敞'} ,{field: 'createBy', align: 'center',title: '', hide:true} + ,{align: 'center', title: '鎿嶄綔', toolbar: '#operateDetl'} ]], request: { pageName: 'curr', @@ -177,6 +178,41 @@ } }); + table.on('tool(lookSSXMTable)', function(obj) { + var data = obj.data; + console.log(data); + switch (obj.event) { + case "delDetl": + layer.confirm('纭畾瑕佸垹闄ゅ悧锛�', { + shade: .1, + skin: 'layui-layer-admin' + }, function (i) { + layer.close(i); + layer.load(2); + $.ajax({ + url: baseUrl+"/pakout/deleteDetl/auth", + headers: {'token': localStorage.getItem('token')}, + data:{ + wrkNo:data.wrkNo + }, + method: 'GET', + success: function (res) { + layer.closeAll('loading'); + if (res.code === 200){ + tableIns.reload({page: {curr: 1}}); + layer.msg(res.msg, {icon: 1}); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + }) + break; + } + }) + // 鎼滅储 form.on('submit(search)', function (data) { pageCurr = 1; diff --git a/src/main/webapp/static/js/pla/plaDetl.js b/src/main/webapp/static/js/pla/plaDetl.js index 92a6405..284a720 100644 --- a/src/main/webapp/static/js/pla/plaDetl.js +++ b/src/main/webapp/static/js/pla/plaDetl.js @@ -25,7 +25,7 @@ ,{field: 'weight', align: 'center',title: '閲嶉噺KG',edit:true} ,{field: 'packageType', align: 'center',title: '鍖呰绫诲瀷',edit:true} ,{field: 'zpalletType', align: 'center',title: '鎵樼洏绫诲瀷',edit:true} - ,{field: 'filmWrap', align: 'center',title: '缂犺啘',edit:true} + ,{field: 'filmWrap', align: 'center',title: '缂犺啘',edit:true,hide:true} ,{field: 'fingerMelting', align: 'center',title: '鐔旀寚,g/10min',edit:true} ,{field: 'water', align: 'center',title: '姘村垎,ppm', hide:true,edit:true} ,{field: 'fusingPoint', align: 'center',title: '鐔旂偣,鈩�',edit:true} @@ -44,14 +44,17 @@ ,{field: 'str5', align: 'center',title: '鍗婄粨鏅舵椂闂�,min',hide:true,edit:true} ,{field: 'str6', align: 'center',title: '缁撴櫠搴�.%',hide:true,edit:true} ,{field: 'massState', align: 'center',title: '璐ㄩ噺鐘舵��',edit:true} - ,{field: 'problem', align: 'center',title: '澶囨敞',edit:true} - ,{field: 'direction', align: 'center',title: '搴旂敤鏂瑰悜',edit:true} - ,{field: 'position', align: 'center',title: '瀛樻斁浣嶇疆',edit:true} - ,{field: 'stash', align: 'center',title: '浠撳簱',edit:true} + ,{field: 'problem', align: 'center',title: '澶囨敞',edit:true,hide:true} + ,{field: 'direction', align: 'center',title: '搴旂敤鏂瑰悜',edit:true,hide:true} + ,{field: 'position', align: 'center',title: '瀛樻斁浣嶇疆',edit:true,hide:true} + ,{field: 'stash', align: 'center',title: '浠撳簱',edit:true,hide:true} ,{field: 'locNo', align: 'center',title: '搴撲綅',edit:true} ,{field: 'weightAnfme', align: 'center',title: '鍓╀綑閲嶉噺锛圞G锛�',edit:true} ,{field: 'qtyAnfme', align: 'center',title: '寰呭嚭搴撻噸閲忥紙KG锛�',hide:true} ,{field: 'status', align: 'center',title: '鐘舵��', templet: setState ,edit:true} + ,{field: 'stockFreeze', align: 'center',title: '搴撳瓨鍐荤粨', templet: '#stockFreezeTpl'} + ,{field: 'stockFreezeBy', align: 'center',title: '鎿嶄綔浜哄憳',hide:true} + ,{field: 'stockFreezeDate$', align: 'center',title: '鎿嶄綔鏃ユ湡',hide:true} ,{align: 'center', title: '娴佽浆鏄庣粏', toolbar: '#tbLook'} // ,{field: 'orderNo', align: 'center',title: '鍗曞彿', hide:true} // ,{field: 'pakoutTime', align: 'center',title: '鍑哄簱鏃堕棿', hide:true} @@ -289,6 +292,63 @@ }) }); } + break; + case 'freezeData': + var data = checkStatus.data; + if (data.length === 0){ + layer.msg('璇烽�夋嫨鏁版嵁'); + } else { + layer.confirm('纭畾鍐荤粨'+(data.length===1?'姝�':data.length)+'鏉℃暟鎹悧', function(){ + $.ajax({ + url: baseUrl+"/pla/updateStockFreeze", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify(data), + contentType:'application/json;charset=UTF-8', + method: 'POST', + traditional:true, + success: function (res) { + if (res.code === 200){ + layer.closeAll(); + tableReload(false); + layer.msg(res.msg,{icon:1}) + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg,{icon:2}) + } + } + }) + }); + } + break; + case 'disFreezeData': + var data = checkStatus.data; + if (data.length === 0){ + layer.msg('璇烽�夋嫨鏁版嵁'); + } else { + layer.confirm('纭畾瑙i櫎'+(data.length===1?'姝�':data.length)+'鏉℃暟鎹殑鍐荤粨鍚�', function(){ + $.ajax({ + url: baseUrl+"/pla/updateStockDisFreeze", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify(data), + contentType:'application/json;charset=UTF-8', + method: 'POST', + traditional:true, + success: function (res) { + if (res.code === 200){ + layer.closeAll(); + tableReload(false); + layer.msg(res.msg,{icon:1}) + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg,{icon:2}) + } + } + }) + }); + } + break; } }) @@ -504,8 +564,12 @@ brand = brand ? brand : data[i].brand; - if( brand != data[i].brand){ + if(brand != data[i].brand){ layer.msg("閫変腑鐨勬槑缁嗕腑鍚湁澶氱鐗屽彿锛岃閲嶆柊閫夋嫨"); + return; + } + if(data[i].stockFreeze === 0){ + layer.msg("閫変腑鐨勬槑缁嗕腑鍚湁鍐荤粨鐨勫簱瀛橈紝璇疯В鍐诲悗鎿嶄綔"); return; } dataSave.push(data[i]); @@ -599,6 +663,42 @@ } }); }) + $(document).on('click','#updateOwner', function () { + let data = table.cache.plaDetl; + let dataSave = []; + let dataOld = []; + for(var i=0; i<data.length; i++){ + if(data[i].LAY_CHECKED){ + data[i].step = 1; + dataSave.push(data[i]); + }else { + dataOld.push(data[i]); + } + } + dataCheck = dataSave; + + if(!dataSave || dataSave.length < 1){ + layer.msg("鏈嬀閫夛紝璇峰厛鍕鹃�夐渶瑕佹洿鏀圭殑搴撳瓨"); + return; + } + + layer.open({ + type: 2, + title: '鍙樻洿涓讳綋', + maxmin: true, + area: ['500px', top.detailHeight], + shadeClose: false, + content: 'updateOwner.html', + success: function(layero, index){ + layer.getChildFrame('#data-detail-submit-edit', index).hide(); + top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false); + layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); + + var iframe = window['layui-layer-iframe' + index]; + iframe.child(dataSave) + } + }); + }) }) diff --git a/src/main/webapp/views/configType/configTypeAdd.html b/src/main/webapp/views/configType/configTypeAdd.html index 208fc83..6db8309 100644 --- a/src/main/webapp/views/configType/configTypeAdd.html +++ b/src/main/webapp/views/configType/configTypeAdd.html @@ -23,6 +23,7 @@ <option value="zpalletType">鎵樼洏绫诲瀷</option> <option value="filmWrap">缂犺啘</option> <option value="allocate">璋冩嫧鍒�</option> + <option value="owner">涓讳綋</option> </select> <!-- <input id="type" class="layui-input" type="select" list="typelist" lay-verify="required" >--> <!-- <datalist id="typelist">--> diff --git a/src/main/webapp/views/picking/picking.html b/src/main/webapp/views/picking/picking.html index c9a5cef..2009633 100644 --- a/src/main/webapp/views/picking/picking.html +++ b/src/main/webapp/views/picking/picking.html @@ -80,6 +80,11 @@ --> </script> +<!-- 鏄庣粏琛ㄦ牸鎿嶄綔鍒� --> +<script type="text/html" id="operateDetl"> + <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="delDetl">鍒犻櫎</a> +</script> + <script type="text/html" id="orderNoTpl"> {{d.docNum}} <!-- {{# if(d.settle > 1 && d.settle !== 3){ }}--> diff --git a/src/main/webapp/views/pla/plaDetl.html b/src/main/webapp/views/pla/plaDetl.html index d314f24..3734a5b 100644 --- a/src/main/webapp/views/pla/plaDetl.html +++ b/src/main/webapp/views/pla/plaDetl.html @@ -114,6 +114,7 @@ <button id="sellout" style="alignment: right; display: none" class="function-btn">鍑哄簱</button> <!-- <button id="pickup" style="alignment: right" class="function-btn">鍙栬揣</button> |--> <button id="returned" style="alignment: right; display: none" class="function-btn">閫�鍥�</button> + <button id="updateOwner" style="alignment: right; display: none" class="function-btn">鍙樻洿涓讳綋</button> </div> <!-- 鎼滅储鏍� --> @@ -206,7 +207,8 @@ <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData" style="display: none">鍒犻櫎</button> <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-update" lay-event="updateData" style="display: none">淇敼</button> <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-viladate" lay-event="viladate" style="display: none">鏍¢獙</button> - + <button class="layui-btn layui-btn-sm layui-btn-danger " id="btn-freeze" lay-event="freezeData" style="display: none">鍐荤粨</button> + <button class="layui-btn layui-btn-sm layui-btn-checked " id="btn-disfreeze" lay-event="disFreezeData" style="display: none">瑙e喕</button> <!-- 鍟嗗搧/鐗╂枡 鏁版嵁涓績 --> <div class="dropdown-menu" style="float: right"> <button id="syncData" style="display: none;" class="layui-btn layui-btn-primary layui-border-black icon-btn layui-btn-sm"> 鏁版嵁鍚屾 <i class="layui-icon layui-icon-drop"></i></button> @@ -225,6 +227,9 @@ </div> </script> +<script type="text/html" id="stockFreezeTpl"> + <input type="checkbox" disabled name="stockFreeze" value="{{d.stockFreeze}}" lay-skin="switch" lay-text="姝e父|鍐荤粨" lay-filter="stockFreezeSwitch" {{ d.stockFreeze === 1 ? 'checked' : '' }}> +</script> <!-- 琛� --> <script type="text/html" id="operate"> diff --git a/src/main/webapp/views/pla/updateOwner.html b/src/main/webapp/views/pla/updateOwner.html new file mode 100644 index 0000000..247328b --- /dev/null +++ b/src/main/webapp/views/pla/updateOwner.html @@ -0,0 +1,121 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title></title> + <meta name="renderer" content="webkit"> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> + <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> + <link rel="stylesheet" href="../../static/css/cool.css" media="all"> + <link rel="stylesheet" href="../../static/css/common.css" media="all"> +</head> +<body> + +<!-- 璇︽儏 --> +<div id="data-detail" class="layer_self_wrap"> + <form id="detail" class="layui-form" style="text-align: center"> + + <div class="layui-inline" style="width:80%;"> + <label class="layui-form-label">鍙樻洿涓讳綋锛�</label> + <div class="layui-input-inline cool-auto-complete"> + <input id="owner" class="layui-input" type="text" style="display: none"> + <input id="ownerV" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" onfocus=this.blur()> + <div class="cool-auto-complete-window"> + <input class="cool-auto-complete-window-input" data-key="configTypeQueryByOwner" data-value="owner" onkeyup="autoLoad(this.getAttribute('data-key'))"> + <select class="cool-auto-complete-window-select" data-key="configTypeQueryByOwnerSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> + </select> + </div> + </div> + </div> + + <div id="data-detail-btn" class="layui-btn-container layui-form-item"> + <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">淇濆瓨</div> + <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">淇敼</div> + <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">鍏抽棴</div> + </div> + + </form> +</div> +</body> +<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> +<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/pla/plaDetl.js" charset="utf-8"></script> +</html> +<script> + var checkData = []; + function child(data){ + checkData = data; + } + + layui.use(['table','laydate', 'form'], function(){ + var form = layui.form; + var layer = layui.layer; + var table = layui.table; + + // 鏁版嵁淇敼鍔ㄤ綔 + form.on('submit(save)', function () { + + for(var i in checkData){ + checkData[i].owner = $('#ownerV').val() ? $('#ownerV').val() : checkData[i].packageType; + checkData[i].step = 2; + } + + $.ajax({ + url: baseUrl+"/pla/update/auth", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify(checkData), + contentType:'application/json;charset=UTF-8', + method: 'POST', + async: false, + success: function (res) { + if (res.code === 200){ + layer.msg("淇敼鎴愬姛"); + tableReload(true); + } else if (res.code === 403){ + layer.msg(res.msg, {icon: 2}) + return; + }else { + layer.msg(res.msg, {icon: 2}) + return; + } + parent.layer.closeAll(); + } + }) + }); + + function tableReload(child) { + var searchData = {}; + $.each($('#search-box [name]').serializeArray(), function() { + searchData[this.name] = this.value; + }); + (child ? parent.tableIns : tableIns).reload({ + where: searchData, + page: { + curr: 1 + }, + done: function (res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + if (res.data.length === 0 && count !== 0) { + tableIns.reload({ + where: searchData, + page: { + curr: pageCurr-1 + } + }); + pageCurr -= 1; + } + limit(child); + } + }); + } + + }) + +</script> + -- Gitblit v1.9.1