using BMA.EHR.Recruit.Service.Models.Documents; using Microsoft.EntityFrameworkCore; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using BMA.EHR.Report.Service.Models; namespace BMA.EHR.Recruit.Service.Models.Recruits { public class RecruitImport : EntityBase { [Required, Comment("ปีที่จัดการสอบ"), Column(Order = 1)] public int Year { get; set; } [Required, MaxLength(250), Comment("ชื่อการสอบ"), Column(Order = 2)] public string Name { get; set; } = string.Empty; [Required, Comment("ครั้งที่"), Column(Order = 3)] public int Order { get; set; } = 1; [Column(Order = 4, TypeName = "text"), Comment("รายละเอียด")] public string? Detail { get; set; } [Column(Order = 5), Comment("ค่าธรรมเนียม")] public int Fee { get; set; } = 0; [Column(Order = 6), Comment("วันเริ่มประกาศ")] public DateTime? AnnouncementStartDate { get; set; } [Column(Order = 7), Comment("วันสิ้นสุดประกาศ")] public DateTime? AnnouncementEndDate { get; set; } [Column(Order = 8), Comment("วันเริ่มชำระเงิน")] public DateTime? PaymentStartDate { get; set; } [Column(Order = 9), Comment("วันสิ้นสุดชำระเงิน")] public DateTime? PaymentEndDate { get; set; } [Column(Order = 10), Comment("วันเริ่มสมัครสอบ")] public DateTime? RegisterStartDate { get; set; } [Column(Order = 11), Comment("วันสิ้นสุดสมัครสอบ")] public DateTime? RegisterEndDate { get; set; } [Column(Order = 12), Comment("วันที่สอบ")] public DateTime? ExamDate { get; set; } [Column(Order = 13, TypeName = "text"), Comment("หมายเหตุ")] public string? Note { get; set; } public string? AuthName { get; set; } public string? AuthPosition { get; set; } public DateTime? AnnouncementDate { get; set; } public Document ImportFile { get; set; } = new Document(); public List Recruits { get; set; } = new List(); public ScoreImport ScoreImport { get; set; } public List ImportHostories { get; set; } = new List(); } }