From 8d3065add0a652305563814e0852ce76fa80efea Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 14 一月 2026 17:08:03 +0800
Subject: [PATCH] 人力资源-新增离职,增加离职原因和备注
---
src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java | 21 ++++++++++++++++++++-
1 files changed, 20 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..d20ee41 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java
@@ -24,6 +24,8 @@
import java.util.*;
import java.util.function.Function;
+import static com.ruoyi.common.enums.StaffJoinLeaveRecordDimissionReason.StaffJoinLeaveRecordDimissionReasonOther;
+
@Service
@AllArgsConstructor
@Transactional(rollbackFor = Exception.class)
@@ -77,6 +79,12 @@
staffOnJobMapper.updateById(staffOnJob);
}else {
throw new BaseException("娌℃湁鎵惧埌"+staffJoinLeaveRecord.getStaffNo()+"缂栧彿鐨勫憳宸�,鏃犳硶鏂板绂昏亴!!!");
+ }
+ if (staffJoinLeaveRecord.getDimissionReason()==null){
+ throw new BaseException("绂昏亴鍘熷洜涓嶈兘涓虹┖!!!");
+ }
+ if (!StaffJoinLeaveRecordDimissionReasonOther.getCode().equals(staffJoinLeaveRecord.getDimissionReason())){
+ staffJoinLeaveRecord.setDimissionRemark("");
}
}
return staffJoinLeaveRecordMapper.insert(staffJoinLeaveRecord);
@@ -155,14 +163,25 @@
/*鍏ヨ亴*/
StaffOnJob job = staffOnJobMapper.selectList(Wrappers.<StaffOnJob>lambdaQuery()
.eq(StaffOnJob::getStaffNo, staffJoinLeaveRecord.getStaffNo())).get(0);
+ // 澧炲姞浜嗗悎鍚屾柟妗堟墍浠ュ幓鎺夎繖涓垽鏂�
//濡傛灉鏇存敼鐨勫悎鍚屽埌鏈熸椂闂存洿涔呭垯鏇存柊,濡傛灉娌℃湁灏变笉鐢ㄦ洿鏂�
- if (staffJoinLeaveRecord.getContractEndTime().compareTo(job.getContractExpireTime())>0) {
+// if (staffJoinLeaveRecord.getContractEndTime().compareTo(job.getContractExpireTime())>0) {
+// BeanUtils.copyProperties(staffJoinLeaveRecord,job,ignoreProperties);
+// staffOnJobMapper.updateById(job);
+// }
+ if(job != null){
BeanUtils.copyProperties(staffJoinLeaveRecord,job,ignoreProperties);
staffOnJobMapper.updateById(job);
}
}else {
/*绂昏亴*/
//绂昏亴鐨勭紪杈戜笉浼氬奖鍝嶅湪鑱岃〃
+ if (staffJoinLeaveRecord.getDimissionReason()==null){
+ throw new BaseException("绂昏亴鍘熷洜涓嶈兘涓虹┖!!!");
+ }
+ if (!StaffJoinLeaveRecordDimissionReasonOther.getCode().equals(staffJoinLeaveRecord.getDimissionReason())){
+ staffJoinLeaveRecord.setDimissionRemark("");
+ }
}
return staffJoinLeaveRecordMapper.updateById(staffJoinLeaveRecord);
}
--
Gitblit v1.9.3