| | |
| | | LEFT JOIN |
| | | sys_dept sd ON sd.dept_id = soj.sys_dept_id |
| | | where 1=1 |
| | | <if test="params.staffOnJobId != null and params.staffOnJobId > 0"> |
| | | AND personal_attendance_records.staff_on_job_id = #{params.staffOnJobId} |
| | | </if> |
| | | <if test="params.deptId != null and params.deptId > 0"> |
| | | AND sys_dept.dept_id = #{params.deptId} |
| | | AND sd.dept_id = #{params.deptId} |
| | | </if> |
| | | <if test="params.date != null"> |
| | | AND personal_attendance_records.date = DATE_FORMAT(#{params.date},'%Y-%m-%d') |
| | | and personal_attendance_records.date >= #{params.date} |
| | | and personal_attendance_records.date < DATE_ADD(DATE(#{params.date}), INTERVAL 1 DAY) |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="selectStaffWithoutAttendanceRecord" resultType="com.ruoyi.staff.pojo.StaffOnJob"> |
| | | SELECT soj.* |
| | | FROM staff_on_job soj |
| | | WHERE soj.status = 1 |
| | | AND DATE(soj.create_time) < #{date} |
| | | AND NOT EXISTS ( |
| | | SELECT 1 |
| | | FROM personal_attendance_records par |
| | | WHERE par.staff_on_job_id = soj.id |
| | | AND par.date = #{date} |
| | | ) |
| | | </select> |
| | | </mapper> |