From cb68c3e4547653ee7d308aa4da51f31363647a0f Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 23 十一月 2023 18:09:43 +0800
Subject: [PATCH] 自动补货

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   33 +++++++++++++++++++++++----------
 1 files changed, 23 insertions(+), 10 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 a7881e9..801d692 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -92,22 +92,35 @@
             throw new CoolException(param.getBarcode() + "鏁版嵁宸茬粡鍦ㄥ簱");
         }
 
-        //鍒ゆ柇鏂欑鏄惁宸茬粡鍑虹幇鍦ㄥ叆搴撻�氱煡妗c�佸簱瀛樹腑
+        //鍒ゆ柇鏄惁瀛樺湪鏂欑鐮� => 瀛樺湪鏂欑鐮佸垯瑕佹眰鎻愪氦涓婃潵鐨勭墿鏂檒ist蹇呴』鍏ㄩ儴閮芥湁鏂欑鐮�
+        boolean hasContainerCode = false;
+        int containerCodeCount = 0;//鏂欑鐮佹暟閲�
         for (CombParam.CombMat combMat : param.getCombMats()) {
-            if (combMat.getContainerCode() == null) {
+            if (combMat.getContainerCode() != null) {
+                hasContainerCode = true;
+                containerCodeCount++;
                 continue;
             }
+        }
 
-            //鍒ゆ柇鏂欑鏄惁姝e湪鍏ュ簱
-            if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
-                    eq("supp_code", combMat.getContainerCode()).eq("io_status", "N")) > 0) {
-                throw new CoolException(combMat.getContainerCode() + "鏂欑姝e湪杩涜鍏ュ簱");
+        //鍒ゆ柇鏂欑鏄惁宸茬粡鍑虹幇鍦ㄥ叆搴撻�氱煡妗c�佸簱瀛樹腑
+        if (hasContainerCode) {
+            if (containerCodeCount != param.getCombMats().size()) {
+                throw new CoolException(param.getBarcode() + "鎵樼洏鏈�" + (param.getCombMats().size()-containerCodeCount) + "涓湭鎵弿鐨勬枡绠�");
             }
 
-            //鍒ゆ柇鏂欑鏄惁宸茬粡鍦ㄥ簱
-            if (locDetlService.selectCount(new EntityWrapper<LocDetl>()
-                    .eq("supp_code", combMat.getContainerCode())) > 0) {
-                throw new CoolException(combMat.getContainerCode() + "鏂欑宸茬粡鍦ㄥ簱");
+            for (CombParam.CombMat combMat : param.getCombMats()) {
+                //鍒ゆ柇鏂欑鏄惁姝e湪鍏ュ簱
+                if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
+                        eq("supp_code", combMat.getContainerCode()).eq("io_status", "N")) > 0) {
+                    throw new CoolException(combMat.getContainerCode() + "鏂欑姝e湪杩涜鍏ュ簱");
+                }
+
+                //鍒ゆ柇鏂欑鏄惁宸茬粡鍦ㄥ簱
+                if (locDetlService.selectCount(new EntityWrapper<LocDetl>()
+                        .eq("supp_code", combMat.getContainerCode())) > 0) {
+                    throw new CoolException(combMat.getContainerCode() + "鏂欑宸茬粡鍦ㄥ簱");
+                }
             }
         }
 

--
Gitblit v1.9.1