using SqlSugar;
using System;
using System.ComponentModel.DataAnnotations;
namespace Admin.NET.Core
{
///
/// 系统用户表
///
[SugarTable("sys_user", "系统用户表")]
[SqlSugarEntity]
public class SysUser : EntityTenant
{
///
/// 账号
///
[SugarColumn(ColumnDescription = "账号名称", Length = 20)]
[Required, MaxLength(20)]
public virtual string UserName { get; set; }
///
/// 密码(默认MD5加密)
///
[SugarColumn(ColumnDescription = "账号密码", Length = 50)]
[Required, MaxLength(50)]
public string Password { get; set; }
///
/// 昵称
///
[SugarColumn(ColumnDescription = "昵称", Length = 20)]
[MaxLength(20)]
public string NickName { get; set; }
///
/// 头像
///
[SugarColumn(ColumnDescription = "头像", Length = 255)]
[MaxLength(255)]
public string Avatar { get; set; }
///
/// 出生日期
///
[SugarColumn(ColumnDescription = "出生日期")]
public DateTime? Birthday { get; set; }
///
/// 性别-男_1、女_2
///
[SugarColumn(ColumnDescription = "性别")]
public GenderEnum Sex { get; set; } = GenderEnum.Male;
///
/// 邮箱
///
[SugarColumn(ColumnDescription = "邮箱", Length = 50)]
[MaxLength(50)]
public string Email { get; set; }
///
/// 手机号码
///
[SugarColumn(ColumnDescription = "手机号码", Length = 20)]
[MaxLength(20)]
public string Phone { get; set; }
///
/// 真实姓名
///
[SugarColumn(ColumnDescription = "真实姓名", Length = 20)]
[MaxLength(20)]
public string RealName { get; set; }
///
/// 身份证号
///
[SugarColumn(ColumnDescription = "身份证号", Length = 20)]
[MaxLength(20)]
public string IdCard { get; set; }
///
/// 个性签名
///
[SugarColumn(ColumnDescription = "个性签名", Length = 50)]
[MaxLength(50)]
public string Signature { get; set; }
///
/// 个人简介
///
[SugarColumn(ColumnDescription = "个人简介", Length = 500)]
[MaxLength(500)]
public string Introduction { get; set; }
///
/// 账号类型-超级管理员_1、管理员_2、普通_3
///
[SugarColumn(ColumnDescription = "账号类型")]
public UserTypeEnum UserType { get; set; } = UserTypeEnum.None;
///
/// 备注
///
[SugarColumn(ColumnDescription = "备注", Length = 100)]
[MaxLength(100)]
public string Remark { get; set; }
///
/// 状态
///
[SugarColumn(ColumnDescription = "状态")]
public StatusEnum Status { get; set; } = StatusEnum.Enable;
///
/// 机构Id
///
[SugarColumn(ColumnDescription = "机构Id")]
public long OrgId { get; set; }
///
/// 机构
///
[SugarColumn(IsIgnore = true)]
[Navigate(NavigateType.OneToOne, nameof(OrgId))]
public SysOrg SysOrg { get; set; }
///
/// 职位Id
///
[SugarColumn(ColumnDescription = "职位Id")]
public long PosId { get; set; }
///
/// 职位
///
[SugarColumn(IsIgnore = true)]
[Navigate(NavigateType.OneToMany, nameof(PosId))]
public SysPos SysPos { get; set; }
///
/// 工号
///
[SugarColumn(ColumnDescription = "工号", Length = 30)]
[MaxLength(30)]
public string JobNum { get; set; }
///
/// 岗位状态
///
[SugarColumn(ColumnDescription = "岗位状态")]
public JobStatusEnum JobStatus { get; set; } = JobStatusEnum.On;
}
}