/*  代码由框架生成,任何更改都可能导致被代码生成器覆盖，可自行修改。
* Ghrh_Resume.cs
*
*功 能： N / A
* 类 名： Ghrh_Resume
*
* Ver    变更日期 负责人  变更内容
* ───────────────────────────────────
*V0.01  2024/12/30 13:14:17  SimonHsiao   初版
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*┌──────────────────────────────────┐
*│　此技术信息为本公司机密信息，未经本公司书面同意禁止向第三方披露．　│
*│　作者：SimonHsiao                                                  │
*└──────────────────────────────────┘
*/
namespace Tiobon.Core.Model.Models;


/// <summary>
/// 个人简历 (Model)
/// </summary>
[SugarTable("Ghrh_Resume", "Ghrh_Resume"), Entity(TableCnName = "个人简历", TableName = "Ghrh_Resume")]
public class Ghrh_Resume : BasePoco
{

    /// <summary>
    /// 姓名
    /// </summary>
    [Display(Name = "StaffName"), Description("姓名"), MaxLength(32, ErrorMessage = "姓名 不能超过 32 个字符")]
    public string StaffName { get; set; }

    /// <summary>
    /// 英文名
    /// </summary>
    [Display(Name = "StaffEname"), Description("英文名"), MaxLength(32, ErrorMessage = "英文名 不能超过 32 个字符")]
    public string StaffEname { get; set; }

    /// <summary>
    /// 头像
    /// </summary>
    [Display(Name = "PhotoUrl"), Description("头像"), MaxLength(1000, ErrorMessage = "头像 不能超过 1000 个字符")]
    public string PhotoUrl { get; set; }

    /// <summary>
    /// 民族
    /// </summary>
    [Display(Name = "Nation"), Description("民族"), MaxLength(32, ErrorMessage = "民族 不能超过 32 个字符")]
    public string Nation { get; set; }

    /// <summary>
    /// 出生日期
    /// </summary>
    public DateTime? Birthday { get; set; }

