From dca272efbaf315859decfcd339b39f9f647fffad Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期一, 27 三月 2023 10:17:21 +0800
Subject: [PATCH] #
---
src/main/resources/mapper/LocMastMapper.xml | 80 ++++++++++++++++++++++++++++++++++++---
1 files changed, 73 insertions(+), 7 deletions(-)
diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index bec71d6..6e94452 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -62,15 +62,45 @@
<foreach item="item" collection="rows" index="index" separator="," open="(" close=")">
#{item}
</foreach>
+ and loc_no not in ('0100101', '0200101', '0300101', '0400101')
and loc_sts = 'O'
- <if test="locType1 != null">
- and loc_type1 = #{locType1}
- </if>
- /*and loc_no not in ('0100101', '0200101', '0300101', '1200701', '1300701', '1400701', '1900401', '2000401', '2100401')*/
group by ctn_no
) a
where count = #{rowsLen}
order by right(ctn_no, 2) + 0 asc, left(ctn_no, 3) + 0 asc
+ )
+ </select>
+ <select id="queryFreeLocMast" resultMap="BaseResultMap">
+ select
+ *
+ from asr_loc_mast
+ where 1=1
+ and row1 in
+ <foreach item="item" collection="rows" index="index" separator="," open="(" close=")">
+ #{item}
+ </foreach>
+ and ctn_no =
+ (
+ select
+ top 1
+ ctn_no
+ from (
+ select
+ ctn_no,
+ count(1) as count
+ from asr_loc_mast
+ where 1=1
+ and row1 in
+ <foreach item="item" collection="rows" index="index" separator="," open="(" close=")">
+ #{item}
+ </foreach>
+ and loc_no not in ('0100101', '0200101', '0300101', '0400101')
+ and (bay1 = 3 or bay1 = 11 or (bay1 = 7 and row1 = 10))
+ and loc_sts = 'O'
+ group by ctn_no
+ ) a
+ where count = #{rowsLen}
+ order by right(ctn_no, 2) + 0 asc, left(ctn_no, 3) + 0 asc
)
</select>
@@ -79,10 +109,46 @@
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="selectAvailableNearLocDesc" resultMap="BaseResultMap">
+ SELECT TOP 1 * FROM asr_loc_mast WHERE loc_sts IN ('O')
+ <foreach collection="groupLoc" item="loc" index="index" open="AND loc_no IN (" close=")" separator=",">
+ #{loc}
+ </foreach>
+ ORDER BY
+ row1 DESC
+ </select>
+ <select id="selectAvailableNearLocAsc" resultMap="BaseResultMap">
+ SELECT TOP 1 * FROM asr_loc_mast WHERE loc_sts IN ('O') AND loc_no IN
+ <foreach collection="groupOuterLoc" item="loc" index="index" open="(" close=")" separator=",">
+ #{loc}
+ </foreach>
+ ORDER BY
+ row1 ASC
+ </select>
+
+ <select id="selectAllPeakLoc" resultMap="BaseResultMap">
+ SELECT a.*
+ from(
+ SELECT * FROM asr_loc_mast WHERE loc_sts = 'O' AND row1 = 1
+ UNION ALL
+ SELECT * FROM asr_loc_mast WHERE loc_sts = 'O' AND row1 = 8 and bay1 > 7
+ UNION ALL
+ SELECT * FROM asr_loc_mast WHERE loc_sts = 'O' AND row1 = 12
+ UNION ALL
+ SELECT * FROM asr_loc_mast WHERE loc_sts = 'O' AND row1 = 23
+ UNION ALL
+ SELECT * FROM asr_loc_mast WHERE loc_sts = 'O' AND row1 = 18 AND (bay1 = 1 or bay1 = 3 )
+ ) a ORDER BY a.lev1,a.bay1 ASC
+ </select>
+
+ <select id="selectAllLocNotEmpty" resultMap="BaseResultMap">
+ SELECT * FROM asr_loc_mast WHERE loc_sts != 'O' AND loc_no in
+ <foreach collection="groupLoc" item="loc" index="index" open="(" close=")" separator=",">
+ #{loc}
+ </foreach>
+ </select>
+
</mapper>
--
Gitblit v1.9.1