From d9aab59e3d4c8688eaf00c0d98f6926a218ff57f Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 28 四月 2025 15:28:11 +0800
Subject: [PATCH] 拣货单出库完成,但是库存没减,日志埋点

---
 src/main/resources/mapper/LocDetlMapper.xml |   38 +++++++++++++++++++++++---------------
 1 files changed, 23 insertions(+), 15 deletions(-)

diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 71f512f..58f259c 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -122,6 +122,9 @@
         <if test="crnNo!=null and crnNo!='' ">
             and b.crn_no=#{crnNo}
         </if>
+        <if test="owner!=null and owner!='' ">
+            and a.owner=#{owner}
+        </if>
     </sql>
 
     <select id="getStockOutPage" resultMap="BaseResultMap">
@@ -573,10 +576,11 @@
         ROW_NUMBER() over (order by sum(a.anfme) desc) as row
         , a.matnr
         , sum(a.anfme) as anfme
+        , a.owner
         from asr_loc_detl_all a
         where 1=1
         <include refid="stockOutCondition"></include>
-        group by a.matnr
+        group by a.matnr, a.owner
         ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
     </select>
 
@@ -584,11 +588,11 @@
         select count(1) as count from
         (
         select
-        a.matnr
+        a.matnr, a.owner
         from asr_loc_detl_all a
         where 1=1
         <include refid="stockOutCondition"></include>
-        group by a.matnr
+        group by a.matnr, a.owner
         ) b
     </select>
 
@@ -684,17 +688,19 @@
         FROM
         (
         SELECT
-        loc_no,
+        DISTINCT loc_no,
         locd.matnr,
         locd.maktx,
-        create_time,
+        locd.owner,
+        locd.batch,
+        produce_time as create_time,
+        produce_time,
         locd.specs,
         locd.unit,
         inventory_max,
         inventory_min,
         inventory_age_max,
-        count_anfme,
-        DATEDIFF( DAY, create_time, GETDATE( ) ) AS [diff_time]
+        DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
         FROM
         man_loc_detl locd
         LEFT JOIN (
@@ -709,10 +715,10 @@
         count_anfme
         FROM
         man_mat
-        RIGHT JOIN ( SELECT matnr, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr ) aa ON aa.matnr = man_mat.matnr
+        RIGHT JOIN ( SELECT matnr,batch,owner, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr,batch,owner ) aa ON aa.matnr = man_mat.matnr
         ) warn ON locd.matnr = warn.matnr
         WHERE
-        DATEDIFF( DAY, create_time, GETDATE( ) ) > inventory_age_max
+        DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
         ) t
         WHERE
         1 = 1
@@ -731,17 +737,19 @@
         FROM
         (
         SELECT
-        loc_no,
+        DISTINCT loc_no,
         locd.matnr,
         locd.maktx,
-        create_time,
+        locd.owner,
+        locd.batch,
+        produce_time as create_time,
+        produce_time,
         locd.specs,
         locd.unit,
         inventory_max,
         inventory_min,
         inventory_age_max,
-        count_anfme,
-        DATEDIFF( DAY, create_time, GETDATE( ) ) AS [diff_time]
+        DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
         FROM
         man_loc_detl locd
         LEFT JOIN (
@@ -756,10 +764,10 @@
         count_anfme
         FROM
         man_mat
-        RIGHT JOIN ( SELECT matnr, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr ) aa ON aa.matnr = man_mat.matnr
+        RIGHT JOIN ( SELECT matnr,batch,owner, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr,batch,owner ) aa ON aa.matnr = man_mat.matnr
         ) warn ON locd.matnr = warn.matnr
         WHERE
-        DATEDIFF( DAY, create_time, GETDATE( ) ) > inventory_age_max
+        DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
         ) t
         WHERE
         1 = 1

--
Gitblit v1.9.1