From b5ca4fa6acd8c7ea8ed1400b133eb2eb6b5cb8ba Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 14 十月 2026 15:22:16 +0800
Subject: [PATCH] feat(hrm): 社保公积金方案支持按部门绑定,修比例输入精度
---
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSocialSecuritySchemeService.java | 47 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 39 insertions(+), 8 deletions(-)
diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSocialSecuritySchemeService.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSocialSecuritySchemeService.java
index 579e364..859e3b0 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSocialSecuritySchemeService.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSocialSecuritySchemeService.java
@@ -1,30 +1,34 @@
package cn.iocoder.yudao.module.hrm.service.salary;
+import cn.iocoder.yudao.module.hrm.controller.admin.salary.vo.HrmSocialSecuritySchemeSaveReqVO;
import cn.iocoder.yudao.module.hrm.dal.dataobject.salary.HrmSocialSecuritySchemeDO;
+import java.time.LocalDate;
+import java.util.Collection;
import java.util.List;
+import java.util.Map;
/**
* 绀句繚鍏Н閲戞柟妗� Service 鎺ュ彛
*
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
*/
public interface HrmSocialSecuritySchemeService {
/**
- * 鍒涘缓绀句繚鍏Н閲戞柟妗�
+ * 鍒涘缓绀句繚鍏Н閲戞柟妗堬紙鍚�傜敤閮ㄩ棬锛�
*
- * @param scheme 鏂规淇℃伅
+ * @param createReqVO 鏂规淇℃伅
* @return 鏂规ID
*/
- Long createScheme(HrmSocialSecuritySchemeDO scheme);
+ Long createScheme(HrmSocialSecuritySchemeSaveReqVO createReqVO);
/**
- * 鏇存柊绀句繚鍏Н閲戞柟妗�
+ * 鏇存柊绀句繚鍏Н閲戞柟妗堬紙鍚�傜敤閮ㄩ棬锛屾暣缁勬浛鎹級
*
- * @param scheme 鏂规淇℃伅
+ * @param updateReqVO 鏂规淇℃伅
*/
- void updateScheme(HrmSocialSecuritySchemeDO scheme);
+ void updateScheme(HrmSocialSecuritySchemeSaveReqVO updateReqVO);
/**
* 鍒犻櫎绀句繚鍏Н閲戞柟妗�
@@ -49,4 +53,31 @@
*/
List<HrmSocialSecuritySchemeDO> getSchemeList(Integer status);
-}
\ No newline at end of file
+ /**
+ * 鑾峰彇鏂规缁戝畾鐨勯�傜敤閮ㄩ棬ID鍒楄〃
+ *
+ * @param schemeId 鏂规ID
+ * @return 閮ㄩ棬ID鍒楄〃
+ */
+ List<Long> getSchemeDeptIds(Long schemeId);
+
+ /**
+ * 鎵归噺鑾峰彇鏂规缁戝畾鐨勯�傜敤閮ㄩ棬ID锛堟柟妗圛D -> 閮ㄩ棬ID鍒楄〃锛�
+ *
+ * @param schemeIds 鏂规ID闆嗗悎
+ * @return 鏂规ID -> 閮ㄩ棬ID鍒楄〃
+ */
+ Map<Long, List<Long>> getSchemeDeptIdMap(Collection<Long> schemeIds);
+
+ /**
+ * 鎸夐儴闂ㄨВ鏋愭牳绠楃敤鐨勭ぞ淇濆叕绉噾鏂规
+ *
+ * 浼樺厛绾э細璇ラ儴闂ㄧ粦瀹氱殑鏂规锛堢敓鏁堟棩鏈熶笉鏅氫簬鏍哥畻鏈熼棿锛屽彇鏈�鏂帮級> 鍏ㄥ眬榛樿鏂规锛堟湭缁戝畾浠讳綍閮ㄩ棬鐨勬柟妗堜腑鐢熸晥鏃ユ湡鏈�鏂拌�咃級
+ *
+ * @param deptId 鍛樺伐鎵�鍦ㄩ儴闂↖D锛堝彲涓虹┖锛�
+ * @param periodDate 鏍哥畻鏈熼棿鐨勬湀鍒濇棩鏈�
+ * @return 鏂规锛涙煡涓嶅埌杩斿洖 null锛岀敱璋冪敤鏂逛娇鐢ㄩ粯璁ゆ瘮渚嬪父閲�
+ */
+ HrmSocialSecuritySchemeDO resolveSchemeByDeptId(Long deptId, LocalDate periodDate);
+
+}
--
Gitblit v1.9.3