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


/// <summary>
/// Ghra_Staff (Model)
/// </summary>
[SugarTable("Ghra_Staff", "Ghra_Staff"), Entity(TableCnName = "Ghra_Staff", TableName = "Ghra_Staff")]
public class Ghra_Staff : BasePoco1
{

    /// <summary>
    /// StaffID
    /// </summary>
    [SugarColumn(IsNullable = false, IsPrimaryKey = true, IsIdentity = true), Display(Name = "表主键")]
    public int StaffID { get; set; }

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

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

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

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

    /// <summary>
    /// 首次入职日
    /// </summary>
    public DateTime? FirstInDate { get; set; }

    /// <summary>
    /// Indate
    /// </summary>
    public DateTime? Indate { get; set; }

    /// <summary>
    /// OutDate
    /// </summary>
    public DateTime? OutDate { get; set; }

    /// <summary>
    /// SalaryEndDate
    /// </summary>
    public DateTime? SalaryEndDate { get; set; }

    /// <summary>
    /// ProbationEndDate
    /// </summary>
    public DateTime? ProbationEndDate { get; set; }

    /// <summary>
    /// RegularDate
    /// </summary>
    public DateTime? RegularDate { get; set; }

    /// <summary>
    /// DeptID
    /// </summary>
    public int? DeptID { get; set; }

    /// <summary>
    /// DataBelongID
    /// </summary>
    public int? DataBelongID { get; set; }

    /// <summary>
    /// TitleID
    /// </summary>
    public int? TitleID { get; set; }

    /// <summary>
    /// GradeID
    /// </summary>
    public int? GradeID { get; set; }

    /// <summary>
    /// JobID
    /// </summary>
    public int? JobID { get; set; }

    /// <summary>
    /// LegalCompanyID
    /// </summary>
    public int? LegalCompanyID { get; set; }

    /// <summary>
    /// WorkPlaceID
    /// </summary>
    public int? WorkPlaceID { get; set; }

    /// <summary>
    /// CostCenterID
    /// </summary>
    public int? CostCenterID { get; set; }

    /// <summary>
    /// ZoneID
    /// </summary>
    public int? ZoneID { get; set; }

    /// <summary>
    /// StaffType1
    /// </summary>
    public int? StaffType1 { get; set; }

    /// <summary>
    /// StaffType2
    /// </summary>
    public int? StaffType2 { get; set; }

    /// <summary>
    /// StaffType3
    /// </summary>
    public int? StaffType3 { get; set; }

    /// <summary>
    /// StaffType4
    /// </summary>
    public int? StaffType4 { get; set; }

    /// <summary>
    /// StaffType5
    /// </summary>
    public int? StaffType5 { get; set; }

    /// <summary>
    /// ManagerID
    /// </summary>
    public int? ManagerID { get; set; }

    /// <summary>
    /// 默认角色,用,号分割
    /// </summary>
    [Display(Name = "StaffRoleIDs"), Description("默认角色,用,号分割"), MaxLength(2000, ErrorMessage = "默认角色,用,号分割 不能超过 2000 个字符")]
    public string StaffRoleIDs { get; set; }

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

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

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

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

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

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

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

    /// <summary>
    /// WorkID
    /// </summary>
    public int? WorkID { get; set; }

    /// <summary>
    /// WorkState
    /// </summary>
    public int? WorkState { get; set; }

    /// <summary>
    /// IsRelease
    /// </summary>
    public int? IsRelease { get; set; }

    /// <summary>
    /// SortNo
    /// </summary>
    public int? SortNo { get; set; }

    /// <summary>
    /// IsDefault
    /// </summary>
    public int? IsDefault { get; set; }

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

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

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

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

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

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

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

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

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

    /// <summary>
    /// ChangeI1
    /// </summary>
    public int? ChangeI1 { get; set; }

    /// <summary>
    /// ChangeI2
    /// </summary>
    public int? ChangeI2 { get; set; }

    /// <summary>
    /// ChangeI3
    /// </summary>
    public int? ChangeI3 { get; set; }

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

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

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

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

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

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

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

