From b76802959d44642215a4c60799134e9a5f50469f Mon Sep 17 00:00:00 2001 From: 王佳豪 <g675230687@126.com> Date: 星期四, 03 六月 2021 14:22:30 +0800 Subject: [PATCH] 宏挺补仓功能 --- src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java | 2 src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java | 15 +++ src/main/webapp/static/js/safeSto/locAllot.js | 125 ++++++++++++++---------------- src/main/java/zy/cloud/wms/manager/controller/WorkController.java | 6 + src/main/webapp/views/safeSto/locAllot.html | 2 src/main/java/zy/cloud/wms/manager/entity/param/AsrsTransferParam.java | 2 src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java | 29 +++++++ src/main/webapp/static/js/common.js | 16 +-- src/main/java/zy/cloud/wms/manager/service/WorkService.java | 2 src/main/webapp/static/js/safeSto/safeSto.js | 29 ------- 10 files changed, 123 insertions(+), 105 deletions(-) diff --git a/src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java b/src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java index 3d66889..b5b0172 100644 --- a/src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java +++ b/src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java @@ -54,6 +54,21 @@ } } + public Result1 stockTransferLocMode(List<StockTransferParam> params) { + try { + String response = new HttpHandler.Builder() + .setUri(asrsBaseUrl) + .setPath("/open/api/stockOut/locMode") + .setJson(JSON.toJSONString(params)) + .build() + .doPost(); + return JSON.parseObject(response, Result1.class); + } catch (IOException e) { + e.printStackTrace(); + return new Result1(500, "鏈嶅姟鍣ㄥ紓甯�", null); + } + } + /* 鑾峰彇鍑哄簱绔欑偣 */ public ResultSite takeSite() { try { diff --git a/src/main/java/zy/cloud/wms/manager/controller/WorkController.java b/src/main/java/zy/cloud/wms/manager/controller/WorkController.java index 5968a24..f14b33e 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/WorkController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/WorkController.java @@ -153,6 +153,12 @@ return workService.asrsStockTransfer(number, getUserId()); } + @RequestMapping("/stock/transfer/locMode") + @ManagerAuth(memo = "搴撳瓨璋冩嫧-绔嬪簱妯″紡") + public R stockTransferLocMode(@RequestBody AsrsTransferParam number) { + return workService.asrsStockTransferLocMode(number, getUserId()); + } + @RequestMapping("/stock/check") @ManagerAuth(memo = "搴撳瓨鐩樼偣") public R stockCheck(@RequestBody StoCheckParam param) { diff --git a/src/main/java/zy/cloud/wms/manager/entity/param/AsrsTransferParam.java b/src/main/java/zy/cloud/wms/manager/entity/param/AsrsTransferParam.java index 1700e90..dab0511 100644 --- a/src/main/java/zy/cloud/wms/manager/entity/param/AsrsTransferParam.java +++ b/src/main/java/zy/cloud/wms/manager/entity/param/AsrsTransferParam.java @@ -12,6 +12,8 @@ private String matnr; + private String locNo; + private Double anfme; private Double safe_qua; diff --git a/src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java b/src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java index 5ca3f7b..9b52a99 100644 --- a/src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java +++ b/src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java @@ -10,6 +10,8 @@ private String matnr; + private String locNo; + private Double anfme; private Double total; diff --git a/src/main/java/zy/cloud/wms/manager/service/WorkService.java b/src/main/java/zy/cloud/wms/manager/service/WorkService.java index a6b41ff..0924fc0 100644 --- a/src/main/java/zy/cloud/wms/manager/service/WorkService.java +++ b/src/main/java/zy/cloud/wms/manager/service/WorkService.java @@ -31,6 +31,8 @@ R asrsStockTransfer(AsrsTransferParam param, Long userId); + R asrsStockTransferLocMode(AsrsTransferParam param, Long userId); + R initOrder(InitOrderParam param, Long userId); R stockCheck(StoCheckParam param, Long userId); diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java index 905d81b..b494987 100644 --- a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java +++ b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java @@ -642,6 +642,35 @@ return R.ok("琛ヤ粨鎴愬姛锛岀瓑寰呯珛搴撹皟鎷�"); } + @Override + public R asrsStockTransferLocMode(AsrsTransferParam param, Long userId) { + if (Cools.isEmpty(param.getNode_id(), param.getMatnr(), param.getSafe_qua(), param.getAmount())) { + return R.error("鏁伴噺閿欒"); + } + Node node = nodeService.selectById(param.getNode_id()); + Mat mat = matService.selectByMatnr(param.getMatnr()); + if (node == null || mat == null) { + return R.error(); + } + double anfme = Arith.subtract(2, param.getSafe_qua(), param.getAmount()); + List<StockTransferParam> params = new ArrayList<>(); + StockTransferParam transferParam = new StockTransferParam(); + transferParam.setMatnr(param.getMatnr()); + transferParam.setAnfme(anfme); + transferParam.setAllotNo(param.getNode_id()+ "_" +param.getMatnr()); + transferParam.setLocNo(param.getLocNo()); + params.add(transferParam); + Result1 result = asrsService.stockTransferLocMode(params); + if (result.getCode() == 500) { + if (Cools.isEmpty(result.getData())) { + throw new CoolException(result.getMsg()); + } else { + throw new CodeCoolException("20001-" + result.getData()); + } + } + + return R.ok("琛ヤ粨鎴愬姛锛岀瓑寰呯珛搴撹皟鎷�"); + } @Override public R stockCheck(StoCheckParam param, Long userId) { diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js index 25d7913..f2e624c 100644 --- a/src/main/webapp/static/js/common.js +++ b/src/main/webapp/static/js/common.js @@ -210,14 +210,12 @@ var popupRight; -function RequestParameter() { - var url = window.location.search; //鑾峰彇url涓�"?"绗﹀悗鐨勫瓧涓� - var theRequest = new Object(); - if (url.indexOf("?") != -1) { - var str = url.substr(1); - var strs = str.split("&"); - for (var i = 0; i < strs.length; i++) { - theRequest[strs[i].split("=")[0]] = (strs[i].split("=")[1]); - } +function RequestParameter(variable) { + var query = window.location.search.substring(1); + var vars = query.split("&"); + for (var i=0;i<vars.length;i++) { + var pair = vars[i].split("="); + if(pair[0] == variable){return pair[1];} } + return(false); } \ No newline at end of file diff --git a/src/main/webapp/static/js/safeSto/locAllot.js b/src/main/webapp/static/js/safeSto/locAllot.js index 68633b1..24d993c 100644 --- a/src/main/webapp/static/js/safeSto/locAllot.js +++ b/src/main/webapp/static/js/safeSto/locAllot.js @@ -1,39 +1,39 @@ var locDetlData = []; var pageCurr; + function getCol() { var cols = [ - {field: 'anfme', align: 'center',title: '鏁伴噺', edit:'text', width: 130, style:'color: blue;font-weight: bold'} - ,{field: 'locNo', align: 'center',title: '搴撲綅鍙�'} - ,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿'} - ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О'} - ,{field: 'lgnum', align: 'center',title: '瑙勬牸'} - ,{field: 'type', align: 'center',title: '鍨嬪彿', hide: true} - ,{field: 'color', align: 'center',title: '鏉$爜', hide: true} - ,{field: 'supplier', align: 'center',title: '鎵瑰彿', hide: true} - ,{field: 'altme', align: 'center',title: '鍗曚綅'} - ,{field: 'warehouse', align: 'center',title: '鍗曟嵁缂栧彿', hide: true} - ,{field: 'bname', align: 'center',title: '瀹㈡埛鍚嶇О', hide: true} - ,{field: 'brand', align: 'center',title: '鍝侀」鏁�', hide: true} - ,{field: 'memo', align: 'center', title: '澶囨敞', hide: true} - ,{field: 'zpallet', align: 'center',title: '鎵樼洏鐮�'} + {field: 'anfme', align: 'center', title: '鏁伴噺', width: 130, style: 'color: blue;font-weight: bold'} + , {field: 'locNo', align: 'center', title: '搴撲綅鍙�'} + , {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿'} + , {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О'} + , {field: 'lgnum', align: 'center', title: '瑙勬牸'} + , {field: 'type', align: 'center', title: '鍨嬪彿', hide: true} + , {field: 'color', align: 'center', title: '鏉$爜', hide: true} + , {field: 'supplier', align: 'center', title: '鎵瑰彿', hide: true} + , {field: 'altme', align: 'center', title: '鍗曚綅'} + , {field: 'warehouse', align: 'center', title: '鍗曟嵁缂栧彿', hide: true} + , {field: 'bname', align: 'center', title: '瀹㈡埛鍚嶇О', hide: true} + , {field: 'brand', align: 'center', title: '鍝侀」鏁�', hide: true} + , {field: 'memo', align: 'center', title: '澶囨敞', hide: true} + , {field: 'zpallet', align: 'center', title: '鎵樼洏鐮�'} ]; - cols.push({fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:80}) + cols.push({fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 80}) return cols; } -layui.use(['table','laydate', 'form'], function() { +layui.use(['table', 'laydate', 'form'], function () { var table = layui.table; var $ = layui.jquery; var layer = layui.layer; var form = layui.form; - var param = RequestParameter(); - debugger + var param = RequestParameter('matnr'); tableIns = table.render({ elem: '#chooseData', url: baseUrl + '/get/asrsLocDetl', where: { - matnr: 'LSH10648050', + matnr: param, }, headers: {token: localStorage.getItem('token')}, // data: [], @@ -55,12 +55,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; - limit(); + pageCurr = curr; getOutBound(); } }); @@ -71,76 +70,68 @@ }); // 鐩戝惉琛屽伐鍏蜂簨浠� - table.on('tool(chooseData)', function(obj){ + table.on('tool(chooseData)', function (obj) { var data = obj.data; + var site = $("#staNoSelect").val(); + var node_id = RequestParameter('node_id'); + var safe_qua = RequestParameter('safe_qua'); switch (obj.event) { case 'stockOut': - alert("鍚姩鍑哄簱"); - break; - } - }); - - // 鐩戝惉澶村伐鍏锋爮浜嬩欢 - table.on('toolbar(chooseData)', function (obj) { - var data = locDetlData; - switch (obj.event) { - case 'outbound': - if (data.length === 0){ - layer.msg('璇峰厛娣诲姞搴撲綅鐗╂枡'); - } else { - var staNo = $("#staNoSelect").val(); - if (staNo === "" || staNo === null){ - layer.msg("璇烽�夋嫨鍑哄簱鍙�"); - return; - } - var locDetls = []; - data.forEach(function(elem) { - locDetls.push({locNo: elem.locNo, matnr: elem.matnr, count: elem.count}); - }); - let param = { - outSite: staNo, - locDetls: locDetls - } + // alert("鍚姩鍑哄簱"); + if (site == '' || site == null || site == undefined) { + layer.msg('璇烽�夋嫨鍑哄簱绔欑偣'); + return; + } + var printData = JSON.stringify(data); + layer.confirm('纭畾瑕佸嚭搴�' + data.locNo + '鍚�?', function (index) { $.ajax({ - url: baseUrl+"/plate/out/start", + url: baseUrl + "/work/stock/transfer/locMode", headers: {'token': localStorage.getItem('token')}, - data: JSON.stringify(param), - contentType:'application/json;charset=UTF-8', + contentType: 'application/json;charset=UTF-8', + data: JSON.stringify({ + node_id: node_id, + matnr: data.matnr, + safe_qua: safe_qua, + amount: data.anfme, + locNo: data.locNo, + }), + dataType: 'json', method: 'POST', success: function (res) { - if (res.code === 200){ - locDetlData = []; - tableIns.reload({data: locDetlData,done:function (res) {limit();getOutBound();}}); - layer.msg(res.msg); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; + if (res.code === 200) { + layer.msg(res.msg, {icon: 1}) + tableIns.reload(); + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; } else { - layer.msg(res.msg) + layer.msg(res.msg, {icon: 2}) } + layer.close(index); } }); - } + layer.close(index); + }); break; } }); // 鑾峰彇鍑哄簱鍙� - function getOutBound(){ + function getOutBound() { $.ajax({ - url: baseUrl+"/available/take/site", + url: baseUrl + "/available/take/site", headers: {'token': localStorage.getItem('token')}, method: 'POST', async: false, success: function (res) { - if (res.code === 200){ + if (res.code === 200) { var tpl = $("#takeSiteSelectTemplate").html(); var template = Handlebars.compile(tpl); var html = template(res); $('#staNoSelect').append(html); form.render('select'); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; - }else { + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; + } else { layer.msg(res.msg) } } diff --git a/src/main/webapp/static/js/safeSto/safeSto.js b/src/main/webapp/static/js/safeSto/safeSto.js index b59490c..0e26f25 100644 --- a/src/main/webapp/static/js/safeSto/safeSto.js +++ b/src/main/webapp/static/js/safeSto/safeSto.js @@ -105,40 +105,13 @@ switch (obj.event) { // 琛ヤ粨 case 'allot': - // layer.confirm(data.node_name +'琛ヤ粨 '+ data.matnr + '锛屾暟閲忥細' + (data.safe_qua - data.amount), function(){ - // var index = layer.load(1, {shade: [0.1,'#000']}); - // $.ajax({ - // url: baseUrl+"/work/stock/transfer", - // headers: {'token': localStorage.getItem('token')}, - // contentType:'application/json;charset=UTF-8', - // data: JSON.stringify({ - // node_id: data.node_id, - // matnr: data.matnr, - // safe_qua: data.safe_qua, - // amount: data.amount - // }), - // dataType:'json', - // method: 'POST', - // success: function (res) { - // if (res.code === 200) { - // layer.msg(res.msg, {icon: 1}) - // $(".layui-laypage-btn")[0].click(); - // } else if (res.code === 403) { - // top.location.href = baseUrl+"/"; - // } else { - // layer.msg(res.msg, {icon: 2}) - // } - // layer.close(index); - // } - // }); - // }); layer.open({ type: 2, title: '琛ヤ粨', offset: '100px', area: ['90%', '80%'], shadeClose: true, - content: 'locAllot.html?matnr=' + data.matnr, + content: 'locAllot.html?matnr=' + data.matnr + '&node_id=' + data.node_id + '&safe_qua=' + data.safe_qua, success: function(layero, index){ } diff --git a/src/main/webapp/views/safeSto/locAllot.html b/src/main/webapp/views/safeSto/locAllot.html index c8ca760..7465d49 100644 --- a/src/main/webapp/views/safeSto/locAllot.html +++ b/src/main/webapp/views/safeSto/locAllot.html @@ -45,7 +45,7 @@ <option value="">璇烽�夋嫨绔欑偣</option> </select> <!-- 2.鍚姩鍑哄簱 --> - <button style="margin-left: 18px" class="layui-btn layui-btn-lg layui-btn-disabled" id="btn-outbound" lay-event="outbound">鍚姩鍑哄簱</button> + <!--<button style="margin-left: 18px" class="layui-btn layui-btn-lg layui-btn-disabled" id="btn-outbound" lay-event="outbound">鍚姩鍑哄簱</button>--> </div> </div> </script> -- Gitblit v1.9.1