huminmin
13 小时以前 8d3065add0a652305563814e0852ce76fa80efea
人力资源-新增离职,增加离职原因和备注
已添加2个文件
已修改2个文件
57 ■■■■■ 文件已修改
doc/20260114_add_dimission_reason_and_remark_to_staff_join_leave_record.sql 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/common/enums/StaffJoinLeaveRecordDimissionReason.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/pojo/StaffJoinLeaveRecord.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/impl/StaffJoinLeaveRecordServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
doc/20260114_add_dimission_reason_and_remark_to_staff_join_leave_record.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3 @@
alter table staff_join_leave_record
    add dimission_reason varchar(255) null,
    add dimission_remark text null;
src/main/java/com/ruoyi/common/enums/StaffJoinLeaveRecordDimissionReason.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package com.ruoyi.common.enums;
import lombok.AllArgsConstructor;
/**
 * é™„件记录类型枚举
 *
 */
@AllArgsConstructor
public enum StaffJoinLeaveRecordDimissionReason {
    StaffJoinLeaveRecordDimissionReasonSalary("salary","薪资待遇"),
    StaffJoinLeaveRecordDimissionReasonCareerDevelopment("career_development","职业发展"),
    StaffJoinLeaveRecordDimissionReasonWorkEnvironment("work_environment","工作环境"),
    StaffJoinLeaveRecordDimissionReasonPersonalReason("personal_reason","个人原因"),
    StaffJoinLeaveRecordDimissionReasonOther("other","其他原因");
    private final String code;
    private final String info;
    public String getCode() {
        return code;
    }
    public String getInfo() {
        return info;
    }
}
src/main/java/com/ruoyi/staff/pojo/StaffJoinLeaveRecord.java
@@ -188,6 +188,18 @@
    @Excel(name = "备注(福利待遇)")
    private String remark;
    /**
     * ç¦»èŒåŽŸå› 
     */
    @Excel(name = "离职原因",readConverterExp = "salary=薪资待遇,career_development=职业发展,work_environment=工作环境,personal_reason=个人原因,other=其他")
    private String dimissionReason;
    /**
     * ç¦»èŒå¤‡æ³¨
     */
    @Excel(name = "离职备注")
    private String dimissionRemark;
    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
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);
@@ -168,6 +176,12 @@
        }else {
            /*离职*/
            //离职的编辑不会影响在职表
            if (staffJoinLeaveRecord.getDimissionReason()==null){
                throw new BaseException("离职原因不能为空!!!");
            }
            if (!StaffJoinLeaveRecordDimissionReasonOther.getCode().equals(staffJoinLeaveRecord.getDimissionReason())){
                staffJoinLeaveRecord.setDimissionRemark("");
            }
        }
        return staffJoinLeaveRecordMapper.updateById(staffJoinLeaveRecord);
    }