package jnpf.model.personnels.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import jnpf.base.entity.SuperEntity;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 员工花名册
 *
 * @author admin
 * @create 2024-02-01
 */

@Getter
@Setter
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName(value = "ftb_personnels_staff_roster")
public class FtbPersonnelsStaffRoster extends SuperEntity.SuperCUBaseEntity<String> {

    /**
     * 系统用户ID
     */
    @TableField(value = "F_UserId")
    private String userId;

    /**
     * 系统员工ID,实际入职年份日期+当日办理入职3位顺序数，例如：231123001
     */
    @TableField(value = "F_SystemWokerId")
    private String systemWokerId;

    /**
     * 系统合同ID,HTZ+员工ID
     */
    @TableField(value = "F_SystemContractId")
    private String systemContractId;

    /**
     * 手机号
     */
    @TableField(value = "F_Phone")
    private String phone;

    /**
     * 员工姓名
     */
    @TableField(value = "F_Name")
    private String name;

    /**
     * 工号
     */
    @TableField(value = "F_WorkerNo")
    private String workerNo;

    /**
     * 入职所属组织
     */
    @TableField(value = "F_CurrOrg")
    private String currOrg;

    /**
     * 入职岗位
     */
    @TableField(value = "F_CurrPosition")
    private String currPosition;

    /**
     * 入职职等
     */
    @TableField(value = "F_CurrRank")
    private String currRank;

    /**
     * 入职所属店铺
     */
    @TableField(value = "F_CurrShopId")
    private String currShopId;
    /**
     * 入职班组id
     */
    @TableField(value = "F_CurrGroupId")
    private String currGroupId;

    /**
     * 入职薪酬
     */
    @TableField(value = "F_EntrySalary")
    private BigDecimal entrySalary;

    /**
     * 当前薪酬
     */
    @TableField(value = "F_CurrSalary")
    private BigDecimal currSalary;

    /**
     * 转正薪酬
     */
    @TableField(value = "F_RegularSalary")
    private BigDecimal regularSalary;


    /**
     * 入职直属主管
     */
    @TableField(value = "F_CurrReportsTo")
    private String currReportsTo;


    /**
     * 合同编号
     */
    @TableField(value = "F_ContractNo")
    private String contractNo;

    /**
     * 合同生效日期
     */
    @TableField(value = "F_ContractEffectiveDate")
    private Date contractEffectiveDate;

    /**
     * 合同到期日期
     */
    @TableField(value = "F_ContractEndDate")
    private Date contractEndDate;

    /**
     * 入职日期
     */
    @TableField(value = "F_ActualStartDate")
    private Date actualStartDate;

    /**
     *
     * 26	全职
     * 27	兼职日薪
     * 28	实习
     * 29	劳务派遣
     * 30	退休返聘
     * 31	劳务外包
     * 32   兼职小时工
     */
    @TableField(value = "F_WorkerType")
    private String workerType;

    /**
     * 合同类型
     */
    @TableField(value = "F_ContractType")
    private String contractType;

    /**
     * 工作状态，
     * 301、预入职
     * 302、试用
     * 303、正式
     * 304、待离职
     * 305 离职
     * 306 试岗
     */
    @TableField(value = "F_WorkerStatus")
    private String workerStatus;

    /**
     * 是否提交了入职登记表：0、未提交  1、已提交
     */
    @TableField(value = "F_IsSubmitForm")
    private Integer isSubmitForm;

    /**
     * 是否调岗，0、未调岗  1、调岗中  2、调岗完成   3、调岗失败
     */
    @TableField(value = "F_TransferPosition")
    private Integer transferPosition;

    /**
     * 有效标志，1无效 0有效
     */
    @TableField(value = "F_EnabledMark")
    private Integer enabledMark;

    /**
     * 入职次数，大于1重复入职
     */
    @TableField(value = "F_JoinNum")
    private Integer joinNum;


    /**
     * 转正日期
     */
    @TableField(value = "F_ActualProbationaryDate")
    private Date actualProbationaryDate;


    /**
     * 角色，多个逗号隔开
     */
    @TableField(value = "F_CurrRole")
    private String currRole;

    /**
     * 发起离职时的状态
     */
    @TableField(value = "F_DepartStatus")
    private String departStatus;

    /**
     * 离职时间
     */
    @TableField("F_DepartDate")
    private Date departDate;


    /**
     * 是否有试岗期,0-没有，1-有
     */
    @TableField(value = "F_IsTrialJob")
    private Integer isTrialJob;


    /**
     * 试岗天数
     */
    @TableField(value = "F_TrialJobDay")
    private Integer trialJobDay;


    /**
     * 枚举 FContractSignStatus
     * 合同签署状态，500-未发起 501-待签署 502-已到期 503-已签署
     */
    @TableField(value = "F_ContractStatus")
    private Integer contractStatus;



    /**
     * 转正前的状态
     */
    @TableField(value = "F_PreRegStatus")
    private String preRegStatus;


    /**
     * 合同类型名称
     */
    @TableField(value = "F_ContractTypeName")
    private String contractTypeName;


    /**
     * 是否签署离职证明 0-未签署 1-已签署
     */
    @TableField(value = "F_IsSignSeparation")
    private Integer isSignSeparation;


    /**
     * 试岗驳回原因
     */
    @TableField(value = "F_TrialFail")
    private String trialFail;

    /**
     * 合同发起方
     */
    @TableField(value = "F_ContractCompany")
    private String contractCompany;

    /**
     * 是否是试岗驳回(0 : 否 1:是)
     */
    @TableField(value = "F_IsTrialFail")
    private Integer isTrialFail;
    /**
     * oa进行获取详情接口流程id
     */
    @TableField("F_TaskInfoId")
    private String taskInfoId;

    /**
     * oa进行获取详情接口流程id
     */
    @TableField("F_VersionNum")
    private Integer versionNum;

    /**
     * app入职签名承诺截图
     */
    @TableField("F_RegisterImg")
    private String registerImg;
}
