From bc20e7dc43b97367b7b70b678e71140a33846ff0 Mon Sep 17 00:00:00 2001
From: tzsk <Administrator@qq.com>
Date: 星期三, 30 七月 2025 22:36:49 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/ViewStayTimeMapper.xml |  178 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 129 insertions(+), 49 deletions(-)

diff --git a/src/main/resources/mapper/ViewStayTimeMapper.xml b/src/main/resources/mapper/ViewStayTimeMapper.xml
index bb44371..176834c 100644
--- a/src/main/resources/mapper/ViewStayTimeMapper.xml
+++ b/src/main/resources/mapper/ViewStayTimeMapper.xml
@@ -1,12 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+		"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zy.asrs.mapper.ReportQueryMapper">
 
-<!-- mapper涓嶆敮鎸乻ql璇彞宓屽鏃讹紝閲囩敤sql鐗囨鍖呭惈鏂瑰紡锛岃В鍐硏ml鏍囩闂 -->
-<sql id="viewStayTimeConditionSql">
+	<!-- mapper涓嶆敮鎸乻ql璇彞宓屽鏃讹紝閲囩敤sql鐗囨鍖呭惈鏂瑰紡锛岃В鍐硏ml鏍囩闂 -->
+	<sql id="viewStayTimeConditionSql">
 		<if test="loc_no!=null and loc_no!='' ">
-			and loc_no like '%' + #{loc_no} + '%'
+			and asr_loc_mast.loc_no like '%' + #{loc_no} + '%'
+		</if>
+		<if test="specs!=null and specs!='' ">
+			and specs like '%' + #{specs} + '%'
 		</if>
 		<if test="matnr!=null and matnr!='' ">
 			and matnr like '%' + #{matnr} + '%'
@@ -37,71 +40,148 @@
 			and appe_time <= #{end_date}
 			]]>
 		</if>
-</sql>
+	</sql>
 
