From aa2d520a06c371e76ef26c78d426a01fca76a2fc Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期五, 07 二月 2025 14:56:35 +0800
Subject: [PATCH] 1

---
 src/main/resources/mapper/OrderDetlMapper.xml |  164 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 164 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index ee1bf31..e42a436 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -62,6 +62,22 @@
                 and (batch IS NULL OR batch = '')
             </otherwise>
         </choose>
+        <choose>
+            <when test="csocode != null and csocode != ''">
+                and three_code = #{csocode}
+            </when>
+            <otherwise>
+                and (three_code IS NULL OR three_code = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="isocode != null and isocode != ''">
+                and dead_time = #{isocode}
+            </when>
+            <otherwise>
+                and (dead_time IS NULL OR dead_time = '')
+            </otherwise>
+        </choose>
     </select>
 
     <select id="selectItemByOrderNo" resultMap="BaseResultMap">
@@ -72,6 +88,45 @@
         <if test="batch!=null and batch!='' ">
             and batch = #{batch}
         </if>
+        <if test="csocode!=null and csocode!='' ">
+            and three_code = #{csocode}
+        </if>
+        <if test="isocode!=null and isocode!='' ">
+            and dead_time = #{isocode}
+        </if>
+    </select>
+
+    <select id="selectItemByOrderNo2" resultMap="BaseResultMap">
+        select * from man_order_detl
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+        <if test="threeCode!=null and threeCode!='' ">
+            and three_code = #{threeCode}
+        </if>
+
+    </select>
+
+    <select id="selectItemNoneOfBatch" resultMap="BaseResultMap">
+        select top 1 * from man_order_detl
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+    </select>
+
+    <select id="selectItemOfBatch" resultMap="BaseResultMap">
+        select top 1 * from man_order_detl
+        where 1=1
+        and matnr = #{matnr}
+        and batch = #{batch}
     </select>
 
     <select id="selectWorkingDetls" resultMap="BaseResultMap">
@@ -140,6 +195,22 @@
                 and (batch IS NULL OR batch = '')
             </otherwise>
         </choose>
+        <choose>
+            <when test="csocode != null and csocode != ''">
+                and three_code = #{csocode}
+            </when>
+            <otherwise>
+                and (three_code IS NULL OR three_code = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="isocode != null and isocode != ''">
+                and dead_time = #{isocode}
+            </when>
+            <otherwise>
+                and (dead_time IS NULL OR dead_time = '')
+            </otherwise>
+        </choose>
     </update>
 
     <update id="increase">
@@ -156,6 +227,22 @@
                 and (batch IS NULL OR batch = '')
             </otherwise>
         </choose>
+        <choose>
+            <when test="csocode != null and csocode != ''">
+                and three_code = #{csocode}
+            </when>
+            <otherwise>
+                and (three_code IS NULL OR three_code = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="isocode != null and isocode != ''">
+                and dead_time = #{isocode}
+            </when>
+            <otherwise>
+                and (dead_time IS NULL OR dead_time = '')
+            </otherwise>
+        </choose>
     </update>
 
     <update id="decrease">
@@ -170,6 +257,22 @@
             </when>
             <otherwise>
                 and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="csocode != null and csocode != ''">
+                and three_code = #{csocode}
+            </when>
+            <otherwise>
+                and (three_code IS NULL OR three_code = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="isocode != null and isocode != ''">
+                and dead_time = #{isocode}
+            </when>
+            <otherwise>
+                and (dead_time IS NULL OR dead_time = '')
             </otherwise>
         </choose>
     </update>
@@ -198,4 +301,65 @@
         and matnr = #{matnr}
     </select>
 
+    <select id="getPakoutDetlPage" resultMap="BaseResultMap">
+        select * from
+        (
+        select
+        ROW_NUMBER() over (order by mo.create_time desc) as row,
+        mod.*
+        from man_order_detl mod
+        inner join man_order mo on mod.order_id = mo.id
+        inner join man_doc_type mdt on mo.doc_type = mdt.doc_id
+        where 1=1
+        and mo.settle &lt;= 2
+        and mo.status = 1
+        and mdt.pakout = 1
+        <include refid="pakOutPageCondition"></include>
+        ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+    </select>
+
+    <select id="getOrderDetlByDoctype" resultMap="BaseResultMap">
+        select * from
+        (
+            SELECT
+                *
+            FROM
+                man_order_detl mod
+                LEFT JOIN man_order mo ON mo.id = mod.order_id
+            WHERE
+                1 = 1
+              AND mo.doc_type = ?
+        ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+    </select>
+
+    <select id="getOrderDetlByDoctypeCount" parameterType="java.util.Map" resultType="java.lang.Integer">
+        select
+        count(1)
+        from man_order_detl mod
+        inner join man_order mo on mod.order_id = mo.id
+        inner join man_doc_type mdt on mo.doc_type = mdt.doc_id
+        where 1=1
+        and mo.settle &lt;= 2
+        and mo.status = 1
+        and mdt.pakout = 1
+        <include refid="pakOutPageCondition"></include>
+    </select>
+
+    <select id="getReportDetl" resultMap="BaseResultMap">
+        select DISTINCT o.order_no
+        from man_order_detl d
+                 join man_order o on d.id = d.order_id
+        where o.doc_type = #{docType}
+          and d.qty > d.report_qty
+          and d.qty > 0
+    </select>
+
+
+    <select id="listAutoDetl" resultMap="BaseResultMap">
+        select DISTINCT o.order_no
+        from man_order_detl d
+                 join man_order o on d.id = d.order_id
+        where d.dev_no = #{devNo}
+        order by d.create_time asc
+    </select>
 </mapper>

--
Gitblit v1.9.1