Files
jinko.yikatong/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs
2025-02-08 17:23:40 +08:00

205 lines
6.1 KiB
C#

using Dlhis.Entity.Basic.Enums;
using Kurisu.AspNetCore.DataAccess.SqlSugar;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Attributes;
using Mapster;
using SqlSugar;
using SqlSugar.DbConvert;
namespace Dlhis.Entity.Basic.Entity;
/// <summary>
/// 用户档案
/// </summary>
[SugarTable(TableName = "Gainfo", TableDescription = "档案表")]
public class GainfoEntity : SugarBaseEntity
{
/// <summary>
/// 档案号
/// </summary>
[SugarColumn(ColumnDescription = "档案号", UniqueGroupNameList = new[] { "idx_Gainfo_No" })]
public string No { get; set; }
/// <summary>
/// 内部编号
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "内部编号")]
public string InternalNo { get; set; }
/// <summary>
/// 人员类型
/// </summary>
[AdaptIgnore(MemberSide.Destination)]
[SugarColumn(IsNullable = false, ColumnDescription = "人员类型", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))]
public GainfoUserTypeEnumType Type { get; set; }
/// <summary>
/// 人员来源
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "人员来源")]
public string Source { get; set; }
/// <summary>
/// 姓名
/// </summary>
[SugarColumn(IsNullable = false, ColumnDescription = "姓名")]
public string Name { get; set; }
/// <summary>
/// 学工号
/// </summary>
[SugarColumn(IsNullable = false, ColumnDescription = "学工号", UniqueGroupNameList = new[] { "idx_Gainfo_Code" })]
public string Code { get; set; }
/// <summary>
/// 国家代码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "国家代码")]
public string CountryNo { get; set; }
/// <summary>
/// 证件类型代码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "证件类型代码")]
public string IdClass { get; set; }
/// <summary>
/// 身份证号
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "身份证号", UniqueGroupNameList = new[] { "idx_Gainfo_IdNo" })]
public string IdNo { get; set; }
/// <summary>
/// 身份证籍贯区域代码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "身份证籍贯区域代码")]
public string Native { get; set; }
/// <summary>
/// 性别
/// </summary>
[SugarColumn(IsNullable = false, ColumnDescription = "性别", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))]
public GenderEnumType Gender { get; set; }
/// <summary>
/// 生日
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "生日")]
public DateTime? Birthday { get; set; }
/// <summary>
/// 身份证地址
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "身份证地址")]
public string Address { get; set; }
/// <summary>
/// 部门编码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "部门编码")]
public string DepartmentNo { get; set; }
/// <summary>
/// 民族代码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "民族代码")]
public string Nation { get; set; }
/// <summary>
/// 手机号码
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "手机号码")]
public string Phone { get; set; }
/// <summary>
/// 学历
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "学历")]
public string Degree { get; set; }
/// <summary>
/// 岗位
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "岗位")]
public string PositionNo { get; set; }
/// <summary>
/// 职等
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "职等")]
public string Grade { get; set; }
/// <summary>
/// 职级
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "职级")]
public string Title { get; set; }
/// <summary>
/// 卡号
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "卡号", IndexGroupNameList = new[] { "idx_Gainfo_CardNo" })]
public string CardNo { get; set; }
/// <summary>
/// 备注
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "备注")]
public string Remark { get; set; }
/// <summary>
/// 人事范围
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "人事范围")]
public string Werks { get; set; }
/// <summary>
/// 工作地
/// </summary>
[SugarColumn(IsNullable = false, ColumnDescription = "工作地")]
public string Workplace { get; set; }
/// <summary>
/// 厂区
/// </summary>
[TenantId]
[SugarColumn(IsNullable = false, ColumnDescription = "厂区")]
public string Factory { get; set; }
/// <summary>
/// 成本中心
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "成本中心")]
public string CostId { get; set; }
/// <summary>
/// 入职日期
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "入职日期", ColumnDataType = "date")]
public DateTime? EntryDate { get; set; }
/// <summary>
/// 离职日期
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "离职日期", ColumnDataType = "date")]
public DateTime? ResignationDate { get; set; }
/// <summary>
/// 身份认证用户Id(如果为空匹配code)
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "身份认证用户Id")]
public int IdentityUserId { get; set; }
/// <summary>
/// 卡类型
/// </summary>
[SugarColumn(IsNullable = true, ColumnDescription = "卡类型")]
public int? CardType { get; set; }
}
/// <summary>
/// 离职人员档案表
/// </summary>
[SugarTable(TableName = "GainfoLeave", TableDescription = "离职人员档案表")]
public class GainfoLeaveEntity : GainfoEntity
{
}