From 8009db163dda5fe1e3f772e1e1bb808b5db8132a Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期四, 22 十月 2026 22:29:48 +0800
Subject: [PATCH] fix(浪潮SSO): 单点登录增加容错与日志(同步自 dev_tide_wrzs)
---
src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java
index f82ecc8..f10bc12 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java
@@ -58,14 +58,23 @@
if (staffOnJobs.size()>0){
StaffOnJob staffOnJob = staffOnJobs.get(0);
//鍏堟瘮杈冨埌鏈熸棩鏈�,杩欓噷閫夌敤鍒版湡鏃ユ湡鏈�涔呯殑
- if (staffJoinLeaveRecord.getContractEndTime().compareTo(staffOnJob.getContractExpireTime())>0) {
+ if (staffJoinLeaveRecord.getContractEndTime() != null
+ && (staffOnJob.getContractExpireTime() == null
+ || staffJoinLeaveRecord.getContractEndTime().compareTo(staffOnJob.getContractExpireTime())>0)) {
BeanUtils.copyProperties(staffJoinLeaveRecord,staffOnJob,ignoreProperties);
+ staffOnJob.setContractExpireTime(staffJoinLeaveRecord.getContractEndTime());
+ //鍏ヨ亴鏃ユ湡瀛楁鍚嶄笉鍚�(contractStartTime -> entryDate)锛孊eanUtils 鎷蜂笉杩囨潵锛岄渶鎵嬪姩璧嬪��
+ if (staffJoinLeaveRecord.getContractStartTime() != null) {
+ staffOnJob.setEntryDate(staffJoinLeaveRecord.getContractStartTime());
+ }
staffOnJobMapper.updateById(staffOnJob);
}
}else {
StaffOnJob staffOnJob = new StaffOnJob();
BeanUtils.copyProperties(staffJoinLeaveRecord,staffOnJob,ignoreProperties);
staffOnJob.setContractExpireTime(staffJoinLeaveRecord.getContractEndTime());
+ //鍏ヨ亴鏃ユ湡鍚屾鍒板彴璐︼紝淇濊瘉鍙拌处鈥滃叆鑱屾椂闂粹�濆垪鏈夊��
+ staffOnJob.setEntryDate(staffJoinLeaveRecord.getContractStartTime());
staffOnJobMapper.insert(staffOnJob);
}
}else {
--
Gitblit v1.9.3