From 48a24a2dd7752e92880a05e620875e360ef812c9 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 22 三月 2021 16:27:55 +0800
Subject: [PATCH] #

---
 src/main/java/zy/cloud/wms/manager/entity/result/PakoutVo.java       |   19 ++++++
 src/main/java/zy/cloud/wms/common/service/asrs/entity/Result1.java   |   28 +++++++++
 src/main/webapp/views/custOrder/custOrder.html                       |    2 
 src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java      |   12 +--
 src/main/webapp/static/js/custOrder/custOrder.js                     |    2 
 src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java |   22 +++---
 src/main/java/zy/cloud/wms/common/service/MainService.java           |   48 +++++++++++++++
 src/main/webapp/static/js/pakout/pakout.js                           |    4 +
 8 files changed, 114 insertions(+), 23 deletions(-)

diff --git a/src/main/java/zy/cloud/wms/common/service/MainService.java b/src/main/java/zy/cloud/wms/common/service/MainService.java
index d1ef20f..21fc4ae 100644
--- a/src/main/java/zy/cloud/wms/common/service/MainService.java
+++ b/src/main/java/zy/cloud/wms/common/service/MainService.java
@@ -11,9 +11,11 @@
 import zy.cloud.wms.common.model.OrderStoDto;
 import zy.cloud.wms.common.service.asrs.AsrsService;
 import zy.cloud.wms.common.service.asrs.entity.Result;
+import zy.cloud.wms.common.service.asrs.entity.Result1;
 import zy.cloud.wms.common.utils.VersionUtils;
 import zy.cloud.wms.manager.entity.*;
 import zy.cloud.wms.manager.entity.param.StockTransferParam;
+import zy.cloud.wms.manager.entity.result.PakoutVo;
 import zy.cloud.wms.manager.service.CustOrderService;
 import zy.cloud.wms.manager.service.LocDetlService;
 import zy.cloud.wms.manager.service.MatService;
@@ -109,9 +111,51 @@
         if (Cools.isEmpty(dto) || Cools.isEmpty(dto.getCustOrders())) {
             return;
         }
-        // 妫�鏌ュ簱瀛樻槸鍚﹁冻澶�
-        locDetlService.checkLocDetlCount(dto.getNumber());
         Date now = new Date();
+        // 妫�鏌ュ簱瀛樻槸鍚﹁冻澶�
+        List<StockTransferParam> transferParams = locDetlService.checkLocDetlCountOfRes(dto.getNumber());
+        if (!Cools.isEmpty(transferParams)) {
+
+//            // 鏌ョ湅绔嬪簱搴撳瓨
+            Result1 result = asrsService.stockTransfer(transferParams);
+            if (result.getCode() == 500) {
+                if (Cools.isEmpty(result.getData())) {
+                    throw new CodeCoolException(result.getMsg());
+                } else {
+                    throw new CodeCoolException("20001-" + String.valueOf(result.getData()));
+                }
+
+            }
+            if (result.getCode() == 200) {
+                List<PakoutVo> res = (List<PakoutVo>) result.getData();
+                for (PakoutVo vo : res) {
+                    // 鍒ゆ柇鐗╂枡鏄惁瀛樺湪
+                    Mat mat = matService.selectByMatnr(vo.getMatnr());
+                    if (null == mat) {
+                        throw new CoolException(vo.getMatnr() + "鐗╂枡灏氭湭鏇存柊銆�" + dto.getNumber() +"鍗曟嵁鍥犳涓柇锛�");
+                    }
+                    Pakout pakout = new Pakout();
+                    pakout.setWrkSts(1L);
+                    pakout.setAnfme(vo.getAnfme());
+                    pakout.setZpallet(vo.getZpallet());
+                    pakout.setLocNo(vo.getLocNo());
+                    pakout.setNodeId(-1L);
+                    pakout.setWrkNo(String.valueOf(snowflakeIdWorker.nextId()));
+                    VersionUtils.setPakout(pakout, mat);
+//                    pakout.setDocId(custOrder.getBTypeId());
+                    pakout.setDocNum(dto.getNumber());    // 鍗曟嵁缂栧彿
+                    pakout.setCreateTime(now);
+                    pakout.setUpdateTime(now);
+                    pakout.setStatus(1);
+                    if (!pakoutService.insert(pakout)) {
+                        throw new CoolException("淇濆瓨鍑哄簱閫氱煡鍗曞け璐�");
+                    }
+                }
+
+            }
+        }
+//        // 妫�鏌ュ簱瀛樻槸鍚﹁冻澶�
+//        locDetlService.checkLocDetlCount(dto.getNumber());
         for (CustOrder custOrder : dto.getCustOrders()) {
             // 鍒ゆ柇鐗╂枡鏄惁瀛樺湪
             Mat mat = matService.selectByMatnr(custOrder.getUserCode());
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 3560d4b..c6590d1 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
@@ -4,6 +4,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import zy.cloud.wms.common.service.asrs.entity.Result;
+import zy.cloud.wms.common.service.asrs.entity.Result1;
 import zy.cloud.wms.manager.entity.param.StockTransferParam;
 import zy.cloud.wms.manager.utils.HttpHandler;
 
@@ -34,7 +35,7 @@
         }
     }
 
