From 5ed5f51d479989d5b2149b09c82b6b3ea495b589 Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期二, 23 七月 2024 16:21:59 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml | 53 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 44 insertions(+), 9 deletions(-) diff --git a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml index 0b702be..1ada6d1 100644 --- a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml +++ b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml @@ -6,25 +6,33 @@ <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"> 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 + if(u2.department is not null and u2.department != '', CONCAT(u2.name, '锛�', u2.department, '锛�'), u2.name) name, + GROUP_CONCAT(s.work_time, '锛�', s.shift, '锛�', s.id order by s.work_time SEPARATOR ';') AS shift_time, u2.id user_id FROM performance_shift s - LEFT JOIN user u on u.id = s.user_id + LEFT JOIN (SELECT u.* from + user u + left join department_lims dl on FIND_IN_SET(dl.id,u.depart_lims_id) + where state=1 + <if test="laboratory != null and laboratory != ''"> + and dl.name=#{laboratory} + </if> + ) u2 on u2.id = s.user_id <where> + name is not null <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 != ''"> + and u2.name like concat('%', #{userName}, '%') </if> </where> - GROUP BY u.id + GROUP BY u2.id + order by s.create_time </select> <select id="performanceShiftYearPage" resultType="map"> @@ -42,6 +50,7 @@ </if> <if test="laboratory != null and laboratory != ''"> </if> + order by s.create_time </select> <select id="performanceShiftYear" resultType="java.util.Map"> @@ -62,7 +71,7 @@ <if test="laboratory != null and laboratory != ''"> </if> GROUP BY u.id - order by s.work_time + order by s.create_time </select> <select id="performanceShiftYearList" resultType="map"> @@ -83,6 +92,32 @@ <if test="laboratory != null and laboratory != ''"> </if> GROUP BY u.id - order by s.work_time + order by s.create_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 + order by s.create_time + </select> + + <select id="seldepLimsId" resultType="java.lang.String"> + select name + from department_lims + where id = #{depLimsId} </select> </mapper> -- Gitblit v1.9.3