From ce5f8a87bb5d411bae67c39b269d879677bb98da Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期日, 08 十一月 2026 19:29:25 +0800
Subject: [PATCH] feat(hrm): 请假导入、加班代申请、批量排班与考勤应出勤重算

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/dal/mysql/approval/HrmResignationApplicationMapper.java |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/dal/mysql/approval/HrmResignationApplicationMapper.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/dal/mysql/approval/HrmResignationApplicationMapper.java
index 82f2bdf..674d5d2 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/dal/mysql/approval/HrmResignationApplicationMapper.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/dal/mysql/approval/HrmResignationApplicationMapper.java
@@ -5,15 +5,27 @@
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
 import cn.iocoder.yudao.module.hrm.controller.admin.approval.vo.HrmResignationApplicationPageReqVO;
 import cn.iocoder.yudao.module.hrm.dal.dataobject.approval.HrmResignationApplicationDO;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import org.apache.ibatis.annotations.Mapper;
+
+import java.time.LocalDate;
+import java.util.List;
 
 /**
  * 绂昏亴鐢宠 Mapper
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 @Mapper
 public interface HrmResignationApplicationMapper extends BaseMapperX<HrmResignationApplicationDO> {
+
+    default void startApproval(Long id, String processInstanceId, Integer status) {
+        update(null, new LambdaUpdateWrapper<HrmResignationApplicationDO>()
+                .eq(HrmResignationApplicationDO::getId, id)
+                .set(HrmResignationApplicationDO::getProcessInstanceId, processInstanceId)
+                .set(HrmResignationApplicationDO::getStatus, status)
+                .set(HrmResignationApplicationDO::getApproveTime, null));
+    }
 
     default PageResult<HrmResignationApplicationDO> selectPage(HrmResignationApplicationPageReqVO reqVO) {
         return selectPage(reqVO, new LambdaQueryWrapperX<HrmResignationApplicationDO>()
@@ -40,4 +52,15 @@
                 .ne(HrmResignationApplicationDO::getStatus, status));
     }
 
+    /**
+     * 鏌ヨ鎸囧畾瀹℃壒鐘舵�佷笅锛岄璁$鑱屾棩鏈熷凡鍒颁笖灏氭湭璁板綍瀹為檯绂昏亴鏃ユ湡鐨勭敵璇�
+     */
+    default List<HrmResignationApplicationDO> selectListByStatusAndExpectedDateLe(Integer status, LocalDate date) {
+        return selectList(new LambdaQueryWrapperX<HrmResignationApplicationDO>()
+                .eq(HrmResignationApplicationDO::getStatus, status)
+                .le(HrmResignationApplicationDO::getExpectedDate, date)
+                .isNull(HrmResignationApplicationDO::getActualDate)
+                .orderByAsc(HrmResignationApplicationDO::getId));
+    }
+
 }

--
Gitblit v1.9.3