From 2f16c2e5a23587005e9ad5651f1807e618d999b4 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期五, 06 十一月 2026 09:53:06 +0800
Subject: [PATCH] fix(hrm): 考勤记录支持员工姓名搜索,并全量核对两个模块的所有搜索条件

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordServiceImpl.java |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordServiceImpl.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordServiceImpl.java
index 219195d..c5bd2c8 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordServiceImpl.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordServiceImpl.java
@@ -34,6 +34,8 @@
 import java.time.LocalDateTime;
 import java.time.LocalTime;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.Set;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static cn.iocoder.yudao.module.hrm.enums.ErrorCodeConstants.*;
@@ -60,7 +62,18 @@
 
     @Override
     public PageResult<HrmAttendanceRecordDO> getAttendanceRecordPage(HrmAttendanceRecordPageReqVO pageReqVO) {
-        return attendanceRecordMapper.selectPage(pageReqVO);
+        // 鍛樺伐濮撳悕妯$硦鎼滅储锛氬厛鎸夊鍚嶆煡鍑哄憳宸D闆嗗悎锛屽啀鎸夐泦鍚堣繃婊�
+        // 锛坔rm_attendance_record.user_id 瀛樼殑鏄� hrm_employee.id锛�
+        Set<Long> nameMatchedIds = null;
+        if (StrUtil.isNotBlank(pageReqVO.getUserName())) {
+            List<HrmEmployeeDO> matched = employeeService.getEmployeeListByNameLike(pageReqVO.getUserName().trim());
+            nameMatchedIds = matched.stream().map(HrmEmployeeDO::getId).collect(Collectors.toSet());
+            if (nameMatchedIds.isEmpty()) {
+                // 濮撳悕鎼滀笉鍒颁汉鏃剁洿鎺ヨ繑鍥炵┖锛岄伩鍏嶉��鍖栨垚鏌ュ叏閮�
+                return PageResult.empty();
+            }
+        }
+        return attendanceRecordMapper.selectPage(pageReqVO, nameMatchedIds);
     }
 
     @Override

--
Gitblit v1.9.3