|
|
|
@ -6,212 +6,213 @@ |
|
|
|
|
* |
|
|
|
|
* Ver 变更日期 负责人 变更内容 |
|
|
|
|
* ─────────────────────────────────── |
|
|
|
|
*V0.01 2024/7/24 13:42:13 SimonHsiao 初版 |
|
|
|
|
*V0.01 2024/12/23 14:36:50 SimonHsiao 初版 |
|
|
|
|
* |
|
|
|
|
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. |
|
|
|
|
*┌──────────────────────────────────┐ |
|
|
|
|
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ |
|
|
|
|
*│ 作者:SimonHsiao │ |
|
|
|
|
*└──────────────────────────────────┘ |
|
|
|
|
*/ |
|
|
|
|
using System.ComponentModel; |
|
|
|
|
using System.ComponentModel.DataAnnotations; |
|
|
|
|
using System.ComponentModel.DataAnnotations.Schema; |
|
|
|
|
*/ |
|
|
|
|
namespace Tiobon.Core.Model.Models; |
|
|
|
|
|
|
|
|
|
namespace Tiobon.Core.Model.Models |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 考试记录 (Dto.Base) |
|
|
|
|
/// </summary> |
|
|
|
|
public class Ghre_ExamRecordBase |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 考试记录 (Dto.Base) |
|
|
|
|
/// </summary> |
|
|
|
|
public class Ghre_ExamRecordBase |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 试卷ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? ExamId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 培训记录ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? StudyRecordId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 员工ID |
|
|
|
|
/// </summary> |
|
|
|
|
public int? StaffId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 课程快照ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? CourseSnapId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 试卷ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? ExamPaperId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 得分 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Score"), Description("得分"), Column(TypeName = "decimal(20,2)")] |
|
|
|
|
public decimal? Score { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 调整得分 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "AdjustScore"), Description("调整得分"), Column(TypeName = "decimal(20,2)")] |
|
|
|
|
public decimal? AdjustScore { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 考试日期 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ExamDate { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 开始时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? BeginTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 结束时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? EndTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 实际开始时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ActualBeginTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 实际结束时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ActualEndTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 重考次数 |
|
|
|
|
/// </summary> |
|
|
|
|
public int? RetakeTimes { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 状态 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Status"), Description("状态"), MaxLength(32, ErrorMessage = "状态 不能超过 32 个字符")] |
|
|
|
|
public string Status { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 评分状态 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "ScoreStatus"), Description("评分状态"), MaxLength(32, ErrorMessage = "评分状态 不能超过 32 个字符")] |
|
|
|
|
public string ScoreStatus { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 评语 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Comment"), Description("评语"), MaxLength(2000, ErrorMessage = "评语 不能超过 2000 个字符")] |
|
|
|
|
public string Comment { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 是否合格 |
|
|
|
|
/// </summary> |
|
|
|
|
public bool? IsPass { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 来源 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Source"), Description("来源"), MaxLength(32, ErrorMessage = "来源 不能超过 32 个字符")] |
|
|
|
|
public string Source { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 是否查看试卷 |
|
|
|
|
/// </summary> |
|
|
|
|
public bool? IsView { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 查看试卷时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ViewTime { 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; } |
|
|
|
|
} |
|
|
|
|
/// 试卷ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? ExamId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 培训记录ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? StudyRecordId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 员工ID |
|
|
|
|
/// </summary> |
|
|
|
|
public int? StaffId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 课程快照ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? CourseSnapId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 试卷ID |
|
|
|
|
/// </summary> |
|
|
|
|
public long? ExamPaperId { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 得分 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Score"), Description("得分"), Column(TypeName = "decimal(20,2)")] |
|
|
|
|
public decimal? Score { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 调整得分 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "AdjustScore"), Description("调整得分"), Column(TypeName = "decimal(20,2)")] |
|
|
|
|
public decimal? AdjustScore { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 考试日期 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ExamDate { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 开始时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? BeginTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 结束时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? EndTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 实际开始时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ActualBeginTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 实际结束时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ActualEndTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 重考次数 |
|
|
|
|
/// </summary> |
|
|
|
|
public int? RetakeTimes { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 状态 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Status"), Description("状态"), MaxLength(32, ErrorMessage = "状态 不能超过 32 个字符")] |
|
|
|
|
public string Status { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 评分状态 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "ScoreStatus"), Description("评分状态"), MaxLength(32, ErrorMessage = "评分状态 不能超过 32 个字符")] |
|
|
|
|
public string ScoreStatus { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 评语 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Comment"), Description("评语"), MaxLength(2000, ErrorMessage = "评语 不能超过 2000 个字符")] |
|
|
|
|
public string Comment { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 是否合格 |
|
|
|
|
/// </summary> |
|
|
|
|
public bool? IsPass { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 来源 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "Source"), Description("来源"), MaxLength(32, ErrorMessage = "来源 不能超过 32 个字符")] |
|
|
|
|
public string Source { 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? IsView { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 查看试卷时间 |
|
|
|
|
/// </summary> |
|
|
|
|
public DateTime? ViewTime { get; set; } |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// 实操分 |
|
|
|
|
/// </summary> |
|
|
|
|
[Display(Name = "ActualScore"), Description("实操分"), Column(TypeName = "decimal(20,2)")] |
|
|
|
|
public decimal? ActualScore { get; set; } |
|
|
|
|
} |
|
|
|
|