package com.zfire.jiasm.syncdata.plus.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 服务人员
 * </p>
 *
 * @author gejiang
 * @since 2023-07-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="Worker对象", description="服务人员")
public class Worker extends Model<Worker> {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "师傅id/师傅编号")
    @TableId(value = "worker_id", type = IdType.ID_WORKER_STR)
    private String workerId;

    @ApiModelProperty(value = "师傅名称")
    private String workerName;

    @ApiModelProperty(value = "是否实名认证  YES/NO")
    private String isReal;

    @ApiModelProperty(value = "法大大实名认证 YES/NO")
    private String fddReal;

    @ApiModelProperty(value = "法大大实名认证流水号")
    private String fddSerialNo;

    @ApiModelProperty(value = "实名认证头像")
    private String authHeadImage;

    @ApiModelProperty(value = "创建人")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty(value = "修改人")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    @ApiModelProperty(value = "修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    @ApiModelProperty(value = "状态 ON=有效 OFF=无效(无效状态师傅将不能登录系统)")
    private String status;

    @ApiModelProperty(value = "状态无效说明")
    private String statusOffRemark;

    @ApiModelProperty(value = "状态变更为无效的时间")
    private Date statusOffTime;

    @ApiModelProperty(value = "出生日期")
    private Date birthDate;

    @ApiModelProperty(value = "性别 :男,女")
    private String gender;

    @ApiModelProperty(value = "移动电话")
    private String mobile;

    @ApiModelProperty(value = "身份证")
    private String idcard;

    @ApiModelProperty(value = "年龄")
    private Integer age;

    @ApiModelProperty(value = "等级名称")
    private String nameLevel;

    @ApiModelProperty(value = "等级id")
    private String graderId;

    @ApiModelProperty(value = "等级积分")
    private BigDecimal integralLevel;

    @ApiModelProperty(value = "用户端等级名称")
    private String userNameLevel;

    @ApiModelProperty(value = "可兑换积分")
    private BigDecimal integralFree;

    @ApiModelProperty(value = "服务分")
    private BigDecimal serviceIntegral;

    @ApiModelProperty(value = "技能分")
    private BigDecimal skillIntegral;

    @ApiModelProperty(value = "工程师质量分")
    private BigDecimal qualityIntegral;

    @ApiModelProperty(value = "身高")
    private String height;

    @ApiModelProperty(value = "体重")
    private String weight;

    @ApiModelProperty(value = "学历")
    private String education;

    @ApiModelProperty(value = "家庭住址")
    private String address;

    @ApiModelProperty(value = "是否已打疫苗 YES/NO")
    private String isCovidVaccin;

    @ApiModelProperty(value = "接收短信 YES/NO")
    private String isSmsNotice;

    @ApiModelProperty(value = "是否在黑名单：YES/NO")
    private String isBlackList;

    @ApiModelProperty(value = "设置黑名单原因")
    private String blackListRemark;

    @ApiModelProperty(value = "银行户名")
    private String bankLinkName;

    @ApiModelProperty(value = "银行卡号")
    private String bankAccount;

    @ApiModelProperty(value = "开户行名称")
    private String bankDeposit;

    @ApiModelProperty(value = "银行开启地址")
    private String bankAddress;

    @ApiModelProperty(value = "个人头像")
    private String imgUrl;

    @ApiModelProperty(value = "现从事工作")
    private String job;

    @ApiModelProperty(value = "技术等级")
    private String skillLevel;

    @ApiModelProperty(value = "从事该工作年数")
    private Integer jobAge;

    @ApiModelProperty(value = "资格证号")
    private String nvq;

    @ApiModelProperty(value = "培训情况")
    private String train;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "对应登录帐号")
    private String adminUserId;

    @ApiModelProperty(value = "是否开通掌上通 YES/NO")
    private String isZst;

    @ApiModelProperty(value = "掌上通审核意见")
    private String zstExamineRemark;

    @ApiModelProperty(value = "开通掌上通的时间")
    private Date zstTime;

    @ApiModelProperty(value = "车牌号码")
    private String carNo;

    @ApiModelProperty(value = "GPS设备ID")
    private String gpsMachineId;

    @ApiModelProperty(value = "服务VIP标识（1-5星，5最高）")
    private String vipFlag;

    @ApiModelProperty(value = "紧急联系人")
    private String urgentLinkName;

    @ApiModelProperty(value = "紧急联系电话")
    private String urgentLinkMobile;

    @ApiModelProperty(value = "家庭成员姓名")
    private String familyName;

    @ApiModelProperty(value = "家庭成员电话")
    private String familyMobile;

    @ApiModelProperty(value = "法大大客户编号")
    private String fadadaCustomerId;

    @ApiModelProperty(value = "法大大认证地址")
    private String fadadaAuthUrl;

    @ApiModelProperty(value = "法大大认证失败原因")
    private String fadadaAuthFailReason;

    @ApiModelProperty(value = "法大大身份证正面图片uuid")
    private String fadadaHeadPhotoPath;

    @ApiModelProperty(value = "法大大身份证反面图片uuid")
    private String fadadaBackgroundIdCardPath;

    @ApiModelProperty(value = "法大大腾讯云返回的照片uuid")
    private String fadadaPhotoUuid;

    @ApiModelProperty(value = "名字拼英首字母")
    private String firstWord;

    @ApiModelProperty(value = "考试结果：未考试/合格/未合格 ")
    private String testFlag;

    private String safeNo;

    @ApiModelProperty(value = "数据来源(0:平台录入;1:格力系统同步)")
    private Integer syncFlag;


    @Override
    protected Serializable pkVal() {
        return this.workerId;
    }

}
