From dfd61f47ab99e875d6dbac51e96ef27b7d882d51 Mon Sep 17 00:00:00 2001
From: 王佳豪 <g675230687@126.com>
Date: 星期六, 29 五月 2021 11:02:55 +0800
Subject: [PATCH] 库存同步功能

---
 src/main/java/zy/cloud/wms/manager/controller/WorkController.java |  181 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 167 insertions(+), 14 deletions(-)

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 700dd2e..5968a24 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/WorkController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/WorkController.java
@@ -5,21 +5,19 @@
 import com.core.common.BaseRes;
 import com.core.common.Cools;
 import com.core.common.R;
+import com.core.common.SnowflakeIdWorker;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import zy.cloud.wms.common.web.BaseController;
-import zy.cloud.wms.manager.entity.Pakout;
-import zy.cloud.wms.manager.entity.WrkSts;
-import zy.cloud.wms.manager.entity.param.StockConfirmParam;
-import zy.cloud.wms.manager.entity.param.StockInParam;
-import zy.cloud.wms.manager.entity.param.StockOutParam;
-import zy.cloud.wms.manager.service.PakoutService;
-import zy.cloud.wms.manager.service.WorkService;
-import zy.cloud.wms.manager.service.WrkStsService;
+import zy.cloud.wms.manager.entity.*;
+import zy.cloud.wms.manager.entity.param.*;
+import zy.cloud.wms.manager.entity.result.KeyValueVo;
+import zy.cloud.wms.manager.service.*;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -35,6 +33,22 @@
     private PakoutService pakoutService;
     @Autowired
     private WrkStsService wrkStsService;
+    @Autowired
+    private SnowflakeIdWorker snowflakeIdWorker;
+    @Autowired
+    private OrderService orderService;
+
+    @RequestMapping("/stock/pakin")
+    @ManagerAuth(memo = "鍏ュ簱")
+    public R stockPakin(@RequestBody PakinParam number) {
+        return workService.stockPakin(number, getUserId());
+    }
+
+    @RequestMapping("/stock/pakout")
+    @ManagerAuth(memo = "鍑哄簱")
+    public R stockPakout(@RequestBody PakoutParam number) {
+        return workService.stockPakout(number, getUserId());
+    }
 
     @RequestMapping("/stock/in")
     @ManagerAuth(memo = "涓婃灦")
@@ -48,10 +62,22 @@
         return workService.stockOutCheck(number, getUserId());
     }
 
-    @RequestMapping("/stock/out")
-    @ManagerAuth(memo = "鎹¤揣")
+    @RequestMapping("/stock/out/preview")
+    @ManagerAuth(memo = "鎷h揣棰勮")
+    public R stockOutPreview(@RequestBody StockOutParam stockOutParam) {
+        return workService.stockOutPreview(stockOutParam, getUserId());
+    }
+
+    @RequestMapping("/stock/out/create")
+    @ManagerAuth(memo = "鐢熸垚鎷h揣鍗�")
     public R stockOut(@RequestBody StockOutParam stockOutParam) {
-        return workService.stockOut(stockOutParam, getUserId());
+        return workService.stockOutCreate(stockOutParam, getUserId());
+    }
+
+    @RequestMapping("/stock/out/print")
+    @ManagerAuth(memo = "鎷h揣鍗曟墦鍗�")
+    public R stockOutPrint(@RequestBody StockOutParam stockOutParam) {
+        return workService.stockOutPrint(stockOutParam, getUserId());
     }
 
     @RequestMapping("/stock/allot")
