package org.springblade.flow.permission.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 *  实体类
 *
 * @author william
 * @date   2022-07-14 10:57:53
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("blade_user")
@ApiModel(value = "blade_user", description = "")
public class UserEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/** 
	 * 主键 
	 */
	@ApiModelProperty(value = "主键", name = "id", required = true)
	@TableId("id")
	private String id;
	/** 
	 * 租户ID 
	 */
	@ApiModelProperty(value = "租户ID", name = "tenantId", required = false)
	@TableField("tenant_id")
	private String tenantId;
	/** 
	 * 用户编号 
	 */
	@ApiModelProperty(value = "用户编号", name = "code", required = false)
	@TableField("code")
	private String code;
	/** 
	 * 用户平台 
	 */
	@ApiModelProperty(value = "用户平台", name = "userType", required = false)
	@TableField("user_type")
	private Integer userType;
	/** 
	 * 账号 
	 */
	@ApiModelProperty(value = "账号", name = "account", required = false)
	@TableField("account")
	private String account;
	/** 
	 * 密码 
	 */
	@ApiModelProperty(value = "密码", name = "password", required = false)
	@TableField("password")
	private String password;
	/** 
	 * 昵称 
	 */
	@ApiModelProperty(value = "昵称", name = "name", required = false)
	@TableField("name")
	private String name;
	/** 
	 * 真名 
	 */
	@ApiModelProperty(value = "真名", name = "realName", required = false)
	@TableField("real_name")
	private String realName;
	/** 
	 * 微信昵称 
	 */
	@ApiModelProperty(value = "微信昵称", name = "nickName", required = false)
	@TableField("nick_name")
	private String nickName;
	/** 
	 * 头像 
	 */
	@ApiModelProperty(value = "头像", name = "avatar", required = false)
	@TableField("avatar")
	private String headIcon;
	/** 
	 * 邮箱 
	 */
	@ApiModelProperty(value = "邮箱", name = "email", required = false)
	@TableField("email")
	private String email;
	/** 
	 * 手机 
	 */
	@ApiModelProperty(value = "手机", name = "phone", required = false)
	@TableField("phone")
	private String mobilePhone;
	/** 
	 * 生日 
	 */
	@ApiModelProperty(value = "生日", name = "birthday", required = false)
	@TableField("birthday")
	private Date birthday;
	/** 
	 * 性别 
	 */
	@ApiModelProperty(value = "性别", name = "sex", required = false)
	@TableField("sex")
	private Integer gender;
	/** 
	 * 角色id 
	 */
	@ApiModelProperty(value = "角色id", name = "roleId", required = false)
	@TableField("role_id")
	private String roleId;
	/** 
	 * 部门id 
	 */
	@ApiModelProperty(value = "部门id", name = "deptId", required = false)
	@TableField("dept_id")
	private String organizeId;
	/** 
	 * 岗位id 
	 */
	@ApiModelProperty(value = "岗位id", name = "postId", required = false)
	@TableField("post_id")
	private String positionId;
	/** 
	 * 人脸userID 
	 */
	@ApiModelProperty(value = "人脸userID", name = "faceUserId", required = false)
	@TableField("face_user_id")
	private String faceUserId;
	/** 
	 * 人脸分组ID 
	 */
	@ApiModelProperty(value = "人脸分组ID", name = "faceGroupId", required = false)
	@TableField("face_group_id")
	private String faceGroupId;
	/** 
	 * 人脸facetoken 
	 */
	@ApiModelProperty(value = "人脸facetoken", name = "faceToken", required = false)
	@TableField("face_token")
	private String faceToken;
	/** 
	 * 人脸图片 
	 */
	@ApiModelProperty(value = "人脸图片", name = "faceImg", required = false)
	@TableField("face_img")
	private String faceImg;
	/** 
	 * openid 
	 */
	@ApiModelProperty(value = "openid", name = "openId", required = false)
	@TableField("open_id")
	private String openId;
	/** 
	 * 创建人 
	 */
	@ApiModelProperty(value = "创建人", name = "createUser", required = false)
	@TableField("create_user")
	private Long createUser;
	/** 
	 * 创建部门 
	 */
	@ApiModelProperty(value = "创建部门", name = "createDept", required = false)
	@TableField("create_dept")
	private Long createDept;
	/** 
	 * 创建时间 
	 */
	@ApiModelProperty(value = "创建时间", name = "createTime", required = false)
	@TableField("create_time")
	private Date createTime;
	/** 
	 * 修改人 
	 */
	@ApiModelProperty(value = "修改人", name = "updateUser", required = false)
	@TableField("update_user")
	private Long updateUser;
	/** 
	 * 修改时间 
	 */
	@ApiModelProperty(value = "修改时间", name = "updateTime", required = false)
	@TableField("update_time")
	private Date updateTime;
	/** 
	 * 审核等级 
	 */
	@ApiModelProperty(value = "审核等级", name = "auditLevel", required = false)
	@TableField("audit_level")
	private Integer auditLevel;
	/** 
	 * 是否允许账号登录  0 是 1否 
	 */
	@ApiModelProperty(value = "是否允许账号登录  0 是 1否", name = "isLogin", required = false)
	@TableField("is_login")
	private Integer isLogin;
	/** 
	 * 是否允许微信登录  0 是 1否 
	 */
	@ApiModelProperty(value = "是否允许微信登录  0 是 1否", name = "isWxLogin", required = false)
	@TableField("is_wx_login")
	private Integer isWxLogin;
	/** 
	 * 登录状态  0 正常 1预警 2警告 login_status 
	 */
	@ApiModelProperty(value = "登录状态  0 正常 1预警 2警告 login_status", name = "loginStatus", required = false)
	@TableField("login_status")
	private Integer loginStatus;
	/** 
	 * 状态 
	 */
	@ApiModelProperty(value = "状态", name = "status", required = false)
	@TableField("status")
	private Integer enabledMark;
	/** 
	 * 是否已删除 
	 */
	@ApiModelProperty(value = "是否已删除", name = "isDeleted", required = false)
	@TableField("is_deleted")
	private Integer isDeleted;
	/** 
	 * 扩展字段 
	 */
	@ApiModelProperty(value = "扩展字段", name = "extJson", required = false)
	@TableField("ext_json")
	private String extJson;

	private transient String postalAddress = "";
	private transient Date entryDate;
	private transient String managerId;

}
