package cn.iocoder.yudao.module.hrm.dal.dataobject.employee;
|
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import com.baomidou.mybatisplus.annotation.KeySequence;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import lombok.*;
|
|
import java.math.BigDecimal;
|
import java.time.LocalDate;
|
|
/**
|
* 员工合同 DO
|
*
|
* 记录员工与公司签订的劳动合同/续签合同等,一个员工可有多份合同(历史合同 + 当前合同)
|
*
|
* @author 超级管理员
|
*/
|
@TableName("hrm_employee_contract")
|
@KeySequence("hrm_employee_contract_seq")
|
@Data
|
@EqualsAndHashCode(callSuper = true)
|
@ToString(callSuper = true)
|
@Builder
|
@NoArgsConstructor
|
@AllArgsConstructor
|
public class HrmEmployeeContractDO extends BaseDO {
|
|
/**
|
* 合同ID
|
*/
|
@TableId
|
private Long id;
|
|
/**
|
* 续签上一份合同ID
|
*
|
* 一个员工可签订多次合同,通过该字段形成续签链,便于追溯合同历史
|
*/
|
private Long parentId;
|
|
/**
|
* 是否当前生效合同
|
*
|
* 员工最新签订的、未解除/未终止的合同标记为当前合同,同一员工仅一份
|
*/
|
private Boolean isCurrent;
|
|
/**
|
* 合同编号
|
*
|
* 自动生成:HT + yyyyMMdd + 4位自增
|
*/
|
private String contractNo;
|
|
/**
|
* 员工ID
|
*
|
* 关联 HrmEmployeeDO#getId()
|
*/
|
private Long employeeId;
|
|
/**
|
* 合同类型
|
*
|
* 字典 hrm_contract_type:1-劳动合同 2-劳务合同 3-实习协议 4-劳务派遣 5-其他
|
*/
|
private Integer contractType;
|
|
/**
|
* 合同期限类型
|
*
|
* 字典 hrm_contract_term_type:1-固定期限 2-无固定期限 3-以完成一定工作任务为期限
|
*/
|
private Integer contractTermType;
|
|
/**
|
* 签约主体(公司全称)
|
*/
|
private String signCompany;
|
|
/**
|
* 签订日期
|
*/
|
private LocalDate signDate;
|
|
/**
|
* 合同开始日期
|
*/
|
private LocalDate startDate;
|
|
/**
|
* 合同结束日期
|
*
|
* 无固定期限合同可为空
|
*/
|
private LocalDate endDate;
|
|
/**
|
* 试用期开始日期
|
*/
|
private LocalDate probationStartDate;
|
|
/**
|
* 试用期结束日期
|
*/
|
private LocalDate probationEndDate;
|
|
/**
|
* 试用期工资
|
*/
|
private BigDecimal probationSalary;
|
|
/**
|
* 转正工资
|
*/
|
private BigDecimal regularSalary;
|
|
/**
|
* 解除/终止状态
|
*
|
* 0-正常 1-已解除 2-已终止
|
*/
|
private Integer terminateStatus;
|
|
/**
|
* 解除/终止日期
|
*/
|
private LocalDate terminateDate;
|
|
/**
|
* 解除/终止原因
|
*/
|
private String terminateReason;
|
|
/**
|
* 备注
|
*/
|
private String remark;
|
|
}
|