-<!-- 鍒嗛〉鏌ヨ鎵�鏈変俊鎭� -->
-<select id="queryViewStayTimeList" resultType="com.zy.asrs.entity.ViewStayTimeBean">
-	select
-	*
-	from (
+	<!-- 鍒嗛〉鏌ヨ鎵�鏈変俊鎭� -->
+	<select id="queryViewStayTimeList" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="com.zy.asrs.entity.ViewStayTimeBean">
+		select
+		*
+		from (
 		select
 		ROW_NUMBER() over (order by stay_time desc) as row
 		, *
 		from
 		(
-			SELECT
-			GETDATE() AS today
-			, CONVERT(decimal, DATEDIFF(second,asr_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
-			, dbo.asr_loc_detl.*
-			FROM asr_loc_detl
-			INNER JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no
-			where 1=1
-			<include refid="viewStayTimeConditionSql"></include>
+		SELECT
+		GETDATE() AS today
+		, CONVERT(decimal, DATEDIFF(second,asr_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
+		, asr_loc_detl.*
+		FROM asr_loc_detl
+		INNER JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no
+		where 1=1
+		<include refid="viewStayTimeConditionSql"></include>
 		) t
-	) a where a.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
-</select>
+		left join (select matnr as c ,store_max_date,store_max,store_min from man_mat) b
+		on t.matnr = b.c
+		left join (select matnr as f,sum(asr_loc_detl.anfme) as sum_qty from asr_loc_detl group by asr_loc_detl.matnr ) as z
+		on z.f= b.c
 
-<select id="getViewStayTimeCount" parameterType="com.zy.asrs.entity.ViewStayTimeBean"	resultType="Integer">
-	select
-	count(1)
-	from (
+		) a where a.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+	</select>
+
+	<select id="getViewStayTimeCount" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="Integer">
+		select
+		count(1)
+		from (
 		select
 		ROW_NUMBER() over (order by stay_time desc) as row
 		, *
 		from
 		(
-			SELECT
-			GETDATE() AS today
-			, CONVERT(decimal, DATEDIFF(second,asr_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
-			, dbo.asr_loc_detl.*
-			FROM asr_loc_detl
-			INNER JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no
-			where 1=1
-			<include refid="viewStayTimeConditionSql"></include>
+		SELECT
+		GETDATE() AS today
+		, CONVERT(decimal, DATEDIFF(second,asr_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
+		, dbo.asr_loc_detl.*
+		FROM asr_loc_detl
+		INNER JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no
+		where 1=1
+		<include refid="viewStayTimeConditionSql"></include>
 		) t
-	) a
-</select>
+		) a
+	</select>
 
-<!-- 涓嶅垎椤垫煡璇㈡墍鏈変俊鎭紝鐢ㄤ簬excel瀵煎嚭 -->
-<select id="getViewStayTimeAll" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="com.zy.asrs.entity.ViewStayTimeBean">
-	select
-	*
-	from (
+	<!-- 鍒嗛〉鏌ヨAGV鍜屽洓椤瑰簱鎵�鏈変俊鎭� -->
+	<select id="queryAllViewStayTimeList" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="com.zy.asrs.entity.ViewStayTimeBean">
+		select
+		*
+		from (
 		select
 		ROW_NUMBER() over (order by stay_time desc) as row
 		, *
 		from
 		(
-			SELECT
-			GETDATE() AS today
-			, CONVERT(decimal, DATEDIFF(second,asr_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
-			, dbo.asr_loc_detl.*
-			FROM asr_loc_detl
-			INNER JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no
-			where 1=1
-			<include refid="viewStayTimeConditionSql"></include>
+		SELECT
+		GETDATE() AS today
+		, CONVERT(decimal, DATEDIFF(second,all_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
+		, all_loc_detl.*
+		FROM all_loc_detl
+		where 1=1
+		<include refid="viewStayTimeConditionSql"></include>
 		) t
-	) a
-</select>
+		left join (select matnr as c ,store_max_date,store_max,store_min from man_mat) b
+		on t.matnr = b.c
+		left join (select matnr as f,sum(asr_loc_detl.anfme) as sum_qty from asr_loc_detl group by asr_loc_detl.matnr ) as z
+		on z.f= b.c
+
+		) a  where a.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+	</select>
+	<select id="getAllViewStayTimeCount" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="Integer">
+		select
+		count(1)
+		from (
+		select
+		ROW_NUMBER() over (order by stay_time desc) as row
+		, *
+		from
+		(
+		SELECT
+		GETDATE() AS today
+		, CONVERT(decimal, DATEDIFF(second,all_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
+		, all_loc_detl.*
+		FROM all_loc_detl
+		where 1=1
+		<include refid="viewStayTimeConditionSql"></include>
+		) t
+		) a
+	</select>
+
+	<!-- 涓嶅垎椤垫煡璇㈡墍鏈変俊鎭紝鐢ㄤ簬excel瀵煎嚭 -->
+	<select id="getViewStayTimeAll" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="com.zy.asrs.entity.ViewStayTimeBean">
+		select
+		*
+	from (
+			 select
+				 ROW_NUMBER() over (order by stay_time desc) as row
+		, *
+			 from
+				 (
+					 SELECT
+						 GETDATE() AS today
+						  , CONVERT(decimal, DATEDIFF(second,all_loc_detl.appe_time, GETDATE()) / 86400.0, 9) AS stay_time
+,
+ all_loc_detl.*
+					 FROM all_loc_detl
+				 ) t
+					 left join (select matnr as c ,store_max_date,store_max,store_min from man_mat) b
+							   on t.matnr = b.c
+					 left join (select matnr as f,sum(asr_loc_detl.anfme) as sum_qty from asr_loc_detl group by asr_loc_detl.matnr ) as z
+							   on z.f= b.c
+
+
+) a
+
+	</select>
+
+	<!-- 涓嶅垎椤垫煡璇GV鍜屽洓椤瑰簱鎵�鏈変俊鎭紝鐢ㄤ簬excel瀵煎嚭 -->
+	<select id="getAllViewStayTimeAll" parameterType="com.zy.asrs.entity.ViewStayTimeBean" resultType="com.zy.asrs.entity.ViewStayTimeBean">
+		SELECT
+		*
+		FROM
+		(
+		SELECT
+		ROW_NUMBER ( ) OVER ( ORDER BY stay_time DESC ) AS row, *
+		FROM
+		(
+		SELECT
+		GETDATE( ) AS today,
+		CONVERT ( DECIMAL, DATEDIFF( SECOND, all_loc_detl.appe_time, GETDATE( ) ) / 86400.0, 9 ) AS stay_time,
+		dbo.all_loc_detl.*
+		FROM
+		all_loc_detl
+		where 1=1
+		<include refid="viewStayTimeConditionSql"></include>
+		) t
+		) a
+	</select>
 
 </mapper>

--
Gitblit v1.9.1