From 9ec865af4254180c6f47c85a2ef04dd46f4ca1c4 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期日, 18 八月 2024 16:57:25 +0800
Subject: [PATCH] 一楼贴标机获取数据

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   42 ++++++++++++++++++++++++------------------
 1 files changed, 24 insertions(+), 18 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 1513336..8974d59 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -1167,37 +1167,43 @@
 
     @Override
     @Transactional
-    public void pakoutFhqr(Integer workNo, Integer check) {
+    public R pakoutFhqr(PdckqrParam param) {
+
          // 鑾峰彇宸ヤ綔妗�
-        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", workNo));
+        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode",param.getBarcode()));
         if (wrkMast == null) {
-            throw new CoolException("宸ヤ綔妗d笉瀛樺湪锛�" + workNo);
+            throw new CoolException("宸ヤ綔妗d笉瀛樺湪锛�" + param.getBarcode());
+        }
+        if (wrkMast.getIoType() != 101 || wrkMast.getWrkSts() != 20) {
+            throw new CoolException(wrkMast.getWrkNo() + ",宸ヤ綔妗g被鍨嬶細" + wrkMast.getIoType() + "宸ヤ綔鐘舵�侊細" + wrkMast.getWrkSts() + ",涓嶅尮閰�");
         }
 
-        if (wrkMast.getWrkSts() != 20) {
-            throw new CoolException("宸ヤ綔妗e綋鍓嶇姸鎬佸紓甯革細" + workNo + ",鐘舵�侊細" + wrkMast.getWrkSts());
-        }
+        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+        List<PdckqrParam.Material> materials = param.getMaterials();
 
-        if (check == 1) {
-            // 澶嶆牳纭锛屾洿鏂扮姸鎬佷负15鍑哄簱瀹屾垚鏇存柊
-            wrkMast.setWrkSts(14L);
-            wrkMastService.updateById(wrkMast);
+        boolean isFullyCancelled = compareAndCheckCancellation(wrkDetls, materials);
+        if (isFullyCancelled) {
+                // 澶嶆牳纭锛屾洿鏂扮姸鎬佷负15鍑哄簱瀹屾垚鏇存柊
+                wrkMast.setWrkSts(14L);
+                wrkMastService.updateById(wrkMast);
+        } else {
+            throw new CoolException("鍑哄彛澶嶆牳澶辫触");
         }
-
+        return R.ok("鍑哄彛澶嶆牳鎴愬姛");
     }
 
     @Override
     @Transactional
     public R pdckqr(PdckqrParam param) {
-        WrkMast wrkMast = wrkMastService.selectById(param.getWorkNo());
+        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode",param.getBarcode()));
         if (wrkMast == null) {
-            throw new CoolException("宸ヤ綔妗d笉瀛樺湪锛�" + param.getWorkNo());
+            throw new CoolException("宸ヤ綔妗d笉瀛樺湪锛�" + param.getBarcode());
         }
         if (wrkMast.getIoType() != 107 || wrkMast.getWrkSts() != 2) {
-            throw new CoolException(param.getWorkNo() + "宸ヤ綔妗g被鍨嬶細" + wrkMast.getIoType() + "宸ヤ綔鐘舵�侊細" + wrkMast.getWrkSts() + ",涓嶅尮閰�");
+            throw new CoolException(wrkMast.getWrkNo() + ",宸ヤ綔妗g被鍨嬶細" + wrkMast.getIoType() + "宸ヤ綔鐘舵�侊細" + wrkMast.getWrkSts() + ",涓嶅尮閰�");
         }
 
-        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(param.getWorkNo());
+        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
         List<PdckqrParam.Material> materials = param.getMaterials();
 
         boolean isFullyCancelled = compareAndCheckCancellation(wrkDetls, materials);
@@ -1238,7 +1244,7 @@
             }
 
             // 鎺ㄩ�佺粰gwcs鎵ц鍛戒护
-            openServiceImpl.pushStaNoToGwcs(wrkMast.getSourceStaNo(),wrkMast.getStaNo(),wrkMast.getWrkNo());
+            openServiceImpl.pushStaNoToGwcs(wrkMast.getSourceStaNo(),wrkMast.getStaNo(),wrkMast.getWrkNo(),wrkMast.getBarcode());
 
             return R.ok("鐩樼偣纭鎴愬姛");
 
@@ -1406,7 +1412,7 @@
         }
 
         // 鎺ㄩ�丟WCS鐩爣娑堟伅
-        openServiceImpl.pushStaNoToGwcs(sourceStaNo,dto.getStaNo(),dto.getWorkNo());
+        openServiceImpl.pushStaNoToGwcs(sourceStaNo,dto.getStaNo(),dto.getWorkNo(),barcode);
         return R.ok("鍏ュ簱鍚姩鎴愬姛");
     }
 
@@ -1480,7 +1486,7 @@
             for (WrkDetl p1 : list1) {
                 boolean cancelled = false;
                 for (PdckqrParam.Material p2 : remainingList2) {
-                    if (p1.getBatch().equals(p2.getBoxNo()) && p1.getModel().equals(p2.getRollNo())) { // 鍗峰彿鍜岀鍙风浉鍚�
+                    if (p1.getUnit().equals(p2.getBoxNo()) && p1.getModel().equals(p2.getRollNo())) { // 鍗峰彿鍜岀鍙风浉鍚�
                         remainingList2.remove(p2);
                         cancelled = true;
                         break;

--
Gitblit v1.9.1