From ba100c651a81162a9a9a4533ff4d072f2889171a Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期五, 06 十一月 2026 09:38:46 +0800
Subject: [PATCH] fix(hrm): 考勤统计支持员工姓名搜索;缺卡统计补全(与考勤记录联动)
---
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeService.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 57 insertions(+), 0 deletions(-)
diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeService.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeService.java
index 6ece4cb..9575745 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeService.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeService.java
@@ -84,6 +84,34 @@
List<HrmEmployeeDO> getEmployeeList(Collection<Long> ids);
/**
+ * 鑾峰緱鎸囧畾鐘舵�佺殑鍛樺伐鍒楄〃锛堣繑鍥� DO锛�
+ *
+ * <p>娉ㄦ剰锛氫笉鑳芥妸 null 浼犵粰 {@link #getEmployeeList(Collection)}锛�
+ * MyBatis-Plus 鐨� selectByIds(null) 浼氭姏 "The expression 'coll' evaluated to a null value"銆�
+ *
+ * @param employeeStatus 鍛樺伐鐘舵�侊紝涓� null 鏃舵煡璇㈠叏閮�
+ * @return 鍛樺伐鍒楄〃
+ */
+ List<HrmEmployeeDO> getEmployeeListByStatus(Integer employeeStatus);
+
+ /**
+ * 璋冨矖鐢熸晥锛氭妸鍛樺伐妗f鐨勯儴闂�/宀椾綅鍚屾涓虹洰鏍囬儴闂�/鐩爣宀椾綅
+ *
+ * @param employeeId 鍛樺伐缂栧彿锛坔rm_employee.id锛�
+ * @param targetDeptId 鐩爣閮ㄩ棬缂栧彿锛屼负 null 鏃朵笉鏀�
+ * @param targetPostId 鐩爣宀椾綅缂栧彿锛屼负 null 鏃朵笉鏀�
+ */
+ void syncEmployeeTransfer(Long employeeId, Long targetDeptId, Long targetPostId);
+
+ /**
+ * 绂昏亴鐢熸晥锛氭妸鍛樺伐妗f鐘舵�佺疆涓恒�岀鑱屻��
+ *
+ * @param systemUserId 绯荤粺鐢ㄦ埛缂栧彿锛坔rm_employee.user_id锛屽嵆 system_users.id锛�
+ * @param leaveDate 绂昏亴鏃ユ湡锛屼负 null 鏃跺彇褰撳ぉ
+ */
+ void syncEmployeeResignation(Long systemUserId, java.time.LocalDate leaveDate);
+
+ /**
* 鑾峰緱鎸囧畾鐘舵�佺殑鍛樺伐绠�鍗曞垪琛�
*
* @param employeeStatus 鍛樺伐鐘舵�侊紝涓� null 鏃舵煡璇㈠叏閮�
@@ -99,6 +127,20 @@
*/
HrmEmployeeDO getEmployeeByUserId(Long userId);
+ /** 鏍规嵁鍛樺伐濮撳悕鑾峰彇鍛樺伐 */
+ HrmEmployeeDO getEmployeeByName(String name);
+
+ /**
+ * 鎸夊鍚嶆ā绯婃煡璇㈠憳宸ュ垪琛紙鍒楄〃椤靛鍚嶆悳绱㈢敤锛�
+ *
+ * @param name 濮撳悕鍏抽敭瀛�
+ * @return 鍛樺伐鍒楄〃
+ */
+ List<HrmEmployeeDO> getEmployeeListByNameLike(String name);
+
+ /** 鏍规嵁鍛樺伐濮撳悕鑾峰彇鎵�鏈夊悓鍚嶅憳宸� */
+ List<HrmEmployeeDO> getEmployeeListByName(String name);
+
/**
* 瀵煎叆鍛樺伐鍒楄〃
*
@@ -109,4 +151,19 @@
HrmEmployeeImportRespVO importEmployeeList(List<HrmEmployeeImportExcelVO> importEmployees,
HrmEmployeeImportReqVO importReqVO);
+ /**
+ * 鍛樺伐杞锛氫粎銆屽姵鍔ㄥ悎鍚屻�嶅彲杞锛堝姵鍔″悎鍚屼笉鍙級锛岀姸鎬� 璇曠敤 -> 鍦ㄨ亴锛岃褰曡浆姝f棩鏈�
+ *
+ * @param id 鍛樺伐ID
+ */
+ void regularizeEmployee(Long id);
+
+ /**
+ * 鑾峰緱寰呰浆姝f彁閱掑垪琛細璇曠敤涓�佷笖褰撳墠涓哄姵鍔ㄥ悎鍚屻�佽瘯鐢ㄦ湡鍦� days 澶╁唴鍒版湡鐨勫憳宸�
+ *
+ * @param days 鎻愬墠澶╂暟
+ * @return 鍛樺伐鍒楄〃
+ */
+ List<HrmEmployeeDO> getRegularizeReminderList(Integer days);
+
}
--
Gitblit v1.9.3