From 2a192abbbca7adce3571ed4a9f4f94b847ff8c94 Mon Sep 17 00:00:00 2001
From: yubo <autumnal_wind@yeah.net>
Date: 星期六, 11 四月 2026 20:38:00 +0800
Subject: [PATCH] refactor(hr): 重构员工基本信息导入逻辑提升代码可维护性

---
 febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpContractInfoMapper.java |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpContractInfoMapper.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpContractInfoMapper.java
index ac1c4c5..6c45bd8 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpContractInfoMapper.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpContractInfoMapper.java
@@ -1,13 +1,11 @@
 package cc.mrbird.febs.server.hr.mapper;
 
 import cc.mrbird.febs.server.hr.entity.EmpContractInfo;
-
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Update;
 
@@ -118,4 +116,30 @@
             " WHERE contractId=#{contractId}" +
             "</script>")
     int updateEmpContractRemind(@Param("contractId") Long contractId);
+
+    /**
+     * UNION查询:即将到期 + 已到期未续签的合同
+     *
+     * @param page 分页参数
+     * @param sqlSegment1 即将到期的查询条件SQL
+     * @param sqlSegment2 已到期未续签的查询条件SQL
+     * @return 分页结果
+     */
+    IPage<EmpContractInfo> selectUnionPageVo(
+            @Param("page") Page<EmpContractInfo> page,
+            @Param("sqlSegment1") String sqlSegment1,
+            @Param("sqlSegment2") String sqlSegment2
+    );
+
+    /**
+     * 查询在职人员的最后一份合同
+     *
+     * @param page 分页参数
+     * @param sqlSegment 查询条件SQL
+     * @return 分页结果
+     */
+    IPage<EmpContractInfo> selectLastContractPageVo(
+            @Param("page") Page<EmpContractInfo> page,
+            @Param("sqlSegment") String sqlSegment
+    );
 }
\ No newline at end of file

--
Gitblit v1.8.0