From 40cbcddc5690b44621bc1b39b8111fed8e842d1f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 01 七月 2021 10:41:22 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java |    8 ++++++++
 src/main/java/com/zy/asrs/mapper/LocMastMapper.java            |    3 +++
 src/main/java/com/zy/asrs/service/LocMastService.java          |    7 +++++++
 src/main/java/com/zy/common/service/CommonService.java         |   10 +++++++++-
 4 files changed, 27 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
index 1f8ee39..2df1691 100644
--- a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
@@ -28,4 +28,7 @@
 
     LocMast queryDemoLoc(@Param("crnNo") Integer crnNo);
 
+    @Select("select count(*) as count from asr_loc_mast where 1=1 and loc_sts = 'O' and loc_type1 = #{locType1} and crn_no = #{crnNo}")
+    Integer selectEmptyLocCount(@Param("locType1") Short locType1, @Param("crnNo") Integer crnNo);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/LocMastService.java b/src/main/java/com/zy/asrs/service/LocMastService.java
index 6a8b314..bc45966 100644
--- a/src/main/java/com/zy/asrs/service/LocMastService.java
+++ b/src/main/java/com/zy/asrs/service/LocMastService.java
@@ -38,5 +38,12 @@
      */
     LocMast queryDemoLoc(Integer crn);
 
+    /**
+     * 妫�鏌ュ綋鍓嶅簱浣嶆墍灞炲贩閬撶殑绌哄簱浣嶆暟閲�
+     * @param locMast
+     * @return
+     */
+    Boolean checkEmptyCount(LocMast locMast);
+
 
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
index 634485f..ababf93 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
@@ -44,4 +44,12 @@
         return this.baseMapper.queryDemoLoc(crn);
     }
 
+    @Override
+    public Boolean checkEmptyCount(LocMast locMast) {
+        if (locMast == null) {
+            return false;
+        }
+        return this.baseMapper.selectEmptyLocCount(locMast.getLocType1(), locMast.getCrnNo()) > 1;
+    }
+
 }
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 05dd008..be295e6 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -254,9 +254,17 @@
             if (Utils.isShallowLoc(slaveProperties, curRow)) {
                 Integer deepRow = Utils.getDeepRow(slaveProperties, curRow);
                 locMast = locMastService.queryFreeLocMast(deepRow, locTypeDto.getLocType1());
+                // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
+                if (!locMastService.checkEmptyCount(locMast)) {
+                    locMast = null;
+                }
             }
             if (Cools.isEmpty(locMast)) {
                 locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1());
+                // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
+                if (!locMastService.checkEmptyCount(locMast)) {
+                    locMast = null;
+                }
             }
         }
         if (Cools.isEmpty(locMast)) {
@@ -317,4 +325,4 @@
         }
     }
 
-}
\ No newline at end of file
+}

--
Gitblit v1.9.1