From 78a59eda850857e1bfeb48541f0c64d442877a4d Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期二, 08 四月 2025 11:17:10 +0800
Subject: [PATCH] #实现pda简单入库出库操作
---
src/main/resources/mapper/LocMastMapper.xml | 73 +++++++++++++++++++++++++++++++++---
1 files changed, 66 insertions(+), 7 deletions(-)
diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index 2c261f9..3ed94b1 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -39,18 +39,77 @@
</resultMap>
<select id="queryFreeLocMast" resultMap="BaseResultMap">
- select top 1 *
+ select
+ *
from asr_loc_mast
- where
- row1 in
+ where 1=1
+ and row1 in
<foreach item="item" collection="rows" index="index" separator="," open="(" close=")">
#{item}
</foreach>
- <if test="locType1 != null">
- and loc_type1 = #{locType1}
- </if>
+ 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 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>
+ <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>
+
+ <select id="queryFreeLocMast0" resultMap="BaseResultMap">
+ select top 1 *
+ from asr_loc_mast
+ where row1=#{row}
and loc_sts='O'
- order by loc_sts desc,row1 asc, lev1 asc, bay1 asc
+ order by loc_sts desc ,lev1 asc,bay1 asc
</select>
</mapper>
--
Gitblit v1.9.1