using OASystem.Domain.Attributes;
using OASystem.Domain.Entities;
using SqlSugar;
namespace OASystem.Domain.Entities.System
{
///
/// 用户表
///
[SugarTable("Sys_Users")]
public class Sys_Users : EntityBase
{
///
/// 中文姓名
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
public string CnName { get; set; }
///
/// 英文姓名
///
[SugarColumn(IsNullable = true,ColumnDataType ="varchar(50)")]
public string EnName { get; set; }
///
/// 工号
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
public string Number { get; set; }
///
/// 公司Id
///
[SugarColumn(IsNullable = true,ColumnDataType ="int")]
public int CompanyId { get; set; }
///
/// 部门Id
///
[SugarColumn(IsNullable = true,ColumnDataType ="int")]
public int DepId { get; set; }
///
/// 岗位Id
///
[SugarColumn(IsNullable = true, ColumnDataType = "int")]
public int JobPostId { get; set; }
///
/// 密码
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
public string Password { get; set; }
///
/// 性别0 男 1 女 2 未设置
///
[SugarColumn(IsNullable = true, ColumnDataType = "int")]
public int Sex { get; set; }
///
/// 分机号
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
public string Ext { get; set; }
///
/// 手机号
///
[Encrypted]
[SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
public string Phone { get; set; }
///
/// 紧急联系人 手机号
///
[Encrypted]
[SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
public string UrgentPhone { get; set; }
///
/// 邮箱
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
public string Email { get; set; }
///
/// 住址
///
[SugarColumn(IsNullable = true, ColumnDataType ="varchar(200)")]
public string Address { get; set; }
///
/// 入职时间
///
[SugarColumn(IsNullable = true, ColumnDataType = "DateTime")]
public DateTime Edate { get; set; }
///
/// 离职时间
///
[SugarColumn(IsNullable = true, ColumnDataType = "DateTime")]
public DateTime Rdate { get; set; }
///
/// 工龄
///
[SugarColumn(IsNullable = true, ColumnDataType = "int")]
public int Seniority { get; set; }
///
/// 生日
///
[SugarColumn(IsNullable = true,ColumnDataType = "DateTime")]
public DateTime? Birthday { get; set; }
///
/// 身份证号码
///
[Encrypted]
[SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
public string IDCard { get; set; }
///
/// 开始工作时
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
public string? StartWorkDate { get; set; }
///
/// 毕业学校
///
[SugarColumn(IsNullable = true, ColumnDataType ="varchar(200)")]
public string GraduateInstitutions { get; set; }
///
/// 专业
///
[SugarColumn(IsNullable = true,ColumnDataType ="varchar(50)")]
public string Professional { get; set; }
///
/// 学历
/// 0 未设置 1 小学、2 初中、3 高中、4 专科、5 本科、6 研究生
///
[SugarColumn(IsNullable = true,ColumnDataType ="int")]
public int Education { get; set; }
///
/// 学历类型
///0 未设置 1 成教 2 统招 3 留学
///
[SugarColumn(IsNullable = true,ColumnDataType ="int")]
public int TheOrAdultEducation { get; set; }
///
/// 婚姻状态
///
[SugarColumn(IsNullable = true, ColumnDataType ="varchar(200)")]
public string MaritalStatus { get; set; }
///
/// 家庭地址
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
public string HomeAddress { get; set; }
///
/// 试用期
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
public string UsePeriod { get; set; }
///
/// 工作经历
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
public string WorkExperience { get; set; }
///
/// 证书上传
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
public string Certificate { get; set; }
///
/// 人事审核 0未审核(初始状态) 1 已通过(可用)2已拒绝
///
[SugarColumn(IsNullable = true,ColumnDataType ="int")]
public int HrAudit { get; set; }
///
/// 企微Id
///
[SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
public string QiyeChatUserId { get; set; }
}
#region 附加字段
///
/// 用户表
/// 数据库查询接受实体类
///
public class UserInfo : Sys_Users
{
///
/// 公司名称
///
public string? CompanyName { get; set; }
///
/// 部门名称
///
public string? DepName { get; set; }
///
/// 岗位名称
///
public string? JobName { get; set; }
}
#endregion
#region 简略信息
public class UserBriefInfo
{
public int Id { get; set; }
public string Name { get; set; }
public string Job { get; set; }
public string Telephone { get; set; }
public string ExtensionNumber { get; set; }
public string Tel { get; set; }
public string Email { get; set; }
}
#endregion
}