package com.ym.mec.education.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author lemeng
 * @since 2019-09-25
 */
@TableName("sys_user")
public class SysUser extends Model<SysUser> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id_", type = IdType.AUTO)
    private Integer id;
    /**
     * 用户名
     */
    @TableField("username_")
    private String username;
    @TableField("password_")
    private String password;
    /**
     * 随机盐
     */
    @TableField("salt_")
    private String salt;
    /**
     * 简介
     */
    @TableField("phone_")
    private String phone;
    /**
     * 头像
     */
    @TableField("avatar_")
    private String avatar;
    /**
     * 创建时间
     */
    @TableField("create_time_")
    private Date createTime;
    /**
     * 修改时间
     */
    @TableField("update_time_")
    private Date updateTime;
    /**
     * 0-正常，9-锁定
     */
    @TableField("lock_flag_")
    private String lockFlag;
    /**
     * 0-正常，1-删除
     */
    @TableField("del_flag_")
    private String delFlag;
    /**
     * 微信openid
     */
    @TableField("wx_openid_")
    private String wxOpenid;
    /**
     * QQ openid
     */
    @TableField("qq_openid_")
    private String qqOpenid;
    /**
     * 用户类型（STUDENT/TEACHER/SYSTEM）
     */
    @TableField("user_type_")
    private String userType;
    /**
     * 性别（0，女  1，男）
     */
    @TableField("gender_")
    private Integer gender;
    /**
     * 民族
     */
    @TableField("nation_")
    private String nation;
    /**
     * 出生日期
     */
    @TableField("birthdate_")
    private Date birthdate;
    /**
     * 邮箱
     */
    @TableField("email_")
    private String email;
    @TableField("organ_id_")
    private Integer organId;
    /**
     * 融云token
     */
    @TableField("im_token_")
    private String imToken;


    @TableField("real_name_")
    private String realName;
    /**
     * 身份证号码
     */
    @TableField("id_card_no_")
    private String idCardNo;
    /**
     * e签宝唯一编号
     */
    @TableField("esign_id_")
    private String esignId;
    /**
     * 微信号
     */
    @TableField("wechat_id_")
    private String wechatId;

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public Integer getId() {
        return id;
    }

    public SysUser setId(Integer id) {
        this.id = id;
        return this;
    }

    public String getUsername() {
        return username;
    }

    public SysUser setUsername(String username) {
        this.username = username;
        return this;
    }

    public String getPassword() {
        return password;
    }

    public SysUser setPassword(String password) {
        this.password = password;
        return this;
    }

    public String getSalt() {
        return salt;
    }

    public SysUser setSalt(String salt) {
        this.salt = salt;
        return this;
    }

    public String getPhone() {
        return phone;
    }

    public SysUser setPhone(String phone) {
        this.phone = phone;
        return this;
    }

    public String getAvatar() {
        return avatar;
    }

    public SysUser setAvatar(String avatar) {
        this.avatar = avatar;
        return this;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public SysUser setCreateTime(Date createTime) {
        this.createTime = createTime;
        return this;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public SysUser setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
        return this;
    }

    public String getLockFlag() {
        return lockFlag;
    }

    public SysUser setLockFlag(String lockFlag) {
        this.lockFlag = lockFlag;
        return this;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public SysUser setDelFlag(String delFlag) {
        this.delFlag = delFlag;
        return this;
    }

    public String getWxOpenid() {
        return wxOpenid;
    }

    public SysUser setWxOpenid(String wxOpenid) {
        this.wxOpenid = wxOpenid;
        return this;
    }

    public String getQqOpenid() {
        return qqOpenid;
    }

    public SysUser setQqOpenid(String qqOpenid) {
        this.qqOpenid = qqOpenid;
        return this;
    }

    public String getUserType() {
        return userType;
    }

    public SysUser setUserType(String userType) {
        this.userType = userType;
        return this;
    }

    public Integer getGender() {
        return gender;
    }

    public SysUser setGender(Integer gender) {
        this.gender = gender;
        return this;
    }

    public String getNation() {
        return nation;
    }

    public SysUser setNation(String nation) {
        this.nation = nation;
        return this;
    }

    public Date getBirthdate() {
        return birthdate;
    }

    public SysUser setBirthdate(Date birthdate) {
        this.birthdate = birthdate;
        return this;
    }

    public String getEmail() {
        return email;
    }

    public SysUser setEmail(String email) {
        this.email = email;
        return this;
    }

    public Integer getOrganId() {
        return organId;
    }

    public SysUser setOrganId(Integer organId) {
        this.organId = organId;
        return this;
    }

    public String getImToken() {
        return imToken;
    }

    public SysUser setImToken(String imToken) {
        this.imToken = imToken;
        return this;
    }

    public String getIdCardNo() {
        return idCardNo;
    }

    public SysUser setIdCardNo(String idCardNo) {
        this.idCardNo = idCardNo;
        return this;
    }

    public String getEsignId() {
        return esignId;
    }

    public SysUser setEsignId(String esignId) {
        this.esignId = esignId;
        return this;
    }

    public String getWechatId() {
        return wechatId;
    }

    public SysUser setWechatId(String wechatId) {
        this.wechatId = wechatId;
        return this;
    }

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

    @Override
    public String toString() {
        return "SysUser{" +
        ", id=" + id +
        ", username=" + username +
        ", password=" + password +
        ", salt=" + salt +
        ", phone=" + phone +
        ", avatar=" + avatar +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        ", lockFlag=" + lockFlag +
        ", delFlag=" + delFlag +
        ", wxOpenid=" + wxOpenid +
        ", qqOpenid=" + qqOpenid +
        ", userType=" + userType +
        ", gender=" + gender +
        ", nation=" + nation +
        ", birthdate=" + birthdate +
        ", email=" + email +
        ", organId=" + organId +
        ", imToken=" + imToken +
        ", idCardNo=" + idCardNo +
        ", esignId=" + esignId +
        ", wechatId=" + wechatId +
        "}";
    }
}
