From d8c1e461472e198d8e19b7a55a999a0be97d5432 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 12 五月 2022 21:23:57 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/MobileController.java |   76 ++++++++++++++++++++++++++++++++++---
 1 files changed, 69 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index ba76d5c..f182e75 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -4,6 +4,7 @@
 import com.core.annotations.ManagerAuth;
 import com.core.common.Cools;
 import com.core.common.R;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.CombParam;
 import com.zy.asrs.entity.param.MobileAdjustParam;
@@ -11,12 +12,13 @@
 import com.zy.asrs.service.*;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 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 java.util.List;
+import java.util.*;
 
 /**
  * 绉诲姩绔帴鍙f帶鍒跺櫒
@@ -116,17 +118,77 @@
         }
         if (!Cools.isEmpty(matnr)) {
             if (!Cools.isEmpty(staNo)) {
-                List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("sta_no", staNo).eq("wrk_sts", 14L));
-                if (!Cools.isEmpty(wrkMasts)) {
-                    WrkMast wrkMast = wrkMasts.get(0);
-                    List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
-                    return R.ok().add(wrkDetls);
-                }
+                List<WrkDetl> wrkDetls = wrkDetlService.selectPakoutQuery(staNo, matnr);
+                return R.ok().add(wrkDetls);
             }
         }
         return R.ok();
     }
 
+    @RequestMapping("/pakout/query/auth/v2")
+    @ManagerAuth
+    public R pakoutQueryV2(@RequestParam(required = false) String barcode,
+                           @RequestParam(required = false) Integer staNo,
+                           @RequestParam(required = false) String matnr){
+        if (Cools.isEmpty(barcode) && Cools.isEmpty(matnr)) {
+            return R.ok();
+        }
+        if (!Cools.isEmpty(barcode)) {
+            WrkMast wrkMast = wrkMastService.selectByBarcode(barcode);
+            if (wrkMast != null) {
+                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+                // 鍘婚櫎宸插嚭搴撶‘璁ょ殑鏄庣粏
+                wrkDetls.removeIf(wrkDetl -> wrkDetl.getInspect() == 1);
+                return R.ok().add(wrkDetls);
+            }
+        }
+        if (!Cools.isEmpty(matnr)) {
+            List<WrkDetl> wrkDetls = wrkDetlService.selectPakoutQuery(staNo, matnr);
+            return R.ok().add(wrkDetls);
+        }
+        return R.ok();
+    }
+
+    @RequestMapping("/pakout/confirm/auth")
+    @ManagerAuth
+    @Transactional
+    public R pakoutConfirm(@RequestBody List<WrkDetl> list) {
+        if (Cools.isEmpty(list)) {
+            return R.ok();
+        }
+
+        // todo:luxiaotao 鎷f枡鍑哄簱鍙慨鏀瑰伐浣滄。鏄庣粏
+
+
+
+        Set<Integer> wrkNos = new HashSet<>();
+        for (WrkDetl wrkDetl : list) {
+            wrkNos.add(wrkDetl.getWrkNo());
+            wrkDetlService.updateInspect(wrkDetl.getWrkNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+        }
+        for (Integer wrkNo : wrkNos) {
+            WrkMast wrkMast = wrkMastService.selectById(wrkNo);
+            if (wrkMast.getWrkSts() == 14 && (Cools.isEmpty(wrkMast.getInvWh()) || wrkMast.getInvWh().equals("N"))) {
+                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkNo);
+                boolean complete = true;
+                for (WrkDetl wrkDetl : wrkDetls) {
+                    if (wrkDetl.getInspect() == null || wrkDetl.getInspect() == 0) {
+                        complete = false;
+                        break;
+                    }
+                }
+                if (complete) {
+                    wrkMast.setInvWh("Y");
+                    wrkMast.setModiTime(new Date());
+                    if (!wrkMastService.updateById(wrkMast)) {
+                        throw new CoolException("淇敼宸ヤ綔妗�" + wrkNo + "澶辫触");
+                    }
+                }
+            }
+        }
+        return R.ok("瀹屾垚纭");
+    }
+
 
     // 鐩樼偣 ----------------------------------------------------------------------------------------------------
 

--
Gitblit v1.9.1