From 4586c8cc13cb147caa01b1cd8c3fa6afea8d5cc0 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 11 八月 2021 10:10:28 +0800
Subject: [PATCH] #

---
 src/main/java/zy/cloud/wms/manager/controller/OpenController.java |   71 +++++++++++++++++++++++++++++------
 1 files changed, 59 insertions(+), 12 deletions(-)

diff --git a/src/main/java/zy/cloud/wms/manager/controller/OpenController.java b/src/main/java/zy/cloud/wms/manager/controller/OpenController.java
index 7362e52..9162971 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/OpenController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/OpenController.java
@@ -4,23 +4,23 @@
 import com.core.common.BaseRes;
 import com.core.common.Cools;
 import com.core.common.R;
+import com.core.common.SnowflakeIdWorker;
 import com.core.exception.CoolException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 import zy.cloud.wms.common.entity.Parameter;
+import zy.cloud.wms.common.model.ErpUpload;
 import zy.cloud.wms.common.model.param.ReplenishDto;
 import zy.cloud.wms.common.model.param.ReplenishParam;
+import zy.cloud.wms.common.service.erp.ErpService;
 import zy.cloud.wms.common.utils.VersionUtils;
 import zy.cloud.wms.common.web.BaseController;
-import zy.cloud.wms.manager.entity.LocDetl;
-import zy.cloud.wms.manager.entity.Mat;
-import zy.cloud.wms.manager.entity.Node;
-import zy.cloud.wms.manager.entity.Prior;
-import zy.cloud.wms.manager.service.LocDetlService;
-import zy.cloud.wms.manager.service.MatService;
-import zy.cloud.wms.manager.service.NodeService;
-import zy.cloud.wms.manager.service.PriorService;
+import zy.cloud.wms.manager.entity.*;
+import zy.cloud.wms.manager.service.*;
 
 import java.util.Date;
 import java.util.List;
@@ -40,10 +40,22 @@
     private MatService matService;
     @Autowired
     private LocDetlService locDetlService;
+    @Autowired
+    private ErpService erpService;
+    @Autowired
+    private PakinService pakinService;
+    @Autowired
+    private SnowflakeIdWorker snowflakeIdWorker;
+
+    @PostMapping("/erp/upload")
+    public R erpUpload(@RequestBody ErpUpload erpUpload){
+        Boolean result = erpService.uploadBill(erpUpload.getDtos(), erpUpload.getDocId(), erpUpload.getDocNumber()).getSuccess();
+        return result ? R.ok() : R.error();
+    }
 
     @PostMapping("/replenish")
     @Transactional
-    public R asrsReplenish(@RequestBody ReplenishParam params){
+    public synchronized R asrsReplenish(@RequestBody ReplenishParam params){
         if (Cools.isEmpty(params.getList())) {
             return R.parse(BaseRes.PARAM);
         }
@@ -51,10 +63,11 @@
         for (ReplenishDto param : params.getList()) {
             Mat mat = matService.selectByMatnr(param.getMatnr());
             List<Prior> priors = priorService.selectList(new EntityWrapper<Prior>().eq("matnr", param.getMatnr()));
+            Node node;
             // 鏈夋帹鑽愯揣浣�
             if (!Cools.isEmpty(priors)) {
                 Prior prior = priors.get(0);
-                Node node = nodeService.selectById(prior.getNodeId());
+                node = nodeService.selectById(prior.getNodeId());
 
                 LocDetl locDetl = locDetlService.getLocDetl(node.getId(), param.getMatnr());
                 if (locDetl == null) {
@@ -80,7 +93,7 @@
 
             // 娌℃湁鎺ㄨ崘璐х墿
             } else {
-                Node node = nodeService.selectByUuid(Parameter.get().getUniNode());
+                node = nodeService.selectByUuid(Parameter.get().getUniNode());
 
                 LocDetl locDetl = locDetlService.getLocDetl(node.getId(), param.getMatnr());
                 if (locDetl == null) {
@@ -104,6 +117,40 @@
                     }
                 }
             }
+
+            // 淇濆瓨鍏ュ簱璁板綍
+            Pakin pakin = new Pakin(
+                    "BC" + String.valueOf(snowflakeIdWorker.nextId()),    // 浠诲姟鍙穂闈炵┖]
+                    null,    // 宸ヤ綔鐘舵��
+                    null,    // 鎵樼洏鍙�
+                    param.getCount(),    // 鍏ュ簱鏁伴噺
+                    node.getId(),    // 鍏宠仈璐т綅[闈炵┖]
+                    node.getUuid(),    // 璐т綅[闈炵┖]
+                    mat.getMatnr(),    // 鍟嗗搧缂栫爜[闈炵┖]
+                    null,    // 鍟嗗搧鍚嶇О
+                    null,    // 鍚嶇О
+                    null,    // 灏虹爜
+                    null,    // 鍨嬪彿
+                    null,    // 鎵瑰彿
+                    null,    // 鍗曚綅
+                    null,    // SKC
+                    null,    // 鍗曟嵁绫诲瀷
+                    null,    // 鍗曟嵁缂栧彿
+                    null,    // 瀹㈡埛鍚嶇О
+                    null,    // 鍝侀」鏁�
+                    null,    // 鏁伴噺
+                    null,    // 閲嶉噺
+                    1,    // 鐘舵��
+                    9527L,    // 娣诲姞浜哄憳
+                    now,    // 娣诲姞鏃堕棿
+                    9527L,    // 淇敼浜哄憳
+                    now,    // 淇敼鏃堕棿
+                    "琛ヤ粨鍏ュ簱[绔嬪簱璧勬枡锛�" + param.getWorkNo() + "]"    // 澶囨敞
+            );
+            VersionUtils.setPakin(pakin, mat);
+            if (!pakinService.insert(pakin)) {
+                throw new CoolException("淇濆瓨鍏ュ簱璁板綍澶辫触");
+            }
         }
         return R.ok();
     }

--
Gitblit v1.9.1