-    public Boolean stockTransfer(List<StockTransferParam> params) {
+    public Result1 stockTransfer(List<StockTransferParam> params) {
         try {
             String response = new HttpHandler.Builder()
                     .setUri(asrsBaseUrl)
@@ -42,15 +43,10 @@
                     .setJson(JSON.toJSONString(params))
                     .build()
                     .doPost();
-            Result result = JSON.parseObject(response, Result.class);
-            if (result.getCode() == 200) {
-                return true;
-            } else {
-                return false;
-            }
+            return JSON.parseObject(response, Result1.class);
         } catch (IOException e) {
             e.printStackTrace();
-            return false;
+            return new Result1(500, "鏈嶅姟鍣ㄥ紓甯�", null);
         }
     }
 
diff --git a/src/main/java/zy/cloud/wms/common/service/asrs/entity/Result1.java b/src/main/java/zy/cloud/wms/common/service/asrs/entity/Result1.java
new file mode 100644
index 0000000..cda8c58
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/common/service/asrs/entity/Result1.java
@@ -0,0 +1,28 @@
+package zy.cloud.wms.common.service.asrs.entity;
+
+import lombok.Data;
+import zy.cloud.wms.manager.entity.result.PakoutVo;
+
+import java.util.List;
+
+/**
+ * Created by vincent on 2021/3/20
+ */
+@Data
+public class Result1 {
+
+    private Integer code;
+
+    private String msg;
+
+    private List<PakoutVo> data;
+
+    public Result1() {
+    }
+
+    public Result1(Integer code, String msg, List<PakoutVo> data) {
+        this.code = code;
+        this.msg = msg;
+        this.data = data;
+    }
+}
diff --git a/src/main/java/zy/cloud/wms/manager/entity/result/PakoutVo.java b/src/main/java/zy/cloud/wms/manager/entity/result/PakoutVo.java
new file mode 100644
index 0000000..3860aaf
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/entity/result/PakoutVo.java
@@ -0,0 +1,19 @@
+package zy.cloud.wms.manager.entity.result;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2021/3/22
+ */
+@Data
+public class PakoutVo {
+
+    private String locNo;
+
+    private String matnr;
+
+    private Double anfme;
+
+    private String zpallet;
+
+}
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 74ca754..2f266cc 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
@@ -352,17 +352,17 @@
             }
         }
         if (asrs) {
-            if (asrsService.stockTransfer(params)) {
-                for (StockTransferParam param : params) {
-                    // 淇敼閿�鍞鍗曞緟鍑烘暟閲�
-                    if (!custOrderService.updateQty(number, param.getMatnr(), param.getAnfme())) {
-                        throw new CoolException("淇敼閿�鍞鍗曞緟鍑烘暟閲忓け璐�");
-                    }
-                }
-                return R.ok("搴撳瓨璋冩嫧鎴愬姛");
-            } else {
-                return R.error("绔嬪簱璋冩嫧澶辫触锛岃鑱旂郴绠$悊鍛�");
-            }
+//            if (asrsService.stockTransfer(params)) {
+//                for (StockTransferParam param : params) {
+//                    // 淇敼閿�鍞鍗曞緟鍑烘暟閲�
+//                    if (!custOrderService.updateQty(number, param.getMatnr(), param.getAnfme())) {
+//                        throw new CoolException("淇敼閿�鍞鍗曞緟鍑烘暟閲忓け璐�");
+//                    }
+//                }
+//                return R.ok("搴撳瓨璋冩嫧鎴愬姛");
+//            } else {
+//                return R.error("绔嬪簱璋冩嫧澶辫触锛岃鑱旂郴绠$悊鍛�");
+//            }
         }
         return R.error("鏆備笉缂鸿揣锛屼笉闇�瑕佺珛搴撹皟鎷�");
     }
