feat(wms): 添加员工异动管理功能

- 创建员工异动实体类 WmsEmployeeChange,包含异动记录主键、员工信息关联、异动类型等字段
- 定义员工异动业务对象 WmsEmployeeChangeBo 和视图对象 WmsEmployeeChangeVo
- 实现员工异动服务接口 IWmsEmployeeChangeService 及其具体实现类 WmsEmployeeChangeServiceImpl
- 添加员工异动数据访问层 WmsEmployeeChangeMapper 及对应的 MyBatis XML 映射文件
- 开发员工异动控制器 WmsEmployeeChangeController,提供增删改查及导出功能
- 集成分页查询、数据校验、重复提交防护等通用功能
This commit is contained in:
2026-03-14 09:54:40 +08:00
parent 80640b5b39
commit e0b4d16701
8 changed files with 502 additions and 0 deletions

View File

@@ -0,0 +1,63 @@
package com.klp.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 员工异动(入职/离职)对象 wms_employee_change
*
* @author klp
* @date 2026-03-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("wms_employee_change")
public class WmsEmployeeChange extends BaseEntity {
private static final long serialVersionUID=1L;
/**
* 异动记录主键ID
*/
@TableId(value = "change_id")
private Long changeId;
/**
* 关联员工信息表的主键ID
*/
private Long infoId;
/**
* 异动类型0=入职1=离职
*/
private Integer changeType;
/**
* 异动时间(入职/离职时间)
*/
private Date changeTime;
/**
* 异动原因(离职必填,入职可选)
*/
private String changeReason;
/**
* 负责人
*/
private String changeHandler;
/**
* 附件
*/
private String attachment;
/**
* 逻辑删除标识0=正常1=已删
*/
@TableLogic
private Integer delFlag;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,63 @@
package com.klp.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 员工异动(入职/离职)业务对象 wms_employee_change
*
* @author klp
* @date 2026-03-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsEmployeeChangeBo extends BaseEntity {
/**
* 异动记录主键ID
*/
private Long changeId;
/**
* 关联员工信息表的主键ID
*/
private Long infoId;
/**
* 异动类型0=入职1=离职
*/
private Integer changeType;
/**
* 异动时间(入职/离职时间)
*/
private Date changeTime;
/**
* 异动原因(离职必填,入职可选)
*/
private String changeReason;
/**
* 负责人
*/
private String changeHandler;
/**
* 附件
*/
private String attachment;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,75 @@
package com.klp.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.klp.common.annotation.ExcelDictFormat;
import com.klp.common.convert.ExcelDictConvert;
import lombok.Data;
/**
* 员工异动(入职/离职)视图对象 wms_employee_change
*
* @author klp
* @date 2026-03-14
*/
@Data
@ExcelIgnoreUnannotated
public class WmsEmployeeChangeVo {
private static final long serialVersionUID = 1L;
/**
* 异动记录主键ID
*/
@ExcelProperty(value = "异动记录主键ID")
private Long changeId;
/**
* 关联员工信息表的主键ID
*/
@ExcelProperty(value = "关联员工信息表的主键ID")
private Long infoId;
/**
* 异动类型0=入职1=离职
*/
@ExcelProperty(value = "异动类型0=入职1=离职")
private Integer changeType;
/**
* 异动时间(入职/离职时间)
*/
@ExcelProperty(value = "异动时间", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "入=职/离职时间")
private Date changeTime;
/**
* 异动原因(离职必填,入职可选)
*/
@ExcelProperty(value = "异动原因", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "离=职必填,入职可选")
private String changeReason;
/**
* 负责人
*/
@ExcelProperty(value = "负责人")
private String changeHandler;
/**
* 附件
*/
@ExcelProperty(value = "附件")
private String attachment;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}