    /// <summary>
    /// 籍贯
    /// </summary>
    [Display(Name = "NativePlace"), Description("籍贯"), MaxLength(32, ErrorMessage = "籍贯 不能超过 32 个字符")]
    public string NativePlace { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    [Display(Name = "Gender"), Description("性别"), MaxLength(32, ErrorMessage = "性别 不能超过 32 个字符")]
    public string Gender { get; set; }

    /// <summary>
    /// 年龄
    /// </summary>
    [Display(Name = "Age"), Description("年龄"), Column(TypeName = "decimal(3,1)")]
    public decimal? Age { get; set; }

    /// <summary>
    /// 学历
    /// </summary>
    [Display(Name = "Education"), Description("学历"), MaxLength(1000, ErrorMessage = "学历 不能超过 1000 个字符")]
    public string Education { get; set; }

    /// <summary>
    /// 毕业院校
    /// </summary>
    [Display(Name = "School"), Description("毕业院校"), MaxLength(128, ErrorMessage = "毕业院校 不能超过 128 个字符")]
    public string School { get; set; }

    /// <summary>
    /// 毕业日期
    /// </summary>
    public DateTime? GraduateDate { get; set; }

    /// <summary>
    /// 求职状态
    /// </summary>
    [Display(Name = "ApplyStatus"), Description("求职状态"), MaxLength(32, ErrorMessage = "求职状态 不能超过 32 个字符")]
    public string ApplyStatus { get; set; }

    /// <summary>
    /// 岗位ID
    /// </summary>
    public int? TitleId { get; set; }

    /// <summary>
    /// 婚姻状况
    /// </summary>
    [Display(Name = "MaritalStatus"), Description("婚姻状况"), MaxLength(32, ErrorMessage = "婚姻状况 不能超过 32 个字符")]
    public string MaritalStatus { get; set; }

    /// <summary>
    /// 政治面貌
    /// </summary>
    [Display(Name = "PoliticStatus"), Description("政治面貌"), MaxLength(32, ErrorMessage = "政治面貌 不能超过 32 个字符")]
    public string PoliticStatus { get; set; }

    /// <summary>
    /// 联系电话
    /// </summary>
    [Display(Name = "Mobile"), Description("联系电话"), MaxLength(32, ErrorMessage = "联系电话 不能超过 32 个字符")]
    public string Mobile { get; set; }

    /// <summary>
    /// 邮箱
    /// </summary>
    [Display(Name = "Email"), Description("邮箱"), MaxLength(64, ErrorMessage = "邮箱 不能超过 64 个字符")]
    public string Email { get; set; }

    /// <summary>
    /// 入职日期
    /// </summary>
    public DateTime? Indate { get; set; }

    /// <summary>
    /// 紧急联系人关系
    /// </summary>
    [Display(Name = "UrgentRelation"), Description("紧急联系人关系"), MaxLength(32, ErrorMessage = "紧急联系人关系 不能超过 32 个字符")]
    public string UrgentRelation { get; set; }

    /// <summary>
    /// 紧急联系人
    /// </summary>
    [Display(Name = "UrgentContact"), Description("紧急联系人"), MaxLength(32, ErrorMessage = "紧急联系人 不能超过 32 个字符")]
    public string UrgentContact { get; set; }

    /// <summary>
    /// 紧急联系人电话
    /// </summary>
    [Display(Name = "UrgentContactTel"), Description("紧急联系人电话"), MaxLength(32, ErrorMessage = "紧急联系人电话 不能超过 32 个字符")]
    public string UrgentContactTel { get; set; }

    /// <summary>
    /// 紧急联系人地址
    /// </summary>
    [Display(Name = "UrgentContactAddress"), Description("紧急联系人地址"), MaxLength(128, ErrorMessage = "紧急联系人地址 不能超过 128 个字符")]
    public string UrgentContactAddress { get; set; }

    /// <summary>
    /// 紧急联系人关系2
    /// </summary>
    [Display(Name = "Urgent2Relation"), Description("紧急联系人关系2"), MaxLength(32, ErrorMessage = "紧急联系人关系2 不能超过 32 个字符")]
    public string Urgent2Relation { get; set; }

    /// <summary>
    /// 紧急联系人2
    /// </summary>
    [Display(Name = "Urgent2Contact"), Description("紧急联系人2"), MaxLength(32, ErrorMessage = "紧急联系人2 不能超过 32 个字符")]
    public string Urgent2Contact { get; set; }

    /// <summary>
    /// 紧急联系人电话2
    /// </summary>
    [Display(Name = "Urgent2ContactTel"), Description("紧急联系人电话2"), MaxLength(32, ErrorMessage = "紧急联系人电话2 不能超过 32 个字符")]
    public string Urgent2ContactTel { get; set; }

    /// <summary>
    /// 紧急联系人地址2
    /// </summary>
    [Display(Name = "Urgent2ContactAddress"), Description("紧急联系人地址2"), MaxLength(128, ErrorMessage = "紧急联系人地址2 不能超过 128 个字符")]
    public string Urgent2ContactAddress { get; set; }

    /// <summary>
    /// 职前年资
    /// </summary>
    [Display(Name = "PreJobSeniority"), Description("职前年资"), MaxLength(32, ErrorMessage = "职前年资 不能超过 32 个字符")]
    public string PreJobSeniority { get; set; }

    /// <summary>
    /// 最高学历
    /// </summary>
    [Display(Name = "EduDegree"), Description("最高学历"), MaxLength(32, ErrorMessage = "最高学历 不能超过 32 个字符")]
    public string EduDegree { get; set; }

    /// <summary>
    /// 证照类型
    /// </summary>
    [Display(Name = "CertificateType"), Description("证照类型"), MaxLength(32, ErrorMessage = "证照类型 不能超过 32 个字符")]
    public string CertificateType { get; set; }

    /// <summary>
    /// 身份证号
    /// </summary>
    [Display(Name = "IdCardNo"), Description("身份证号"), MaxLength(64, ErrorMessage = "身份证号 不能超过 64 个字符")]
    public string IdCardNo { get; set; }

    /// <summary>
    /// 身份证开始有效期
    /// </summary>
    public DateTime? IDCardBegin { get; set; }

    /// <summary>
    /// 身份证结束有效期
    /// </summary>
    public DateTime? IDCardEnd { get; set; }

    /// <summary>
    /// 户口性质
    /// </summary>
    [Display(Name = "RegisteredType"), Description("户口性质"), MaxLength(32, ErrorMessage = "户口性质 不能超过 32 个字符")]
    public string RegisteredType { get; set; }

    /// <summary>
    /// 发证机关
    /// </summary>
    [Display(Name = "IDCardOrg"), Description("发证机关"), MaxLength(256, ErrorMessage = "发证机关 不能超过 256 个字符")]
    public string IDCardOrg { get; set; }

    /// <summary>
    /// 家庭地址(身份证)
    /// </summary>
    [Display(Name = "RegisteredAddress"), Description("家庭地址(身份证)"), MaxLength(256, ErrorMessage = "家庭地址(身份证) 不能超过 256 个字符")]
    public string RegisteredAddress { get; set; }

    /// <summary>
    /// 现居住地
    /// </summary>
    [Display(Name = "NowAddress"), Description("现居住地"), MaxLength(256, ErrorMessage = "现居住地 不能超过 256 个字符")]
    public string NowAddress { get; set; }

    /// <summary>
    /// 介绍人
    /// </summary>
    [Display(Name = "Introducer"), Description("介绍人"), MaxLength(32, ErrorMessage = "介绍人 不能超过 32 个字符")]
    public string Introducer { get; set; }

    /// <summary>
    /// 国籍
    /// </summary>
    [Display(Name = "NationNo"), Description("国籍"), MaxLength(32, ErrorMessage = "国籍 不能超过 32 个字符")]
    public string NationNo { get; set; }

    /// <summary>
    /// 公积金账号
    /// </summary>
    [Display(Name = "FundAccountID"), Description("公积金账号"), MaxLength(128, ErrorMessage = "公积金账号 不能超过 128 个字符")]
    public string FundAccountID { get; set; }

    /// <summary>
    /// 公积金基数
    /// </summary>
    [Display(Name = "FundBase"), Description("公积金基数"), Column(TypeName = "decimal(20,2)")]
    public decimal? FundBase { get; set; }

    /// <summary>
    /// 社保帐套
    /// </summary>
    [Display(Name = "InInsureAccountNo"), Description("社保帐套"), MaxLength(32, ErrorMessage = "社保帐套 不能超过 32 个字符")]
    public string InInsureAccountNo { get; set; }

    /// <summary>
    /// 社保账号
    /// </summary>
    [Display(Name = "InsureAccountID"), Description("社保账号"), MaxLength(128, ErrorMessage = "社保账号 不能超过 128 个字符")]
    public string InsureAccountID { get; set; }

    /// <summary>
    /// 社保基数
    /// </summary>
    [Display(Name = "InsureBase"), Description("社保基数"), Column(TypeName = "decimal(20,2)")]
    public decimal? InsureBase { get; set; }

    /// <summary>
    /// 是否缴纳社保
    /// </summary>
    public bool? IsInsure { get; set; }

    /// <summary>
    /// 是否缴纳公积金
    /// </summary>
    public bool? IsFund { get; set; }

    /// <summary>
    /// 是否推荐
    /// </summary>
    public bool? IsRecommend { get; set; }

    /// <summary>
    /// 是否住宿
    /// </summary>
    public bool? IsStay { get; set; }

    /// <summary>
    /// 车牌号
    /// </summary>
    [Display(Name = "CarNo"), Description("车牌号"), MaxLength(32, ErrorMessage = "车牌号 不能超过 32 个字符")]
    public string CarNo { get; set; }

    /// <summary>
    /// 标签
    /// </summary>
    [Display(Name = "Tags"), Description("标签"), MaxLength(2000, ErrorMessage = "标签 不能超过 2000 个字符")]
    public string Tags { get; set; }

    /// <summary>
    /// 状态
    /// </summary>
    [Display(Name = "Status"), Description("状态"), MaxLength(32, ErrorMessage = "状态 不能超过 32 个字符")]
    public string Status { get; set; }

    /// <summary>
    /// 工作年限
    /// </summary>
    [Display(Name = "WorkYears"), Description("工作年限"), Column(TypeName = "decimal(3,1)")]
    public decimal? WorkYears { get; set; }

    /// <summary>
    /// 薪资区间
    /// </summary>
    [Display(Name = "SalaryPeriod"), Description("薪资区间"), MaxLength(32, ErrorMessage = "薪资区间 不能超过 32 个字符")]
    public string SalaryPeriod { get; set; }

    /// <summary>
    /// 申请状态
    /// </summary>
    [Display(Name = "ApplicationStatus"), Description("申请状态"), MaxLength(32, ErrorMessage = "申请状态 不能超过 32 个字符")]
    public string ApplicationStatus { get; set; }

    /// <summary>
    /// 申请时间
    /// </summary>
    public DateTime? ApplicationTime { get; set; }

    /// <summary>
    /// 职称类型/级别
    /// </summary>
    [Display(Name = "TitleType"), Description("职称类型/级别"), MaxLength(32, ErrorMessage = "职称类型/级别 不能超过 32 个字符")]
    public string TitleType { get; set; }

    /// <summary>
    /// 直间接
    /// </summary>
    [Display(Name = "StaffType1"), Description("直间接"), MaxLength(32, ErrorMessage = "直间接 不能超过 32 个字符")]
    public string StaffType1 { get; set; }

    /// <summary>
    /// 不合适原因
    /// </summary>
    [Display(Name = "FailInterviewReason"), Description("不合适原因"), MaxLength(256, ErrorMessage = "不合适原因 不能超过 256 个字符")]
    public string FailInterviewReason { get; set; }

    /// <summary>
    /// 加入回收站时间
    /// </summary>
    public DateTime? RecycledTime { get; set; }

    /// <summary>
    /// 招聘渠道
    /// </summary>
    [Display(Name = "Channel"), Description("招聘渠道"), MaxLength(32, ErrorMessage = "招聘渠道 不能超过 32 个字符")]
    public string Channel { get; set; }

    /// <summary>
    /// 备注
    /// </summary>
    [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
    public string RemarkSz { get; set; }

    /// <summary>
    /// 默认标志
    /// </summary>
    public int? IsDefault { get; set; }

    /// <summary>
    /// 预留字段1
    /// </summary>
    [Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
    public string Reverse1 { get; set; }

    /// <summary>
    /// 预留字段2
    /// </summary>
    [Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
    public string Reverse2 { get; set; }

    /// <summary>
    /// 预留字段3
    /// </summary>
    [Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
    public string Reverse3 { get; set; }

    /// <summary>
    /// 预留字段4
    /// </summary>
    [Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
    public string Reverse4 { get; set; }

    /// <summary>
    /// 预留字段5
    /// </summary>
    [Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
    public string Reverse5 { get; set; }

    /// <summary>
    /// 预留字段6
    /// </summary>
    [Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
    public string Reverse6 { get; set; }

    /// <summary>
    /// 预留字段7
    /// </summary>
    [Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
    public string Reverse7 { get; set; }

    /// <summary>
    /// 预留字段8
    /// </summary>
    [Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
    public string Reverse8 { get; set; }

    /// <summary>
    /// 预留字段9
    /// </summary>
    [Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
    public string Reverse9 { get; set; }

    /// <summary>
    /// 预留字段10
    /// </summary>
    [Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
    public string Reverse10 { get; set; }

    /// <summary>
    /// 预留字段11
    /// </summary>
    public int? ReverseI1 { get; set; }

    /// <summary>
    /// 预留字段12
    /// </summary>
    public int? ReverseI2 { get; set; }

    /// <summary>
    /// 是否同步至人事资料
    /// </summary>
    public bool? IsSyncToStaff { get; set; }

    /// <summary>
    /// 特殊饮食
    /// </summary>
    [Display(Name = "SpecialDiet"), Description("特殊饮食"), MaxLength(256, ErrorMessage = "特殊饮食 不能超过 256 个字符")]
    public string SpecialDiet { get; set; }

    /// <summary>
    /// 员工ID
    /// </summary>
    public int? StaffId { get; set; }

    /// <summary>
    /// Offer文件路径
    /// </summary>
    [Display(Name = "OfferFileUrl"), Description("Offer文件路径"), MaxLength(256, ErrorMessage = "Offer文件路径 不能超过 256 个字符")]
    public string OfferFileUrl { get; set; }

    /// <summary>
    /// 应聘部门
    /// </summary>
    [Display(Name = "DepartmentName"), Description("应聘部门"), MaxLength(32, ErrorMessage = "应聘部门 不能超过 32 个字符")]
    public string DepartmentName { get; set; }

    /// <summary>
    /// 应聘岗位
    /// </summary>
    [Display(Name = "PositionName"), Description("应聘岗位"), MaxLength(32, ErrorMessage = "应聘岗位 不能超过 32 个字符")]
    public string PositionName { get; set; }
}
