| | |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="com.ruoyi.performance.mapper.PerformanceShiftMapper"> |
| | | |
| | | <resultMap id="performanceShiftPageMap" type="com.ruoyi.performance.dto.PerformanceShiftMapDto"> |
| | | <result column="name" property="name"/> |
| | | <resultMap id="performanceShiftMap" type="com.ruoyi.performance.dto.PerformanceShiftMapDto"> |
| | | <id column="id" property="id"/> |
| | | <result column="shift" property="shift"/> |
| | | <result column="work_time" property="workTime"/> |
| | | <result column="annotation_text" property="annotationText"/> |
| | | <result column="user_name" property="userName"/> |
| | | <result column="shift_time" property="shiftTime"/> |
| | | <result column="user_id" property="userId" /> |
| | | <result column="department" property="department" /> |
| | | </resultMap> |
| | | |
| | | <select id="performanceShiftPage" resultMap="performanceShiftPageMap"> |
| | | <select id="performanceShift" resultMap="performanceShiftMap"> |
| | | SELECT |
| | | u2.name name, |
| | | GROUP_CONCAT(s.work_time, ':', s.shift, ':',IFNULL(s.annotation_text,''), ':',s.id order by s.work_time SEPARATOR ';') AS shift_time, |
| | | s.id, |
| | | s.shift, |
| | | s.work_time, |
| | | s.annotation_text, |
| | | u2.name AS user_name, |
| | | u2.id user_id |
| | | FROM performance_shift s |
| | | LEFT JOIN (SELECT distinct u.* from |
| | |
| | | </if> |
| | | ) u2 on u2.id = s.user_id |
| | | <where> |
| | | name is not null |
| | | u2.name is not null |
| | | <if test="firstDayOfMonth != null and lastDayOfMonth != null"> |
| | | AND s.work_time BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} |
| | | </if> |
| | |
| | | and u2.name like concat('%', #{userName}, '%') |
| | | </if> |
| | | </where> |
| | | GROUP BY u2.id |
| | | order by s.create_time |
| | | </select> |
| | | |
| | |
| | | order by s.create_time |
| | | </select> |
| | | |
| | | <select id="performanceShiftYear" resultType="java.util.Map"> |
| | | SELECT |
| | | u2.name name, |
| | | s.user_id, u2.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 |
| | | <select id="performanceShiftYear" resultMap="performanceShiftMap"> |
| | | SELECT distinct |
| | | u2.name AS user_name, |
| | | s.user_id, |
| | | u2.account, |
| | | DATE_FORMAT(s.work_time, '%c') month_num, |
| | | s.shift, |
| | | s.id |
| | | FROM performance_shift s |
| | | LEFT JOIN (SELECT u.* from |
| | | user u |
| | |
| | | and DATE_FORMAT(s.work_time, '%Y') = DATE_FORMAT(#{time}, '%Y' ) |
| | | </if> |
| | | <if test="userName != null and userName != ''"> |
| | | and u.name like concat('%', #{userName}, '%') |
| | | and u2.name like concat('%', #{userName}, '%') |
| | | </if> |
| | | GROUP BY u2.id |
| | | order by s.create_time |
| | | </select> |
| | | |
| | |
| | | order by s.create_time |
| | | </select> |
| | | |
| | | <select id="performanceShiftList" resultMap="performanceShiftPageMap"> |
| | | <select id="performanceShiftList" resultMap="performanceShiftMap"> |
| | | SELECT |
| | | 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 |