From 4ad1f324ab1fd2b51504afc00b43b4ee40f029c2 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 20 二月 2025 09:40:03 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/LocMastMapper.xml |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index 64b64b7..2244412 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -16,6 +16,9 @@
         <result column="lev1" property="lev1" />
         <result column="full_plt" property="fullPlt" />
         <result column="loc_type" property="locType" />
+        <result column="loc_type1" property="locType1" />
+        <result column="loc_type2" property="locType2" />
+        <result column="loc_type3" property="locType3" />
         <result column="out_enable" property="outEnable" />
         <result column="io_time" property="ioTime" />
         <result column="first_time" property="firstTime" />
@@ -30,12 +33,46 @@
         <result column="inv_wh" property="invWh" />
         <result column="mk" property="mk" />
         <result column="barcode" property="barcode" />
-        <result column="Pdc_type" property="PdcType" />
         <result column="ctn_no" property="ctnNo" />
 
     </resultMap>
 
     <select id="queryFreeLocMast" resultMap="BaseResultMap">
-        select top 1 * from asr_loc_mast where row1=#{row} and loc_type='O' order by loc_type desc ,lev1 asc,bay1 asc
+        select top 1 *
+        from asr_loc_mast
+        where row1=#{row}
+        and loc_sts='O'
+        <if test="locType1 != null">
+            and loc_type1 = #{locType1}
+        </if>
+        order by loc_sts desc ,lev1 asc,bay1 asc
+    </select>
+
+    <select id="queryShallowLocFMast" resultMap="BaseResultMap">
+        select * from asr_loc_mast
+        where 1=1
+        and loc_no in (
+         select
+         concat(
+         (
+         case
+         when left(loc_no, 2) = '01' then '02'
+         when left(loc_no, 2) = '04' then '03'
+         when left(loc_no, 2) = '05' then '06'
+         when left(loc_no, 2) = '08' then '07'
+         when left(loc_no, 2) = '09' then '10'
+         when left(loc_no, 2) = '12' then '11'
+         when left(loc_no, 2) = '13' then '14'
+         when left(loc_no, 2) = '16' then '15'
+         when left(loc_no, 2) = '17' then '18'
+         when left(loc_no, 2) = '20' then '19'
+         end)
+         , right(loc_no, 5)) as shallowLocNo
+         from asr_loc_mast
+         where 1=1
+         and loc_sts = 'O'
+         and row1 in (1,4,5,8,9,12,13,16,17,20)
+        )
+        and (loc_sts = 'F' or loc_sts = 'D') and crn_no = #{crnNo}
     </select>
 </mapper>

--
Gitblit v1.9.1