package com.xunmei.system.api.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.xunmei.common.core.web.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 sys_user_information
 *
 * @author xunmei
 * @date 2023-08-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sys_user_information")
@ApiModel(value = "SysUserInformation对象" , description = "【请填写功能名称】")
public class SysUserInformation extends BaseEntity
        {
private static final long serialVersionUID=1L;

    /** $column.columnComment */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 用户ID */
            @ApiModelProperty(value = "用户ID")
    private Long userId;

    /** 所属部门ID */
            @ApiModelProperty(value = "所属部门ID")
    private Long deptId;

    /** 职务ID */
            @ApiModelProperty(value = "职务")
    private String duties;

    /** 用工形式 */
            @ApiModelProperty(value = "用工形式")
    private String workType;

    /** 是否专职0是1否 */
            @ApiModelProperty(value = "是否专职0是1否")
    private String isFullTime;

    /** 最高学历 */
            @ApiModelProperty(value = "最高学历")
    private String highestEducation;

    /** 学历取得形式 */
            @ApiModelProperty(value = "学历取得形式")
    private String educationType;

    /** 是否持证上岗 */
            @ApiModelProperty(value = "是否持证上岗")
    private String certificateWork;

    /** 初级以上相关专业技术职业资格 */
            @ApiModelProperty(value = "初级以上相关专业技术职业资格")
    private String professionalQualifications;

    /** 持证上岗未通过原因 */
            @ApiModelProperty(value = "持证上岗未通过原因")
    private String certificateFailReason;

    /** 参加工作时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @ApiModelProperty(value = "参加工作时间")
    private Date workTime;

    /** 入职现在公司的时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @ApiModelProperty(value = "入职现在公司的时间")
    private Date entryTime;

    /** 出生时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @ApiModelProperty(value = "出生时间")
    private Date bornTime;

    /** 分管领导名字 */
            @ApiModelProperty(value = "分管领导名字")
    private String responsibilitiesLeaderName;

    /** 分管领导职务 */
            @ApiModelProperty(value = "分管领导职务")
    private String responsibilitiesLeaderDuties;

    /** 资格证 */
            @ApiModelProperty(value = "资格证")
    private String qualificationCertificateUrl;

    /** $column.columnComment */
    private String delFlag;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
@Override
public String toString(){
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)


                .append("id" ,getId())


                .append("userId" ,getUserId())


                .append("deptId" ,getDeptId())


                .append("duties" ,getDuties())


                .append("workType" ,getWorkType())


                .append("isFullTime" ,getIsFullTime())


                .append("highestEducation" ,getHighestEducation())


                .append("educationType" ,getEducationType())


                .append("certificateWork" ,getCertificateWork())


                .append("professionalQualifications" ,getProfessionalQualifications())


                .append("certificateFailReason" ,getCertificateFailReason())


                .append("workTime" ,getWorkTime())


                .append("entryTime" ,getEntryTime())


                .append("bornTime" ,getBornTime())


                .append("responsibilitiesLeaderName" ,getResponsibilitiesLeaderName())


                .append("responsibilitiesLeaderDuties" ,getResponsibilitiesLeaderDuties())


                .append("qualificationCertificateUrl" ,getQualificationCertificateUrl())


                .append("createBy" ,getCreateBy())


                .append("createTime" ,getCreateTime())


                .append("updateBy" ,getUpdateBy())


                .append("updateTime" ,getUpdateTime())


                .append("delFlag" ,getDelFlag())
        .toString();
        }
        }
