| | |
| | | s.shift, |
| | | s.work_time, |
| | | s.annotation_text, |
| | | sd.dict_label AS shift_name, |
| | | u2.name AS user_name, |
| | | u2.id user_id |
| | | FROM performance_shift s |
| | | left join sys_dict_data sd on s.shift = sd.dict_value and sd.dict_type='sys_class_type' |
| | | LEFT JOIN (SELECT distinct u.* from |
| | | user u |
| | | left join department_lims dl on FIND_IN_SET(dl.id,u.depart_lims_id) |
| | |
| | | and u2.name like concat('%', #{userName}, '%') |
| | | </if> |
| | | </where> |
| | | order by s.create_time |
| | | </select> |
| | | |
| | | <select id="performanceShiftYearPage" resultType="map"> |
| | | SELECT |
| | | s.user_id, s.shift |
| | | FROM performance_shift s |
| | | LEFT JOIN (SELECT u.* from |
| | | user u |
| | | left join department_lims dl on FIND_IN_SET(dl.id,u.depart_lims_id) |
| | | where status = '0' |
| | | and del_flag = '0' |
| | | <if test="laboratory != null and laboratory != ''"> |
| | | and dl.name=#{laboratory} |
| | | </if> |
| | | ) u2 on u2.id = s.user_id |
| | | where s.shift is not NULL |
| | | and s.shift != '' |
| | | and name is not null |
| | | <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 u2.name like concat('%', #{userName}, '%') |
| | | </if> |
| | | order by s.create_time |
| | | order by s.work_time |
| | | </select> |
| | | |
| | | <select id="performanceShiftYear" resultMap="performanceShiftMap"> |
| | |
| | | u2.name AS user_name, |
| | | s.user_id, |
| | | u2.account, |
| | | DATE_FORMAT(s.work_time, '%c') month_num, |
| | | sd.dict_label AS shift_name, |
| | | s.work_time, |
| | | s.shift, |
| | | s.id |
| | | FROM performance_shift s |
| | | left join sys_dict_data sd on s.shift = sd.dict_value and sd.dict_type='sys_class_type' |
| | | LEFT JOIN (SELECT u.* from |
| | | user u |
| | | left join department_lims dl on FIND_IN_SET(dl.id,u.depart_lims_id) |
| | |
| | | where s.shift is not NULL |
| | | and s.shift != '' |
| | | and name is not null |
| | | <if test="time != null and time != ''"> |
| | | and DATE_FORMAT(s.work_time, '%Y') = DATE_FORMAT(#{time}, '%Y' ) |
| | | <if test="startDateTime != null and endDateTime != null"> |
| | | and s.work_time between #{startDateTime} and #{endDateTime} |
| | | </if> |
| | | <if test="userName != null and userName != ''"> |
| | | and u2.name like concat('%', #{userName}, '%') |
| | | </if> |
| | | order by s.create_time |
| | | order by s.work_time |
| | | </select> |
| | | |
| | | <select id="performanceShiftYearList" resultType="map"> |
| | |
| | | u.name AS user_name, |
| | | u.account AS person_code, |
| | | st.start_time, |
| | | st.end_time |
| | | st.end_time, |
| | | sd.dict_label AS shift_name, |
| | | ps.annotation_text |
| | | FROM performance_shift ps |
| | | LEFT JOIN user u ON ps.user_id = u.id |
| | | inner JOIN user u ON ps.user_id = u.id |
| | | LEFT JOIN shift_time st ON ps.shift = st.shift |
| | | left join sys_dict_data sd on ps.shift = sd.dict_value AND sd.dict_type='sys_class_type' |
| | | <where> |
| | | <if test="startTime!=null and endTime!=null"> |
| | | AND ps.work_time BETWEEN #{startTime} AND #{endTime} |
| | |
| | | AND (u.account like concat('%',#{keyword},'%') OR u.name like concat('%',#{keyword},'%')) |
| | | </if> |
| | | </where> |
| | | ORDER BY ps.work_time |
| | | ORDER BY ps.work_time,u.sort |
| | | </select> |
| | | </mapper> |