|
|
@ -6,161 +6,243 @@ |
|
|
|
* |
|
|
|
* |
|
|
|
* Ver 变更日期 负责人 变更内容 |
|
|
|
* Ver 变更日期 负责人 变更内容 |
|
|
|
* ─────────────────────────────────── |
|
|
|
* ─────────────────────────────────── |
|
|
|
*V0.01 2024/11/1 11:10:38 SimonHsiao 初版 |
|
|
|
*V0.01 2024/11/22 15:43:22 SimonHsiao 初版 |
|
|
|
* |
|
|
|
* |
|
|
|
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. |
|
|
|
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. |
|
|
|
*┌──────────────────────────────────┐ |
|
|
|
*┌──────────────────────────────────┐ |
|
|
|
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ |
|
|
|
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ |
|
|
|
*│ 作者:SimonHsiao │ |
|
|
|
*│ 作者:SimonHsiao │ |
|
|
|
*└──────────────────────────────────┘ |
|
|
|
*└──────────────────────────────────┘ |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
using System.ComponentModel; |
|
|
|
namespace Tiobon.Core.Model.Models; |
|
|
|
using System.ComponentModel.DataAnnotations; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace Tiobon.Core.Model.Models |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// 年度人力配置 (Dto.Base) |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
|
|
|
|
public class Ghrh_YearHumanSettingsBase |
|
|
|
{ |
|
|
|
{ |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 年度人力配置 (Dto.Base) |
|
|
|
/// 年月 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public class Ghrh_YearHumanSettingsBase |
|
|
|
[Display(Name = "YearMonth"), Description("年月"), MaxLength(100, ErrorMessage = "年月 不能超过 100 个字符")] |
|
|
|
{ |
|
|
|
public string YearMonth { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 年月 |
|
|
|
/// 部门ID |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
[Display(Name = "YearMonth"), Description("年月"), MaxLength(100, ErrorMessage = "年月 不能超过 100 个字符")] |
|
|
|
public int? DeptId { get; set; } |
|
|
|
public string YearMonth { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 职称ID |
|
|
|
/// 部门ID |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? TitleId { get; set; } |
|
|
|
public int? DeptId { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 职等ID |
|
|
|
/// 职称ID |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? GradeId { get; set; } |
|
|
|
public int? TitleId { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 岗位ID |
|
|
|
/// 职等ID |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? JobId { get; set; } |
|
|
|
public int? GradeId { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算内编制数 |
|
|
|
/// 岗位ID |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetInStaffCount { get; set; } |
|
|
|
public int? JobId { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算外编制数 |
|
|
|
/// 预算内编制数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetOutStaffCount { get; set; } |
|
|
|
public int? BudgetInStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算内在编人数 |
|
|
|
/// 预算外编制数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetInDutyStaffCount { get; set; } |
|
|
|
public int? BudgetOutStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算外在编人数 |
|
|
|
/// 预算内在编人数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetOutDutyStaffCount { get; set; } |
|
|
|
public int? BudgetInDutyStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算内缺编人数 |
|
|
|
/// 预算外在编人数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetInLackStaffCount { get; set; } |
|
|
|
public int? BudgetOutDutyStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预算外缺编人数 |
|
|
|
/// 预算内缺编人数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? BudgetOutLackStaffCount { get; set; } |
|
|
|
public int? BudgetInLackStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 发起人ID |
|
|
|
/// 预算外缺编人数 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? ApplicantId { get; set; } |
|
|
|
public int? BudgetOutLackStaffCount { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// WorkID |
|
|
|
/// 备注 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? WorkID { get; set; } |
|
|
|
[Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")] |
|
|
|
|
|
|
|
public string RemarkSz { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// WorkNo |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// 默认标志 |
|
|
|
[Display(Name = "WorkNo"), Description("WorkNo"), MaxLength(100, ErrorMessage = "WorkNo 不能超过 100 个字符")] |
|
|
|
/// </summary> |
|
|
|
public string WorkNo { get; set; } |
|
|
|
public int? IsDefault { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// ToDoType |
|
|
|
/// 预留字段1 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
[Display(Name = "ToDoType"), Description("ToDoType"), MaxLength(100, ErrorMessage = "ToDoType 不能超过 100 个字符")] |
|
|
|
[Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")] |
|
|
|
public string ToDoType { get; set; } |
|
|
|
public string Reverse1 { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// BatchSID |
|
|
|
/// 预留字段2 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
[Display(Name = "BatchSID"), Description("BatchSID"), MaxLength(100, ErrorMessage = "BatchSID 不能超过 100 个字符")] |
|
|
|
[Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")] |
|
|
|
public string BatchSID { get; set; } |
|
|
|
public string Reverse2 { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// WorkState |
|
|
|
/// 预留字段3 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public int? WorkState { get; set; } |
|
|
|
[Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")] |
|
|
|
|
|
|
|
public string Reverse3 { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// ShiftID |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// 预留字段4 |
|
|
|
public int? ShiftID { get; set; } |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")] |
|
|
|
/// <summary> |
|
|
|
public string Reverse4 { get; set; } |
|
|
|
/// ConfirmUserID |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
/// <summary> |
|
|
|
public int? ConfirmUserID { get; set; } |
|
|
|
/// 预留字段5 |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
/// <summary> |
|
|
|
[Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")] |
|
|
|
/// ConfirmTime |
|
|
|
public string Reverse5 { get; set; } |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
public DateTime? ConfirmTime { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// 预留字段6 |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// ConfirmComment |
|
|
|
[Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")] |
|
|
|
/// </summary> |
|
|
|
public string Reverse6 { get; set; } |
|
|
|
[Display(Name = "ConfirmComment"), Description("ConfirmComment"), MaxLength(2000, ErrorMessage = "ConfirmComment 不能超过 2000 个字符")] |
|
|
|
|
|
|
|
public string ConfirmComment { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// 预留字段7 |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// 同意人 |
|
|
|
[Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")] |
|
|
|
/// </summary> |
|
|
|
public string Reverse7 { get; set; } |
|
|
|
public long? AgreeUserId { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 预留字段8 |
|
|
|
/// 同意时间 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
[Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")] |
|
|
|
public DateTime? AgreeTime { get; set; } |
|
|
|
public string Reverse8 { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 同意理由 |
|
|
|
/// 预留字段9 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
[Display(Name = "AgreeReason"), Description("同意理由"), MaxLength(2000, ErrorMessage = "同意理由 不能超过 2000 个字符")] |
|
|
|
[Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")] |
|
|
|
public string AgreeReason { get; set; } |
|
|
|
public string Reverse9 { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// 拒绝人 |
|
|
|
/// 预留字段10 |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public long? RefuseUserId { get; set; } |
|
|
|
[Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")] |
|
|
|
|
|
|
|
public string Reverse10 { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// 拒绝时间 |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// 预留字段11 |
|
|
|
public DateTime? RefuseTime { get; set; } |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
public int? ReverseI1 { get; set; } |
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// 拒绝理由 |
|
|
|
/// <summary> |
|
|
|
/// </summary> |
|
|
|
/// 预留字段12 |
|
|
|
[Display(Name = "RefuseReason"), Description("拒绝理由"), MaxLength(2000, ErrorMessage = "拒绝理由 不能超过 2000 个字符")] |
|
|
|
/// </summary> |
|
|
|
public string RefuseReason { get; set; } |
|
|
|
public int? ReverseI2 { 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; } |
|
|
|
} |
|
|
|
} |
|
|
|