package top.imwork.window.silos.entity.upms;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

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

/**
 * 用户信息
 *
 * @author jiangxiaowei
 * email: e-jiangxiaowei@outlook.com
 * date: 2025-12-09 16:29:22
 */
@Data
@TableName("sys_user")
public class SysUser implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 用户id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 登录账号
     */
    private String loginName;
    /**
     * 登录密码
     */
    private String loginPassword;
    /**
     * 二次登录密码
     */
    private String secondLoginPassword;
    /**
     * 用户实名
     */
    private String userName;
    /**
     * 用户名拼音
     */
    private String userNamePinyin;
    /**
     * 用户姓名拼音缩写
     */
    private String userNameSpell;
    /**
     * 用户性别:0-男，1-女，2-保密
     */
    private String userGender;
    /**
     * 用户身份证
     */
    private String userIdCard;
    /**
     * 用户默认邮件地址
     */
    private String userEmail;
    /**
     * 用户默认手机号
     */
    private String userMobilePhone;
    /**
     * 用户默认地址
     */
    private String userAddress;
    /**
     * 用户详情
     */
    private String userDesc;
    /**
     * 用户类型 0为系统默认用户 ，1普通管理员，2为系统管理员,9超级管理员
     */
    private String userType;
    /**
     * 用户状态，默认为0，1代表无效，2是被锁定,3暂停使用
     */
    private String userStatus;
    /**
     * 用户头像 存储头像记录id
     */
    private String userAvatarId;
    /**
     * 用户昵称
     */
    private String userNickName;
    /**
     * 盐
     */
    private String salt;
    /**
     * 区分工号内外网.0.内网1.外网9.通用
     */
    private String dncnet;
    /**
     * 允许密码输入错误次数
     */
    private Integer allowedErrorTimes;
    /**
     * 登录错误次数
     */
    private Integer loginErrorTimes;
    /**
     * 是否支持单不同IP地址登录同一用户，0为不支持，1为支持
     */
    private String isDifferentIpLogin;
    /**
     * 最后登录时间
     */
    private Date lastLoginTime;
    /**
     * 启用0否1是
     */
    private Integer enabled;
    /**
     * 默认排序
     */
    private Long sort;
    /**
     * 系统层级状态的数学表述(默认0正常 1删除 2受限操作)
     */
    private Integer state;
    /**
     * 系统层级状态(默认0正常 1删除 2受限操作)
     */
    private String status;
    /**
     * 是否刪除(默认0 未删除 1已删除）
     */
    private String delFlag;
    /**
     * 创建人
     */
    private String creator;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 修改人
     */
    private String modifier;
    /**
     * 修改时间
     */
    private Date updateTime;
    /**
     * 备注
     */
    private String remark;
}
