From 4e1fc355cdc14c6dd7744992b7167269bc9a344a Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期四, 25 十二月 2025 12:57:51 +0800
Subject: [PATCH] 不在规则内的单据,不支持添加

---
 src/main/resources/mapper/LocDetlMapper.xml |  162 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 98 insertions(+), 64 deletions(-)

diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index e99489c..9309423 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -120,22 +120,22 @@
         </choose>
     </sql>
     <sql id="batchSeqA">
-        <choose>
-            <when test="batch != null and batch != ''">
-                and a.batch = #{batch}
-            </when>
-            <otherwise>
-                and (a.batch IS NULL OR a.batch = '')
-            </otherwise>
-        </choose>
-        <choose>
-            <when test="brand != null and brand != ''">
-                and a.brand = #{brand}
-            </when>
-            <otherwise>
-                and (a.brand IS NULL OR a.brand = '')
-            </otherwise>
-        </choose>
+<!--        <choose>-->
+<!--            <when test="batch != null and batch != ''">-->
+<!--                and a.batch = #{batch}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.batch IS NULL OR a.batch = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
+<!--        <choose>-->
+<!--            <when test="brand != null and brand != ''">-->
+<!--                and a.brand = #{brand}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.brand IS NULL OR a.brand = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
         <choose>
             <when test="standby1 != null and standby1 != ''">
                 and a.standby1 = #{standby1}
@@ -144,46 +144,46 @@
                 and (a.standby1 IS NULL OR a.standby1 = '')
             </otherwise>
         </choose>
-        <choose>
-            <when test="standby2 != null and standby2 != ''">
-                and a.standby2 = #{standby2}
-            </when>
-            <otherwise>
-                and (a.standby2 IS NULL OR a.standby2 = '')
-            </otherwise>
-        </choose>
-        <choose>
-            <when test="standby3 != null and standby3 != ''">
-                and a.standby3 = #{standby3}
-            </when>
-            <otherwise>
-                and (a.standby3 IS NULL OR a.standby3 = '')
-            </otherwise>
-        </choose>
-        <choose>
-            <when test="boxType1 != null and boxType1 != ''">
-                and a.box_type1 = #{boxType1}
-            </when>
-            <otherwise>
-                and (a.box_type1 IS NULL OR a.box_type1 = '')
-            </otherwise>
-        </choose>
-        <choose>
-            <when test="boxType2 != null and boxType2 != ''">
-                and a.box_type2 = #{boxType2}
-            </when>
-            <otherwise>
-                and (a.box_type2 IS NULL OR a.box_type2 = '')
-            </otherwise>
-        </choose>
-        <choose>
-            <when test="boxType3 != null and boxType3 != ''">
-                and a.box_type3 = #{boxType3}
-            </when>
-            <otherwise>
-                and (a.box_type3 IS NULL OR a.box_type3 = '')
-            </otherwise>
-        </choose>
+<!--        <choose>-->
+<!--            <when test="standby2 != null and standby2 != ''">-->
+<!--                and a.standby2 = #{standby2}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.standby2 IS NULL OR a.standby2 = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
+<!--        <choose>-->
+<!--            <when test="standby3 != null and standby3 != ''">-->
+<!--                and a.standby3 = #{standby3}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.standby3 IS NULL OR a.standby3 = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
+<!--        <choose>-->
+<!--            <when test="boxType1 != null and boxType1 != ''">-->
+<!--                and a.box_type1 = #{boxType1}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.box_type1 IS NULL OR a.box_type1 = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
+<!--        <choose>-->
+<!--            <when test="boxType2 != null and boxType2 != ''">-->
+<!--                and a.box_type2 = #{boxType2}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.box_type2 IS NULL OR a.box_type2 = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
+<!--        <choose>-->
+<!--            <when test="boxType3 != null and boxType3 != ''">-->
+<!--                and a.box_type3 = #{boxType3}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (a.box_type3 IS NULL OR a.box_type3 = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
     </sql>
     <sql id="batchSeqNew">
         <choose>
@@ -531,14 +531,6 @@
         where 1=1
         and b.loc_sts = 'F'
         and a.matnr = #{matnr}
-        <!--        <choose>-->
-        <!--            <when test="batch != null and batch != ''">-->
-        <!--                and a.batch = #{batch}-->
-        <!--            </when>-->
-        <!--            <otherwise>-->
-        <!--                and (a.batch IS NULL OR a.batch = '')-->
-        <!--            </otherwise>-->
-        <!--        </choose>-->
         <if test="orderNo != null and orderNo != ''">
             and a.order_no = #{orderNo}
         </if>
@@ -552,6 +544,13 @@
                 #{item}
             </foreach>
         </if>
+        <if test="areaIds != null and areaIds.size > 0">
+            and a.area_id in
+            <foreach item="item" collection="areaIds" index="index"  separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+
 
         order by
         DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
@@ -611,6 +610,41 @@
         desc
     </select>
 
+    <select id="queryStockAllCache" resultMap="BaseResultMap">
+        select a.*
+        from asr_loc_detl a
+        left join asr_loc_cache b on a.loc_no = b.loc_no
+        where 1=1
+        and b.loc_sts = 'F'
+        and a.matnr = #{matnr}
+        <if test="orderNo != null and orderNo != ''">
+            and a.order_no = #{orderNo}
+        </if>
+
+        <include refid="batchSeqA"></include>
+
+
+        <if test="locNos != null and locNos.size > 0">
+            and b.loc_no not in
+            <foreach item="item" collection="locNos" index="index"  separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+        <if test="areaIds != null and areaIds.size > 0">
+            and a.area_id in
+            <foreach item="item" collection="areaIds" index="index"  separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+
+
+        order by
+        DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
+        desc,
+        NEWID()
+
+    </select>
+
     <select id="queryStockAnfme" resultType="java.lang.Double">
         select sum(anfme) as count from man_loc_detl
          where 1=1

--
Gitblit v1.9.1