From e760b8a8ec81b7113a01b98eb2d165dcf84fc1b2 Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期一, 20 四月 2026 13:48:47 +0800
Subject: [PATCH] 对接接口开发

---
 src/main/resources/mapper/LocDetlMapper.xml |   69 +++++++++++++++++++++++-----------
 1 files changed, 47 insertions(+), 22 deletions(-)

diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index a801d3a..7ddf5c9 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -641,29 +641,54 @@
         </if>
     </select>
 
-    <select id="queryInventoryDetails" parameterType="map" resultMap="BaseResultMap">
-        SELECT *
-        FROM asr_loc_detl
-        <where>
-            <if test="locId != null and locId != ''">
-                AND loc_id = #{locId}
-            </if>
-            <if test="matNr != null and matNr != ''">
-                AND mat_nr = #{matNr}
-            </if>
-            <if test="orderNo != null and orderNo != ''">
-                AND order_no = #{orderNo}
-            </if>
-            <if test="planNo != null and planNo != ''">
-                AND plan_no = #{planNo}
-            </if>
-            <if test="batch != null and batch != ''">
-                AND batch = #{batch}
-            </if>
-        </where>
+    <select id="inventory" resultType="java.util.Map">
+        select
+        ld.loc_no as locId,
+        ld.zpallet as palletId,
+        ld.matnr as matNr,
+        coalesce(m.maktx, ld.maktx) as makTx,
+        cast(round(ld.anfme, 4) as decimal(18, 4)) as anfme,
+        coalesce(m.unit, ld.unit) as unit,
+        1 as status,
+        isnull(ld.batch, '') as batch
+        from asr_loc_detl as ld
+        left join asr_loc_mast as lm on ld.loc_no = lm.loc_no
+        left join man_mat as m on ld.matnr = m.matnr
+        where 1 = 1
+        and lm.loc_sts = 'F'
+        <if test="locId != null and locId != ''">
+            and ld.loc_no = #{locId}
+        </if>
+        <if test="matNr != null and matNr != ''">
+            and ld.matnr = #{matNr}
+        </if>
+        <if test="orderNo != null and orderNo != ''">
+            and ld.order_no = #{orderNo}
+        </if>
+        <if test="batch != null and batch != ''">
+            and ld.batch = #{batch}
+        </if>
+        order by ld.loc_no, ld.zpallet, ld.matnr
     </select>
 
-    <select id="queryInventorySummary" resultType="java.lang.Double">
-        SELECT SUM(anfme) FROM asr_loc_detl WHERE matnr = #{s}
+    <select id="invSummary" resultType="java.util.Map">
+        select
+        ld.matnr as matNr,
+        coalesce(max(m.maktx), max(ld.maktx)) as matTx,
+        cast(round(sum(ld.anfme), 4) as decimal(18, 4)) as anfme,
+        coalesce(max(m.unit), max(ld.unit)) as unit
+        from asr_loc_detl as ld
+        left join asr_loc_mast as lm on ld.loc_no = lm.loc_no
+        left join man_mat as m on ld.matnr = m.matnr
+        where 1 = 1
+        and lm.loc_sts = 'F'
+        <if test="matNrs != null and matNrs.size > 0">
+            and ld.matnr in
+            <foreach item="item" collection="matNrs" separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+        group by ld.matnr
+        order by ld.matnr
     </select>
 </mapper>

--
Gitblit v1.9.1