diff --git a/src/main/webapp/static/js/custOrder/custOrder.js b/src/main/webapp/static/js/custOrder/custOrder.js
index a8160a1..bb150c8 100644
--- a/src/main/webapp/static/js/custOrder/custOrder.js
+++ b/src/main/webapp/static/js/custOrder/custOrder.js
@@ -321,7 +321,7 @@
                     } else if (res.code === 403){
                         top.location.href = baseUrl+"/";
                     } else {
-                        layer.msg(res.msg)
+                        layer.msg(res.msg, {icon: 2})
                     }
                     $(".layui-laypage-btn")[0].click();
                 }
diff --git a/src/main/webapp/static/js/pakout/pakout.js b/src/main/webapp/static/js/pakout/pakout.js
index 10b3708..76957a9 100644
--- a/src/main/webapp/static/js/pakout/pakout.js
+++ b/src/main/webapp/static/js/pakout/pakout.js
@@ -229,7 +229,9 @@
             // 瀹屾垚
             case 'complete':
                 layer.confirm('纭瀹屾垚璇ョ瑪鎷h揣鍗曪紵', {title: '宸ヤ綔鍙凤細'+data.wrkNo, shadeClose: true}, function(){
+                    var loadIndex = layer.load(2);
                     http.post(baseUrl+"/work/hand/control/pakout", {wrkNo: data.wrkNo, type:1}, function (res) {
+                        layer.close(loadIndex);
                         $(".layui-laypage-btn")[0].click();
                         layer.msg(data.wrkNo + res.msg);
                     })
@@ -240,7 +242,9 @@
             // 鍙栨秷
             case 'cancel':
                 layer.confirm('纭鍙栨秷璇ョ瑪鎷h揣鍗曪紵', {title: '宸ヤ綔鍙凤細'+data.wrkNo, shadeClose: true}, function(){
+                    var loadIndex = layer.load(2);
                     http.post(baseUrl+"/work/hand/control/pakout", {wrkNo: data.wrkNo, type:2}, function (res) {
+                        layer.close(loadIndex);
                         $(".layui-laypage-btn")[0].click();
                         layer.msg(data.wrkNo + res.msg);
                     })
diff --git a/src/main/webapp/views/custOrder/custOrder.html b/src/main/webapp/views/custOrder/custOrder.html
index 4b5d3ae..fc73c4d 100644
--- a/src/main/webapp/views/custOrder/custOrder.html
+++ b/src/main/webapp/views/custOrder/custOrder.html
@@ -91,7 +91,7 @@
           {{# if( d.type === 1){ }}
           class="layui-badge layui-badge-blue" ><span style="display: none">{{d.number}}</span>骞充粨</span>
           {{# } else if(d.type === 2){ }}
-          class="layui-badge layui-badge-red" ><span style="display: none">{{d.number}}</span>绔嬪簱</span>
+          class="layui-badge layui-badge-green" ><span style="display: none">{{d.number}}</span>绔嬪簱</span>
           {{# } }}
 </script>
 

--
Gitblit v1.9.1