@@ -63,13 +89,13 @@
     @RequestMapping("/pakout/get")
     @ManagerAuth(memo = "鑾峰彇鍑哄簱鍗�")
     public R getPakout(@RequestParam String docNumber) {
-        List<Pakout> pakouts = pakoutService.selectList(new EntityWrapper<Pakout>().eq("doc_num", docNumber).eq("wrk_sts", 1));
+        List<Pakout> pakouts = pakoutService.selectList(new EntityWrapper<Pakout>().eq("doc_num", docNumber).in("wrk_sts", 1,2));
         if (Cools.isEmpty(pakouts)) {
             return R.parse(BaseRes.EMPTY);
         }
         Long sts = pakouts.get(0).getWrkSts();
         if (sts == 1) {
-            sts =2L;
+            sts = 2L;
         }
         WrkSts wrkSts = wrkStsService.selectById(sts);
         return R.ok().add(Cools
@@ -82,9 +108,136 @@
     }
 
     @RequestMapping("/stock/out/confirm")
-    @ManagerAuth(memo = "鎹¤揣纭")
+    @ManagerAuth(memo = "鎷h揣纭")
     public R stockOutConfirm(@RequestBody StockConfirmParam param) {
         return workService.stockOutComplete(param, getUserId());
     }
 
+    @RequestMapping("/pakout/init")
+    @ManagerAuth(memo = "鐢熸垚鎷h揣鍗�")
+    public R initPakout(@RequestBody List<InitPakoutParam> params) {
+        return workService.initPakout(params, getUserId());
+    }
+
+    @RequestMapping("/hand/control/pakout")
+    @ManagerAuth(memo = "鎵嬪姩澶勭悊鎷h揣鍗�")
+    public R handControlWrkMast(@RequestParam String wrkNo, @RequestParam Integer type){
+        if (type == 1) {
+            return workService.completePakout(wrkNo, getUserId());
+        } else if (type == 2) {
+            return workService.cancelPakout(wrkNo, getUserId());
+        }
+        return R.ok();
+    }
+
+    @RequestMapping("/orderNo/init")
+    @ManagerAuth(memo = "鐢熸垚鍗曟嵁缂栧彿")
+    public R initOrderNo() {
+        long nextId = snowflakeIdWorker.nextId();
+        String orderNo = "AT-" + String.valueOf(nextId).substring(0, 15);
+        if (orderService.selectByOrderNo(orderNo) != null) {
+            return R.error("鎶辨瓑锛屽崟鎹紪鍙峰凡瀛樺湪");
+        }
+        return R.ok().add(orderNo);
+    }
+
+    @RequestMapping("/order/init")
+    @ManagerAuth(memo = "鐢熸垚璁㈠崟")
+    public R initOrder(@RequestBody InitOrderParam param) {
+        return workService.initOrder(param, getUserId());
+    }
+
+    @RequestMapping("/stock/transfer")
+    @ManagerAuth(memo = "搴撳瓨璋冩嫧")
+    public R stockTransfer(@RequestBody AsrsTransferParam number) {
+        return workService.asrsStockTransfer(number, getUserId());
+    }
+
+    @RequestMapping("/stock/check")
+    @ManagerAuth(memo = "搴撳瓨鐩樼偣")
+    public R stockCheck(@RequestBody StoCheckParam param) {
+        return workService.stockCheck(param, getUserId());
+    }
+
+    @RequestMapping("/stock/check/auditing")
+    @ManagerAuth(memo = "鐩樼偣璁板綍瀹℃牳")
+    public R checkAuditing(@RequestParam Long checkId) {
+        return workService.stockCheckAuditing(checkId, getUserId());
+    }
+
+    @RequestMapping("/stock/checks/auditing")
+    @ManagerAuth(memo = "鐩樼偣璁板綍鎵归噺瀹℃牳")
+    public R checksAuditing(@RequestParam(value = "checkIds[]") Long[] checkIds) {
+        int success = 0;
+        for (Long checkId : checkIds) {
+            R r = workService.stockCheckAuditing(checkId, getUserId());
+            if (String.valueOf(r.get("code")).equals("200")) {
+                success ++;
+            }
+        }
+        return R.ok("瀹℃牳鎴愬姛鏁伴噺锛�" + success);
+    }
+
+    /******************************************************************************************************/
+
+    @Autowired
+    private DocTypeService docTypeService;
+    @Autowired
+    private CstmrService cstmrService;
+    @Autowired
+    private ItemService itemService;
+
+    // 鑾峰彇鎵�鏈夊崟鎹被鍨�
+    @RequestMapping("/docType/all/get")
+    @ManagerAuth
+    public R getDocTypeData() {
+        List<DocType> docTypes = docTypeService.selectList(new EntityWrapper<DocType>().eq("status", 1).orderBy("create_time", false));
+        return R.ok().add(docTypes);
+    }
+
+    // 鑾峰彇鎵�鏈夊鎴�
+    @RequestMapping("/cstmr/all/get")
+    @ManagerAuth
+    public R getCstmrData() {
+        List<Cstmr> cstmrs = cstmrService.selectList(new EntityWrapper<Cstmr>().eq("status", 1).orderBy("create_time", false));
+        return R.ok().add(cstmrs);
+    }
+
+    // 鑾峰彇鎵�鏈夊鎴� [閿�煎鐗圿
+    @RequestMapping("/cstmr/all/get/kv")
+    @ManagerAuth
+    public R getCstmrDataKV() {
+        List<Cstmr> cstmrs = cstmrService.selectList(new EntityWrapper<Cstmr>().eq("status", 1).orderBy("create_time", false));
+        List<KeyValueVo> valueVos = new ArrayList<>();
+        for (Cstmr cstmr : cstmrs) {
+            KeyValueVo vo = new KeyValueVo();
+            vo.setName(cstmr.getName());
+            vo.setValue(cstmr.getId());
+            valueVos.add(vo);
+        }
+        return R.ok().add(valueVos);
+    }
+
+    // 鑾峰彇鎵�鏈夐」鐩�
+    @RequestMapping("/item/all/get")
+    @ManagerAuth
+    public R getItemData() {
+        List<Item> items = itemService.selectList(new EntityWrapper<Item>().eq("status", 1).orderBy("create_time", false));
+        return R.ok().add(items);
+    }
+    // 鑾峰彇鎵�鏈夐」鐩�
+    @RequestMapping("/item/all/get/kv")
+    @ManagerAuth
+    public R getItemDataKV() {
+        List<Item> items = itemService.selectList(new EntityWrapper<Item>().eq("status", 1).orderBy("create_time", false));
+        List<KeyValueVo> valueVos = new ArrayList<>();
+        for (Item item : items) {
+            KeyValueVo vo = new KeyValueVo();
+            vo.setName(item.getName());
+            vo.setValue(item.getId());
+            valueVos.add(vo);
+        }
+        return R.ok().add(valueVos);
+    }
+
 }

--
Gitblit v1.9.1