From a5381945bfbafbdd2d2d4703500620f0f5f5d413 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 16 三月 2026 10:07:29 +0800
Subject: [PATCH] #erp接口对接

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

diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index d41392b..800c321 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -336,5 +336,60 @@
         INNER JOIN man_mat b ON a.matnr=#{matnrOld} AND b.matnr=#{matnr};
     </update>
 
+    <select id="mesInventoryDetails" resultType="java.util.HashMap">
+        select
+            ld.loc_no as locId,
+            'WH01' as wareHouseId,
+            '浠撳簱1' as wareHouseName,
+            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 ld
+        left join asr_loc_mast lm on ld.loc_no = lm.loc_no
+        left join man_mat 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="mesInventorySummary" resultType="java.util.HashMap">
+        select
+            'WH01' as wareHouseId,
+            '浠撳簱1' as wareHouseName,
+            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 ld
+        left join asr_loc_mast lm on ld.loc_no = lm.loc_no
+        left join man_mat 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