From dc9228656b202a8f1ec7720d78eb0421a94a28c9 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期四, 23 十月 2025 16:20:14 +0800
Subject: [PATCH] 聚乳酸明细增加丙交酯含量,%指标
---
src/main/resources/mapper/LocDetlMapper.xml | 116 ++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 92 insertions(+), 24 deletions(-)
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 10eb31e..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">
@@ -413,7 +416,7 @@
<select id="searchByLike" resultMap="BaseResultMap">
select *
- from asr_loc_detl
+ from asr_loc_detl_merge
where
1 = 1
<if test="orderNo != null and orderNo != ''">
@@ -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,13 +588,81 @@
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, a.owner
+ ) b
+ </select>
+
+<!-- 鏁伴噺棰勮-->
+ <select id="getWarningNumList" resultType="com.zy.asrs.entity.result.LocDetlAll">
+ select * from
+ (
+ select
+ ROW_NUMBER() over (order by sum(a.anfme) desc) as row
+ , a.matnr
+ , sum(a.anfme) as anfme
from asr_loc_detl_all a
where 1=1
<include refid="stockOutCondition"></include>
group by a.matnr
- ) b
+ ) t
+ LEFT JOIN man_mat m ON t.matnr = m.matnr
+ WHERE t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ and t.anfme > m.inventory_max or t.anfme < m.inventory_min
+
+
+<!-- select * from-->
+<!-- (-->
+<!-- select-->
+<!-- ROW_NUMBER() over (order by sum(a.anfme) desc) as row-->
+<!-- , a.matnr-->
+<!-- , sum(a.anfme) as anfme-->
+<!-- ,m.inventory_max-->
+<!-- ,m.inventory_min-->
+<!-- from asr_loc_detl_all a-->
+<!-- LEFT JOIN man_mat m on a.matnr = m.matnr-->
+<!-- where 1=1-->
+<!-- <include refid="stockOutCondition"></include>-->
+<!-- group by a.matnr,m.inventory_max,m.inventory_min-->
+<!-- ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})-->
+<!-- and t.anfme>t.inventory_max or t.anfme < t.inventory_min-->
</select>
+
+ <select id="getWarningNumListCount" parameterType="java.util.Map" resultType="java.lang.Integer">
+<!-- select count(1) from-->
+<!-- (-->
+<!-- select-->
+<!-- ROW_NUMBER() over (order by sum(a.anfme) desc) as row-->
+<!-- , a.matnr-->
+<!-- , sum(a.anfme) as anfme-->
+<!-- ,m.inventory_max-->
+<!-- ,m.inventory_min-->
+<!-- from asr_loc_detl_all a-->
+<!-- LEFT JOIN man_mat m on a.matnr = m.matnr-->
+<!-- where 1=1-->
+<!-- <include refid="stockOutCondition"></include>-->
+<!-- group by a.matnr,m.inventory_max,m.inventory_min-->
+<!-- ) t-->
+
+ select count(1) from
+ (
+ select
+ ROW_NUMBER() over (order by sum(a.anfme) desc) as row
+ , a.matnr
+ , sum(a.anfme) as anfme
+ from asr_loc_detl_all a
+ where 1=1
+ <include refid="stockOutCondition"></include>
+ group by a.matnr
+ ) t
+ LEFT JOIN man_mat m ON t.matnr = m.matnr
+ </select>
+
+
+
<select id="sumAll" resultType="java.lang.Double">
SELECT SUM(anfme) FROM asr_loc_detl_all
@@ -616,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 (
@@ -641,12 +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
- OR count_anfme > inventory_max
- OR count_anfme < inventory_min
+ DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
) t
WHERE
1 = 1
@@ -665,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 (
@@ -690,21 +764,15 @@
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
- OR count_anfme > inventory_max
- OR count_anfme < inventory_min
+ DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
) t
WHERE
1 = 1
<include refid="selectAllWarningSql"></include>
) a
-
-
-
-
</select>
--
Gitblit v1.9.1