From 826cfd6d1673337b1872632a84443537404917d4 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 21 五月 2024 09:21:11 +0800
Subject: [PATCH] 标准增家筛选
---
performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml | 62 +++++++++++++++++++++++++++++++
1 files changed, 62 insertions(+), 0 deletions(-)
diff --git a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
index 29c9d73..697da8a 100644
--- a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
+++ b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
@@ -6,6 +6,7 @@
<result column="name" property="name"/>
<result column="shift_time" property="shiftTime"/>
<result column="user_id" property="userId" />
+ <result column="department" property="department" />
</resultMap>
<select id="performanceShiftPage" resultMap="performanceShiftPageMap">
@@ -43,4 +44,65 @@
<if test="laboratory != null and laboratory != ''">
</if>
</select>
+
+ <select id="performanceShiftYear" resultType="java.util.Map">
+ SELECT if(u.department is not null and u.department != '', CONCAT(u.name, '锛�', u.department, '锛�'), u.name) name,
+ s.user_id, u.account,
+ DATE_FORMAT(s.work_time, '%c') work_time,
+ GROUP_CONCAT(DATE_FORMAT(s.work_time, '%c'), '锛�', s.shift order by s.work_time SEPARATOR ';') month_str
+ FROM performance_shift s
+ LEFT JOIN user u on u.id = s.user_id
+ where s.shift is not NULL
+ and s.shift != ''
+ <if test="time != null and time != ''">
+ and DATE_FORMAT(s.work_time, '%Y') = DATE_FORMAT(#{time}, '%Y' )
+ </if>
+ <if test="userName != null and userName != ''">
+ and u.name like concat('%', #{userName}, '%')
+ </if>
+ <if test="laboratory != null and laboratory != ''">
+ </if>
+ GROUP BY u.id
+ order by s.work_time
+ </select>
+
+ <select id="performanceShiftYearList" resultType="map">
+ SELECT if(u.department is not null and u.department != '', CONCAT(u.name, '锛�', u.department, '锛�'), u.name) name,
+ s.user_id, u.account,
+ DATE_FORMAT(s.work_time, '%c') work_time,
+ GROUP_CONCAT(DATE_FORMAT(s.work_time, '%c'), '锛�', s.shift order by s.work_time SEPARATOR ';') month_str
+ FROM performance_shift s
+ LEFT JOIN user u on u.id = s.user_id
+ where s.shift is not NULL
+ and s.shift != ''
+ <if test="time != null and time != ''">
+ and DATE_FORMAT(s.work_time, '%Y') = DATE_FORMAT(#{time}, '%Y' )
+ </if>
+ <if test="userName != null and userName != ''">
+ and u.name like concat('%', #{userName}, '%')
+ </if>
+ <if test="laboratory != null and laboratory != ''">
+ </if>
+ GROUP BY u.id
+ order by s.work_time
+ </select>
+
+ <select id="performanceShiftList" resultMap="performanceShiftPageMap">
+ SELECT
+ if(u.department is not null and u.department != '', CONCAT(u.name, '锛�', u.department, '锛�'), u.name) name,
+ GROUP_CONCAT(s.work_time, '锛�', s.shift, '锛�', s.id order by s.work_time SEPARATOR ';') AS shift_time, u.id user_id, u.department
+ FROM performance_shift s
+ LEFT JOIN user u on u.id = s.user_id
+ <where>
+ <if test="time != null and time != ''">
+ and DATE_FORMAT(s.work_time, '%Y-%m') = DATE_FORMAT(#{time}, '%Y-%m' )
+ </if>
+ <if test="userName != null and userName != ''">
+ and u.name like concat('%', #{userName}, '%')
+ </if>
+ <if test="laboratory != null and laboratory != ''">
+ </if>
+ </where>
+ GROUP BY u.id
+ </select>
</mapper>
--
Gitblit v1.9.3