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 | 299 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 287 insertions(+), 12 deletions(-)
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 08dbbe2..58f259c 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -49,6 +49,22 @@
</resultMap>
+ <resultMap id="WarningResultMap" type="com.zy.asrs.entity.LocDetlWarningDTO">
+ <result column="loc_no" property="locNo" />
+ <result column="matnr" property="matnr" />
+ <result column="maktx" property="maktx" />
+ <result column="create_time" property="createTime" />
+ <result column="specs" property="specs" />
+ <result column="inventory_max" property="inventoryMax" />
+ <result column="inventory_min" property="inventoryMin" />
+ <result column="inventory_age_max" property="inventoryAgeMax" />
+ <result column="count_anfme" property="countAnfme" />
+ <result column="diff_time" property="diffTime" />
+ <result column="pageNumber" property="pageNumber" />
+ <result column="pageSize" property="pageSize" />
+ <result column="row" property="row" />
+ </resultMap>
+
<sql id="batchSeq">
<choose>
<when test="batch != null">
@@ -105,6 +121,9 @@
</if>
<if test="crnNo!=null and crnNo!='' ">
and b.crn_no=#{crnNo}
+ </if>
+ <if test="owner!=null and owner!='' ">
+ and a.owner=#{owner}
</if>
</sql>
@@ -219,7 +238,7 @@
ROW_NUMBER() over (order by sum(a.anfme) desc) as row
, a.matnr
, sum(a.anfme) as anfme
- from asr_loc_detl a
+ from asr_loc_detl_all a
where 1=1
group by a.matnr
</select>
@@ -397,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 != ''">
@@ -423,7 +442,6 @@
where 1=1
and b.loc_sts = 'F'
and a.matnr = #{matnr}
- and a.payment = 1
<!-- <choose>-->
<!-- <when test="batch != null and batch != ''">-->
<!-- and a.batch = #{batch}-->
@@ -433,17 +451,17 @@
<!-- </otherwise>-->
<!-- </choose>-->
- <choose>
- <when test="owner != null and owner !=0">
- and a.owner = #{owner}
- </when>
- <otherwise>
- and 1!=1
- </otherwise>
- </choose>
+<!-- <choose>-->
+<!-- <when test="owner != null and owner !=0">-->
+<!-- and a.owner = #{owner}-->
+<!-- </when>-->
+<!-- <otherwise>-->
+<!-- and 1!=1-->
+<!-- </otherwise>-->
+<!-- </choose>-->
order by
- DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
+ a.manu,DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
desc,
NEWID(),
case
@@ -499,6 +517,263 @@
end
desc
</select>
+ <sql id="selectAllSql">
+ <if test="locNo!=null and locNo!='' ">
+ and t.loc_no like '%' + #{locNo} + '%'
+ </if>
+ <if test="matnr != null and matnr !='' ">
+ and t.matnr like '%' + #{matnr} + '%'
+ </if>
+
+ </sql>
+ <select id="selectAllOwner" resultType="com.zy.asrs.entity.result.LocDetlAll" parameterType="com.zy.asrs.entity.result.LocDetlDTO">
+ SELECT * FROM (
+ SELECT ROW_NUMBER() over(order by matnr) as row,* FROM (
+ SELECT * FROM asr_loc_detl_all
+ ) t
+ WHERE 1=1
+ <include refid="selectAllSql"></include>
+ ) a
+ WHERE a.row BETWEEN ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ </select>
+ <select id="selectAllCount" resultType="java.lang.Integer" parameterType="com.zy.asrs.entity.result.LocDetlDTO">
+ SELECT count(*) FROM (
+ SELECT ROW_NUMBER() over(order by matnr) as row,* FROM (
+ SELECT * FROM asr_loc_detl_all
+ ) t
+ WHERE 1=1
+ <include refid="selectAllSql"></include>
+ ) a
+
+ </select>
+ <select id="selectAllPyment" resultType="com.zy.asrs.entity.result.LocDetlAll" parameterType="com.zy.asrs.entity.result.LocDetlDTO">
+ SELECT * FROM (
+ SELECT ROW_NUMBER() over(order by matnr) as row,* FROM (
+ SELECT * FROM asr_loc_detl_all
+ ) t
+ WHERE 1=1
+ <include refid="selectAllSql"></include>
+ ) a
+ WHERE a.row BETWEEN ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ </select>
+
+
+
+ <select id="selectAllPymentcount" resultType="java.lang.Integer" parameterType="com.zy.asrs.entity.result.LocDetlDTO">
+ SELECT count(*) FROM (
+ SELECT ROW_NUMBER() over(order by matnr) as row,* FROM (
+ SELECT * FROM asr_loc_detl_all
+ ) t
+ WHERE 1=1
+ <include refid="selectAllSql"></include>
+ ) a
+
+ </select>
+ <select id="getStockStatisAll" 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
+ , a.owner
+ from asr_loc_detl_all a
+ where 1=1
+ <include refid="stockOutCondition"></include>
+ group by a.matnr, a.owner
+ ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ </select>
+
+ <select id="getStockStatisCountAll" parameterType="java.util.Map" resultType="java.lang.Integer">
+ select count(1) as count from
+ (
+ select
+ 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
+ ) 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
+ </select>
+ <!-- mapper涓嶆敮鎸乻ql璇彞宓屽鏃讹紝閲囩敤sql鐗囨鍖呭惈鏂瑰紡锛岃В鍐硏ml鏍囩闂 -->
+ <sql id="selectAllWarningSql">
+ <if test="locNo!=null and locNo!='' ">
+ and t.loc_no like '%' + #{locNo} + '%'
+ </if>
+ <if test="matnr != null and matnr !='' ">
+ and t.matnr like '%' + #{matnr} + '%'
+ </if>
+
+ </sql>
+
+ <select id="selectAllWarning" resultMap="WarningResultMap" parameterType="com.zy.asrs.entity.LocDetlWarningDTO">
+ SELECT
+ *
+ FROM
+ (
+ SELECT
+ ROW_NUMBER ( ) OVER ( ORDER BY matnr ) AS row,*
+ FROM
+ (
+ SELECT
+ DISTINCT loc_no,
+ locd.matnr,
+ locd.maktx,
+ locd.owner,
+ locd.batch,
+ produce_time as create_time,
+ produce_time,
+ locd.specs,
+ locd.unit,
+ inventory_max,
+ inventory_min,
+ inventory_age_max,
+ DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
+ FROM
+ man_loc_detl locd
+ LEFT JOIN (
+ SELECT
+ man_mat.matnr,
+ maktx,
+ specs,
+ unit,
+ inventory_max,
+ inventory_min,
+ inventory_age_max,
+ count_anfme
+ FROM
+ man_mat
+ 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, produce_time, GETDATE( ) ) > inventory_age_max
+ ) t
+ WHERE
+ 1 = 1
+ <include refid="selectAllWarningSql"></include>
+ ) a
+ WHERE a.row BETWEEN ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+
+ </select>
+ <select id="getAllWarningCount" resultType="java.lang.Integer">
+ SELECT
+ COUNT(1)
+ FROM
+ (
+ SELECT
+ ROW_NUMBER ( ) OVER ( ORDER BY matnr ) AS row,*
+ FROM
+ (
+ SELECT
+ DISTINCT loc_no,
+ locd.matnr,
+ locd.maktx,
+ locd.owner,
+ locd.batch,
+ produce_time as create_time,
+ produce_time,
+ locd.specs,
+ locd.unit,
+ inventory_max,
+ inventory_min,
+ inventory_age_max,
+ DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
+ FROM
+ man_loc_detl locd
+ LEFT JOIN (
+ SELECT
+ man_mat.matnr,
+ maktx,
+ specs,
+ unit,
+ inventory_max,
+ inventory_min,
+ inventory_age_max,
+ count_anfme
+ FROM
+ man_mat
+ 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, produce_time, GETDATE( ) ) > inventory_age_max
+ ) t
+ WHERE
+ 1 = 1
+ <include refid="selectAllWarningSql"></include>
+ ) a
+ </select>
</mapper>
--
Gitblit v1.9.1