package com.engine.salary.entity.hrm.po;

import com.engine.hrmelog.annotation.ElogTransform;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class HrmSnapshotPO {

	@ElogTransform(name = "id")
	private Long id;

	/**
	 * 快照时间
	 */
	@ElogTransform(name = "快照时间")
	private Date snapshotTime;


	/**
	 * 人员id
	 */
	@ElogTransform(name = "人员id")
	private Long employeeId;

	/**
	 * 姓名
	 */
	@ElogTransform(name = "姓名")
	private String lastname;


	/**
     * 工资帐号1
     */
    @ElogTransform(name = "工资帐号1")
    private String accountid1;

    /**
     * 工资账号户名
     */
    @ElogTransform(name = "工资账号户名")
    private String accountname;

    /**
     * 帐号类型
     */
    @ElogTransform(name = "帐号类型")
    private Integer accounttype;

    /**
     * 公积金帐号
     */
    @ElogTransform(name = "公积金帐号")
    private String accumfundaccount;

    /**
     * 助理
     */
    @ElogTransform(name = "助理")
    private Integer assistantid;

    /**
     * 工资银行1
     */
    @ElogTransform(name = "工资银行1")
    private Integer bankid1;

    /**
     * 所属主帐号
     */
    @ElogTransform(name = "所属主帐号")
    private Integer belongto;

    /**
     * 入团时间
     */
    @ElogTransform(name = "入团时间")
    private String bememberdate;

    /**
     * 入党时间
     */
    @ElogTransform(name = "入党时间")
    private String bepartydate;

    /**
     * 生日
     */
    @ElogTransform(name = "生日")
    private String birthday;

    /**
     * 出生地
     */
    @ElogTransform(name = "出生地")
    private String birthplace;

    /**
     * 身份证号码
     */
    @ElogTransform(name = "身份证号码")
    private String certificatenum;

    /**
     * 公司开始日期
     */
    @ElogTransform(name = "公司开始日期")
    private String companystartdate;

    /**
     * 公司年限
     */
    @ElogTransform(name = "公司年限")
    private BigDecimal companyworkyear;

    /**
     * 所属成本中心
     */
    @ElogTransform(name = "所属成本中心")
    private Integer costcenterid;

    /**
     * 国家id
     */
    @ElogTransform(name = "国家id")
    private Integer countryid;

    /**
     * 学位
     */
    @ElogTransform(name = "学位")
    private String degree;

    /**
     * 所属部门
     */
    @ElogTransform(name = "所属部门")
    private Integer departmentid;

    /**
     * 部门名称
     */
    @ElogTransform(name = "部门名称")
    private String departmentname;

    /**
     * 学历
     */
    @ElogTransform(name = "学历")
    private Integer educationlevel;

    /**
     * 电子邮件
     */
    @ElogTransform(name = "电子邮件")
    private String email;


    /**
     * 合同结束日期
     */
    @ElogTransform(name = "合同结束日期")
    private String enddate;

    /**
     * 分机
     */
    @ElogTransform(name = "分机")
    private String extphone;

    /**
     * 传真
     */
    @ElogTransform(name = "传真")
    private String fax;

    /**
     * 民族
     */
    @ElogTransform(name = "民族")
    private String folk;

    /**
     * 健康状况
     */
    @ElogTransform(name = "健康状况")
    private String healthinfo;

    /**
     * 家庭住址
     */
    @ElogTransform(name = "家庭住址")
    private String homeaddress;


    /**
     * 是否为工会会员
     */
    @ElogTransform(name = "是否为工会会员")
    private String islabouunion;

    /**
     * 职责描述
     */
    @ElogTransform(name = "职责描述")
    private String jobactivitydesc;

    /**
     * 职称
     */
    @ElogTransform(name = "职称")
    private Integer jobcall;

    /**
     * 职称名称
     */
    @ElogTransform(name = "职称名称")
    private String jobcallname;

    /**
     * 工作级别
     */
    @ElogTransform(name = "工作级别")
    private Integer joblevel;

    /**
     * 岗位
     */
    @ElogTransform(name = "岗位")
    private Integer jobtitle;

    /**
     * 岗位名称
     */
    @ElogTransform(name = "岗位名称")
    private String jobtitlename;

    /**
     * 最后登陆日期
     */
    @ElogTransform(name = "最后登陆日期")
    private String lastlogindate;

    /**
     * 工作地点
     */
    @ElogTransform(name = "工作地点")
    private Integer locationid;

    /**
     * 系统登陆帐号
     */
    @ElogTransform(name = "系统登陆帐号")
    private String loginid;

    /**
     * 经理
     */
    @ElogTransform(name = "经理")
    private Integer managerid;

    /**
     * 所有上级
     */
    @ElogTransform(name = "所有上级")
    private String managerstr;

    /**
     * 婚姻状况
     */
    @ElogTransform(name = "婚姻状况")
    private String maritalstatus;

    /**
     * 手机
     */
    @ElogTransform(name = "手机")
    private String mobile;

    /**
     * 其他电话
     */
    @ElogTransform(name = "其他电话")
    private String mobilecall;

    /**
     * 国籍
     */
    @ElogTransform(name = "国籍")
    private Integer nationality;

    /**
     * 籍贯
     */
    @ElogTransform(name = "籍贯")
    private String nativeplace;

    /**
     * 政治面貌
     */
    @ElogTransform(name = "政治面貌")
    private String policy;

    /**
     * 试用期结束日期
     */
    @ElogTransform(name = "试用期结束日期")
    private String probationenddate;

    /**
     * 户口
     */
    @ElogTransform(name = "户口")
    private String regresidentplace;

    /**
     * 居住地电话
     */
    @ElogTransform(name = "居住地电话")
    private String residentphone;

    /**
     * 居住地
     */
    @ElogTransform(name = "居住地")
    private String residentplace;

    /**
     * 居住地邮编
     */
    @ElogTransform(name = "居住地邮编")
    private String residentpostcode;

    /**
     * 用户类别
     */
    @ElogTransform(name = "用户类别")
    private String resourcetype;

    /**
     * 安全级别
     */
    @ElogTransform(name = "安全级别")
    private Integer seclevel;

    /**
     * 性别
     */
    @ElogTransform(name = "性别")
    private String sex;



    /**
     * 合同开始日期
     */
    @ElogTransform(name = "合同开始日期")
    private String startdate;

    /**
     * 0：试用<br>1：正式<br>2：临时<br>3：试用延期<br>4：解聘<br>5：离职<br>6：退休<br>7：无效
     */
    @ElogTransform(name = "	0：试用<br>1：正式<br>2：临时<br>3：试用延期<br>4：解聘<br>5：离职<br>6：退休<br>7：无效")
    private Integer status;

    /**
     * 所属分部1
     */
    @ElogTransform(name = "所属分部1")
    private Integer subcompanyid1;

    /**
     * 分部名称
     */
    @ElogTransform(name = "分部名称")
    private String subcompanyname;

    /**
     * 电话
     */
    @ElogTransform(name = "电话")
    private String telephone;

    /**
     * 暂住证号码
     */
    @ElogTransform(name = "暂住证号码")
    private String tempresidentnumber;

    /**
     * 用工性质
     */
    @ElogTransform(name = "用工性质")
    private Integer usekind;

    /**
     * 编号
     */
    @ElogTransform(name = "编号")
    private String workcode;

    /**
     * 办公室
     */
    @ElogTransform(name = "办公室")
    private String workroom;

    /**
     * 工作开始日期
     */
    @ElogTransform(name = "工作开始日期")
    private String workstartdate;

    /**
     * 工作年限
     */
    @ElogTransform(name = "工作年限")
    private BigDecimal workyear;


    //主键id集合
    private Collection<Long> ids;

}