From 0bd6994efea85e468c06b58cd0395cd4066d31cd Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期五, 12 六月 2026 14:39:07 +0800
Subject: [PATCH] 根据单个员工计算工资

---
 src/main/java/com/ruoyi/staff/service/impl/StaffSalaryMainServiceImpl.java       |    1 +
 src/main/java/com/ruoyi/staff/service/impl/SchemeApplicableStaffServiceImpl.java |    5 +++++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/staff/service/impl/SchemeApplicableStaffServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/SchemeApplicableStaffServiceImpl.java
index bf886a2..11c4060 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/SchemeApplicableStaffServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/SchemeApplicableStaffServiceImpl.java
@@ -172,6 +172,7 @@
         boolean hasHourlySalaryInput = hasValue(map, "hourlySalary");
         boolean hasSocialPersonalInput = hasValue(map, "socialPersonal");
         boolean hasFundPersonalInput = hasValue(map, "fundPersonal");
+        boolean hasSocialSupplementAmountInput = hasValue(map, "socialSupplementAmount");
 
         BigDecimal basicSalary = getBigDecimal(map, "basicSalary");
         BigDecimal dayDays = getBigDecimal(map, "dayDays");
@@ -182,6 +183,7 @@
         BigDecimal otherDeduct = getBigDecimal(map, "otherDeduct");
         BigDecimal socialPersonalInput = getBigDecimal(map, "socialPersonal");
         BigDecimal fundPersonalInput = getBigDecimal(map, "fundPersonal");
+        BigDecimal socialSupplementAmountInput = getBigDecimal(map, "socialSupplementAmount");
         BigDecimal socialPersonal = BigDecimal.ZERO;
         BigDecimal fundPersonal = BigDecimal.ZERO;
         BigDecimal salaryTax = BigDecimal.ZERO;
@@ -348,6 +350,9 @@
                 currentDetailList,
                 currentMonthSocialPersonal
         );
+        if (hasSocialSupplementAmountInput) {
+            socialSupplementAmount = defaultIfNull(socialSupplementAmountInput);
+        }
         BigDecimal totalSocialPersonal = currentMonthSocialPersonal.add(socialSupplementAmount);
         map.put("socialSupplementAmount", socialSupplementAmount);
         // 涓◣閲戦锛堢ぞ淇濈増锛�
diff --git a/src/main/java/com/ruoyi/staff/service/impl/StaffSalaryMainServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/StaffSalaryMainServiceImpl.java
index 967ab9e..00f821c 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/StaffSalaryMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/StaffSalaryMainServiceImpl.java
@@ -155,6 +155,7 @@
         result.put("otherDeduct", calculateSalaryCalculateDto.getOtherDeduct());
         result.put("socialPersonal", calculateSalaryCalculateDto.getSocialPersonal());
         result.put("fundPersonal", calculateSalaryCalculateDto.getFundPersonal());
+        result.put("socialSupplementAmount", calculateSalaryCalculateDto.getSocialSupplementAmount());
         result.put("salaryTax", calculateSalaryCalculateDto.getSalaryTax());
         result.put("grossSalary", calculateSalaryCalculateDto.getGrossSalary());
         result.put("deductSalary", calculateSalaryCalculateDto.getDeductSalary());

--
Gitblit v1.9.3