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