From 07d8f0087dffaa79a45b8a7e6afb067278ab9167 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期一, 06 七月 2026 16:45:06 +0800
Subject: [PATCH] fix(attendance): 修复考勤配置查询和排班逻辑问题

---
 src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml b/src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml
index 9ae20d6..4a15bbf 100644
--- a/src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml
+++ b/src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml
@@ -42,7 +42,7 @@
         order by personal_attendance_records.id desc
     </select>
 
-    <!-- 鏌ヨ鎸囧畾鏃ユ湡娌℃湁鑰冨嫟璁板綍鐨勫湪鑱屽憳宸ワ紙鍦ㄦ寚瀹氭椂闂翠箣鍓嶅叆鑱岀殑锛� -->
+    <!-- 鏌ヨ鎸囧畾鏃ユ湡鏈夋帓鐝紙闈炶鍋囷級浣嗘病鏈夎�冨嫟璁板綍鐨勫湪鑱屽憳宸ワ紝娌℃帓鐝涓轰紤鎭笉鏍囪缂哄嫟 -->
     <select id="selectStaffWithoutAttendanceRecordBeforeTime" resultType="com.ruoyi.staff.pojo.StaffOnJob">
         SELECT soj.*
         FROM staff_on_job soj
@@ -50,8 +50,11 @@
         AND soj.create_time &lt; #{entryDeadline}
         AND EXISTS (
         SELECT 1
-        FROM personal_attendance_location_config palc
-        WHERE palc.sys_dept_id = soj.sys_dept_id
+        FROM personal_shift ps
+        WHERE ps.staff_on_job_id = soj.id
+        AND DATE(ps.work_time) = #{date}
+        AND ps.personal_attendance_location_config_id IS NOT NULL
+        AND ps.personal_attendance_location_config_id != 999
         )
         AND NOT EXISTS (
         SELECT 1

--
Gitblit v1.9.3