From a327fb5bece99809958c7921fcab67cdc02fae64 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期四, 22 十月 2026 18:50:41 +0800
Subject: [PATCH] fix(sql): 权限对齐 SQL 改为按 path 定位父菜单(兼容不同环境菜单 id),并注明执行前检查 id 占用

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java
index ea55ce7..a8822da 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java
@@ -683,6 +683,19 @@
         calculation.setConfirmTime(exist.getConfirmTime());
         calculation.setConfirmUserId(exist.getConfirmUserId());
         calculation.setPaymentTime(exist.getPaymentTime());
+        // 閲戦瀛楁涓� null 鏃剁粺涓�鎸� 0 澶勭悊锛歁yBatis-Plus 鐨� updateById 榛樿蹇界暐 null锛�
+        // 鍚﹀垯浼氬嚭鐜般�屽疄鍙戝伐璧勬寜 0 璁$畻銆佷絾鏄庣粏浠嶄繚鐣欐棫鍊笺�嶇殑涓嶄竴鑷�
+        calculation.setBaseSalary(nvl(calculation.getBaseSalary()));
+        calculation.setPerformanceSalary(nvl(calculation.getPerformanceSalary()));
+        calculation.setOvertimePay(nvl(calculation.getOvertimePay()));
+        calculation.setMealAllowance(nvl(calculation.getMealAllowance()));
+        calculation.setTransportAllowance(nvl(calculation.getTransportAllowance()));
+        calculation.setOtherAllowance(nvl(calculation.getOtherAllowance()));
+        calculation.setSocialSecurityDeduction(nvl(calculation.getSocialSecurityDeduction()));
+        calculation.setHousingFundDeduction(nvl(calculation.getHousingFundDeduction()));
+        calculation.setTaxDeduction(nvl(calculation.getTaxDeduction()));
+        calculation.setOtherDeduction(nvl(calculation.getOtherDeduction()));
+        calculation.setLeaveDeduction(nvl(calculation.getLeaveDeduction()));
         // 瀹炲彂宸ヨ祫鐢卞悗绔噸绠楋紝閬垮厤鍓嶇浼犲叆鍊间笌鏄庣粏涓嶄竴鑷�
         calculation.setActualSalary(calcActualSalary(calculation));
         salaryCalculationMapper.updateById(calculation);

--
Gitblit v1.9.3