From 2ded9514aa9a93ee440af0b1437d788fb052028b Mon Sep 17 00:00:00 2001
From: pjb <pjb123456>
Date: 星期六, 23 八月 2025 08:36:59 +0800
Subject: [PATCH] wms功能完善

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index c401b70..651a14f 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -96,6 +96,9 @@
     @Resource
     private OrderDetlPakoutService orderDetlPakoutService;
 
+    @Resource
+    private WrkDetlLogService wrkDetlLogService;
+
     @Override
     @Transactional
     public R WarehouseOutPickMergeV1(WarehouseOutPickMergeParam param, Long hostId, Long userId) {
@@ -1111,4 +1114,47 @@
             throw new CoolException(locDetl.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
         }
     }
+
+    @Override
+    public R getMatInfoByBarcode(String barcode) {
+        WrkDetlLog wrkDetl = wrkDetlLogService.selectOne(new EntityWrapper<WrkDetlLog>().eq("zpallet", barcode).orderBy("io_time", false));
+        if(wrkDetl == null) {
+            return R.parse("璇ユ潯鐮佹病鏈夋煡璇㈠埌鐗╂枡淇℃伅");
+        }
+        return R.ok(wrkDetl);
+    }
+
+    @Override
+    public R barcodeComb(BarcodeCombParam combParams) {
+        String barcode = combParams.getBarcode();
+        BarcodeCombParam.CombMat combParam = combParams.getCombMats().get(0);
+        String matnr = combParam.getMatnr();
+        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",barcode));
+        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",barcode));
+        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",barcode));
+        if (countLoc > 0 || countWrk > 0 || countwait > 0) {
+            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode);
+        }
+
+        Mat mat = matService.selectByMatnr(matnr);
+        if (Cools.isEmpty(mat)) {
+            throw new CoolException(matnr + "鍟嗗搧妗f涓嶅瓨鍦�");
+        }
+
+        Date now = new Date();
+        WaitPakin waitPakin = new WaitPakin();
+        waitPakin.sync(combParam);
+        waitPakin.setZpallet(barcode);   // 鎵樼洏鐮�
+        waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
+        waitPakin.setStatus("Y");    // 鐘舵��
+        waitPakin.setDanger(1); // 鎵嬪姩缁勬嫋鍏ュ簱
+//        waitPakin.setAppeUser(userId);
+        waitPakin.setAppeTime(now);
+//        waitPakin.setModiUser(userId);
+        waitPakin.setModiTime(now);
+        if (!waitPakinService.insert(waitPakin)) {
+            throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
+        }
+        return R.ok("缁勬嫋缁戝畾鎴愬姛");
+    }
 }

--
Gitblit v1.9.1