    /// <summary>
    /// Birthday
    /// </summary>
    public DateTime? Birthday { get; set; }

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

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

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

    /// <summary>
    /// PreJobSeniority
    /// </summary>
    [Display(Name = "PreJobSeniority"), Description("PreJobSeniority"), Column(TypeName = "decimal(18,2)")]
    public decimal? PreJobSeniority { get; set; }

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

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

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

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

    /// <summary>
    /// ManagerID2
    /// </summary>
    public int? ManagerID2 { get; set; }

    /// <summary>
    /// TaxID
    /// </summary>
    public int? TaxID { get; set; }

    /// <summary>
    /// PeriodMasterID
    /// </summary>
    public int? PeriodMasterID { get; set; }

    /// <summary>
    /// OvertimeRuleID
    /// </summary>
    public int? OvertimeRuleID { get; set; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    /// <summary>
    /// ChangeI4
    /// </summary>
    public int? ChangeI4 { get; set; }

    /// <summary>
    /// ChangeI5
    /// </summary>
    public int? ChangeI5 { get; set; }

    /// <summary>
    /// ChangeI6
    /// </summary>
    public int? ChangeI6 { get; set; }

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

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

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

    /// <summary>
    /// ExpectTitleID
    /// </summary>
    public int? ExpectTitleID { get; set; }

    /// <summary>
    /// ExpectDeptID
    /// </summary>
    public int? ExpectDeptID { get; set; }

    /// <summary>
    /// ConfirmUserID
    /// </summary>
    public int? ConfirmUserID { get; set; }

    /// <summary>
    /// ConfirmTime
    /// </summary>
    public DateTime? ConfirmTime { get; set; }

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

    /// <summary>
    /// IsInsure
    /// </summary>
    public int? IsInsure { get; set; }

    /// <summary>
    /// IsFund
    /// </summary>
    public int? IsFund { get; set; }

    /// <summary>
    /// SeniorityBegin
    /// </summary>
    public DateTime? SeniorityBegin { get; set; }

    /// <summary>
    /// IDCardBegin
    /// </summary>
    public DateTime? IDCardBegin { get; set; }

    /// <summary>
    /// IDCardEnd
    /// </summary>
    public DateTime? IDCardEnd { get; set; }

    /// <summary>
    /// GraduateDate
    /// </summary>
    public DateTime? GraduateDate { get; set; }

    /// <summary>
    /// EmploymentDate
    /// </summary>
    public DateTime? EmploymentDate { get; set; }

    /// <summary>
    /// PreJoinDate
    /// </summary>
    public DateTime? PreJoinDate { get; set; }

    /// <summary>
    /// IsCalSalary
    /// </summary>
    public int? IsCalSalary { get; set; }

    /// <summary>
    /// InsureAccountID
    /// </summary>
    public int? InsureAccountID { get; set; }

    /// <summary>
    /// FundAccountID
    /// </summary>
    public int? FundAccountID { get; set; }

    /// <summary>
    /// InsureDate
    /// </summary>
    public DateTime? InsureDate { get; set; }

    /// <summary>
    /// InsureBase
    /// </summary>
    [Display(Name = "InsureBase"), Description("InsureBase"), Column(TypeName = "decimal(18,4)")]
    public decimal? InsureBase { get; set; }

    /// <summary>
    /// FundBase
    /// </summary>
    [Display(Name = "FundBase"), Description("FundBase"), Column(TypeName = "decimal(18,4)")]
    public decimal? FundBase { get; set; }

    /// <summary>
    /// IsInInsure
    /// </summary>
    public int? IsInInsure { get; set; }

    /// <summary>
    /// InInsureAccountNo
    /// </summary>
    public int? InInsureAccountNo { get; set; }

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

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

    /// <summary>
    /// SalaryReportType
    /// </summary>
    public int? SalaryReportType { get; set; }

    /// <summary>
    /// IsSalaryPay
    /// </summary>
    public int? IsSalaryPay { get; set; }
}
