ย้ายคนจากสรรหาไปบรรจุ
This commit is contained in:
parent
afd9994783
commit
9a53f34107
15 changed files with 846 additions and 260 deletions
|
|
@ -293,6 +293,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Models
|
|||
|
||||
[Comment("วันที่ชำระเงิน")]
|
||||
public DateTime? PaymentDate { get; set; }
|
||||
public virtual List<Education> Educations { get; set; } = new List<Education>();
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
32
Models/EntityBaseNoIsActive.cs
Normal file
32
Models/EntityBaseNoIsActive.cs
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace BMA.EHR.Recurit.Exam.Service.Models
|
||||
{
|
||||
public class EntityBaseNoIsActive
|
||||
{
|
||||
[Key, Column(Order = 0), Comment("PrimaryKey")]
|
||||
[JsonPropertyName("id")]
|
||||
public Guid Id { get; set; }
|
||||
|
||||
[Required, Column(Order = 100), Comment("สร้างข้อมูลเมื่อ")]
|
||||
public DateTime CreatedAt { get; set; } = DateTime.Now;
|
||||
|
||||
[Column(Order = 101), Comment("User Id ที่สร้างข้อมูล"), MaxLength(40)]
|
||||
public string CreatedUserId { get; set; } = string.Empty;
|
||||
|
||||
[Column(Order = 102), Comment("แก้ไขข้อมูลล่าสุดเมื่อ")]
|
||||
public DateTime? LastUpdatedAt { get; set; }
|
||||
|
||||
[Column(Order = 103), Comment("User Id ที่แก้ไขข้อมูลล่าสุด"), MaxLength(40)]
|
||||
public string LastUpdateUserId { get; set; } = string.Empty;
|
||||
|
||||
[Column(Order = 104), Comment("ชื่อ User ที่สร้างข้อมูล"), MaxLength(200)]
|
||||
public string CreatedFullName { get; set; } = string.Empty;
|
||||
|
||||
[Column(Order = 105), Comment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด"), MaxLength(200)]
|
||||
public string LastUpdateFullName { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
28
Models/Placement/Placement.cs
Normal file
28
Models/Placement/Placement.cs
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class Placement : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, Comment("รอบการสอบ")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
[Comment("ครั้งที่")]
|
||||
public string Round { get; set; } = string.Empty;
|
||||
[Required, Comment("ปีงบประมาณ"), MaxLength(5)]
|
||||
public int Year { get; set; }
|
||||
[Required, Comment("จำนวนผู้สอบได้"), MaxLength(10)]
|
||||
public int Number { get; set; } = 0;
|
||||
[Required, Comment("ประเภทการสอบ")]
|
||||
public required PlacementType PlacementType { get; set; }
|
||||
[Required, Comment("วันที่เริ่มบัญชีบัญชี")]
|
||||
public DateTime StartDate { get; set; }
|
||||
[Required, Comment("วันที่สิ้นสุดบัญชี")]
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
[Comment("สถานะการใช้งาน")]
|
||||
public bool IsActive { get; set; } = true;
|
||||
public virtual List<PlacementProfile> PlacementProfiles { get; set; } = new List<PlacementProfile>();
|
||||
}
|
||||
}
|
||||
22
Models/Placement/PlacementCertificate.cs
Normal file
22
Models/Placement/PlacementCertificate.cs
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PlacementCertificate : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, Comment("Id ผู้สมัคร")]
|
||||
public virtual PlacementProfile? PlacementProfile { get; set; }
|
||||
[MaxLength(20), Comment("เลขที่ใบอนุญาต")]
|
||||
public string? CertificateNo { get; set; }
|
||||
[MaxLength(200), Comment("หน่วยงานผู้ออกใบอนุญาต")]
|
||||
public string? Issuer { get; set; }
|
||||
[Comment("วันที่ออกใบอนุญาต")]
|
||||
public DateTime? IssueDate { get; set; }
|
||||
[Comment("วันที่หมดอายุ")]
|
||||
public DateTime? ExpireDate { get; set; }
|
||||
[MaxLength(100), Comment("ชื่อใบอนุญาต")]
|
||||
public string? CertificateType { get; set; }
|
||||
}
|
||||
}
|
||||
44
Models/Placement/PlacementEducation.cs
Normal file
44
Models/Placement/PlacementEducation.cs
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PlacementEducation : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, Comment("Id ผู้สมัคร")]
|
||||
public virtual PlacementProfile? PlacementProfile { get; set; }
|
||||
[Comment("Idวุฒิที่ได้รับ")]
|
||||
public virtual EducationLevel? EducationLevel { get; set; }
|
||||
[MaxLength(1000), Comment("สถานศึกษา")]
|
||||
public string? Institute { get; set; }
|
||||
[MaxLength(200), Comment("วุฒิการศึกษา")]
|
||||
public string? Degree { get; set; }
|
||||
[MaxLength(200), Comment("สาขาวิชา/ทาง")]
|
||||
public string? Field { get; set; }
|
||||
[MaxLength(20), Comment("เกรดเฉลี่ย")]
|
||||
public string? Gpa { get; set; }
|
||||
[MaxLength(1000), Comment("ประเทศ")]
|
||||
public string? Country { get; set; }
|
||||
[MaxLength(1000), Comment("ระยะเวลา")]
|
||||
public string? Duration { get; set; }
|
||||
[MaxLength(1000), Comment("ข้อมูลการติดต่อ")]
|
||||
public string? Other { get; set; }
|
||||
[MaxLength(1000), Comment("ทุน")]
|
||||
public string? FundName { get; set; }
|
||||
[Comment("ระยะเวลาหลักสูตร")]
|
||||
public int DurationYear { get; set; }
|
||||
[Comment("วันที่สำเร็จการศึกษา")]
|
||||
public DateTime? FinishDate { get; set; }
|
||||
[Comment("ประเภทช่วงเวลาการศึกษา")]
|
||||
public bool? IsDate { get; set; }
|
||||
[Comment("ตั้งแต่")]
|
||||
public DateTime? StartDate { get; set; }
|
||||
[Comment("ถึง")]
|
||||
public DateTime? EndDate { get; set; }
|
||||
// [Comment("Id เป็นวุฒิการศึกษาในตำแหน่ง")]
|
||||
// public PositionPath? PositionPath { get; set; }
|
||||
[Comment("เป็นวุฒิศึกษาในตำแหน่ง")]
|
||||
public bool? IsEducation { get; set; }
|
||||
}
|
||||
}
|
||||
15
Models/Placement/PlacementIsProperty.cs
Normal file
15
Models/Placement/PlacementIsProperty.cs
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PlacementIsProperty : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, Comment("ชื่อคุณสมบัติ")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
[Comment("สถานะการใช้งาน")]
|
||||
public bool IsActive { get; set; } = true;
|
||||
}
|
||||
}
|
||||
243
Models/Placement/PlacementProfile.cs
Normal file
243
Models/Placement/PlacementProfile.cs
Normal file
|
|
@ -0,0 +1,243 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PlacementProfile : EntityBaseNoIsActive
|
||||
{
|
||||
|
||||
[Comment("Id บรรจุ")]
|
||||
public Placement? Placement { get; set; }
|
||||
[Comment("Id คำนำหน้า")]
|
||||
public Prefix? Prefix { get; set; }
|
||||
[Comment("ชื่อ")]
|
||||
public string? Firstname { get; set; }
|
||||
[Comment("นามสกุล")]
|
||||
public string? Lastname { get; set; }
|
||||
// [Comment("Id เพศ")]
|
||||
// public Gender? Gender { get; set; }
|
||||
|
||||
[Comment("Id ตำแหน่งที่สอบได้")]
|
||||
public PositionPath? PositionCandidate { get; set; }
|
||||
// [Comment("Id เลขที่ตำแหน่ง")]
|
||||
// public OrganizationPositionEntity? OrganizationPosition { get; set; }
|
||||
[Comment("วันที่บรรจุ")]
|
||||
public DateTime? RecruitDate { get; set; }
|
||||
[Comment("วันที่รายงานตัว")]
|
||||
public DateTime? ReportingDate { get; set; }
|
||||
[Comment("เงินเดือน")]
|
||||
public double? Amount { get; set; }
|
||||
[Comment("เงินประจำตำแหน่ง")]
|
||||
public double? PositionSalaryAmount { get; set; }
|
||||
[Comment("เงินค่าตอบแทนรายเดือน")]
|
||||
public double? MouthSalaryAmount { get; set; }
|
||||
[Comment("ตำแหน่ง (รายละเอียด)")]
|
||||
public string? SalaryClass { get; set; }
|
||||
[Comment("เอกสารอ้างอิง")]
|
||||
public string? SalaryRef { get; set; }
|
||||
[Comment("ข้าราชการฯ กทม.")]
|
||||
public bool? IsOfficer { get; set; }
|
||||
[Comment("สถานะการบรรจุ")]
|
||||
public string PlacementStatus { get; set; } = "un-contain";
|
||||
[Comment("เหตุผลสละสิทธิ์")]
|
||||
public string? RejectReason { get; set; }
|
||||
[Comment("ผ่อนผัน")]
|
||||
public bool IsRelief { get; set; } = false;
|
||||
[Comment("เหตุผลผ่อนผัน")]
|
||||
public string? ReliefReason { get; set; }
|
||||
// [Comment("Id เอกสารผ่อนผัน")]
|
||||
// public Document? ReliefDoc { get; set; }
|
||||
[Comment("การคัดกรองคุณสมบัติ")]
|
||||
public string? IsProperty { get; set; }
|
||||
|
||||
|
||||
[MaxLength(40), Comment("สัญชาติ")]
|
||||
public string? Nationality { get; set; }
|
||||
[MaxLength(40), Comment("เชื้อชาติ")]
|
||||
public string? Race { get; set; }
|
||||
|
||||
[MaxLength(40), Comment("วันเกิด")]
|
||||
public DateTime? DateOfBirth { get; set; }
|
||||
|
||||
[Comment("Id สถานภาพ")]
|
||||
public Relationship? Relationship { get; set; }
|
||||
// [Comment("Id กลุ่มเลือด")]
|
||||
// public BloodGroup? BloodGroup { get; set; }
|
||||
[Comment("Id ศาสนา")]
|
||||
public Religion? Religion { get; set; }
|
||||
|
||||
[MaxLength(200), Comment("อีเมล")]
|
||||
public string? Email { get; set; }
|
||||
|
||||
[MaxLength(20), Comment("เลขประจำตัวประชาชน")]
|
||||
public string? CitizenId { get; set; }
|
||||
|
||||
[Comment("Id เขตที่ออกบัตรประชาชน")]
|
||||
public District? CitizenDistrict { get; set; }
|
||||
|
||||
[Comment("Id จังหวัดที่ออกบัตรประชาชน")]
|
||||
public Province? CitizenProvince { get; set; }
|
||||
|
||||
[Comment("วันที่ออกบัตร")]
|
||||
public DateTime? CitizenDate { get; set; }
|
||||
|
||||
[MaxLength(20), Comment("โทรศัพท์")]
|
||||
public string? Telephone { get; set; }
|
||||
|
||||
[MaxLength(20), Comment("โทรศัพท์มือถือ")]
|
||||
public string? MobilePhone { get; set; }
|
||||
|
||||
[Comment("ความสามารถพิเศษ")]
|
||||
public string? Knowledge { get; set; }
|
||||
|
||||
[Comment("ที่อยู่ตามทะเบียนบ้าน")]
|
||||
public string? RegistAddress { get; set; }
|
||||
|
||||
[Comment("Id จังหวัดที่อยู่ตามทะเบียนบ้าน")]
|
||||
public Province? RegistProvince { get; set; }
|
||||
|
||||
[Comment("Id อำเภอที่อยู่ตามทะเบียนบ้าน")]
|
||||
public District? RegistDistrict { get; set; }
|
||||
|
||||
[Comment("Id ตำบลที่อยู่ตามทะเบียนบ้าน")]
|
||||
public SubDistrict? RegistSubDistrict { get; set; }
|
||||
|
||||
[MaxLength(10), Comment("รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน")]
|
||||
public string? RegistZipCode { get; set; }
|
||||
|
||||
[Comment("ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน")]
|
||||
public bool? RegistSame { get; set; }
|
||||
|
||||
[Comment("ที่อยู่ปัจจุบัน")]
|
||||
public string? CurrentAddress { get; set; }
|
||||
|
||||
[Comment("Id จังหวัดที่อยู่ปัจจุบัน")]
|
||||
public Province? CurrentProvince { get; set; }
|
||||
|
||||
[Comment("Id อำเภอที่อยู่ปัจจุบัน")]
|
||||
public District? CurrentDistrict { get; set; }
|
||||
|
||||
[Comment("Id ตำบลที่อยู่ปัจจุบัน")]
|
||||
public SubDistrict? CurrentSubDistrict { get; set; }
|
||||
|
||||
[MaxLength(10), Comment("รหัสไปรษณีย์ที่อยู่ปัจจุบัน")]
|
||||
public string? CurrentZipCode { get; set; }
|
||||
|
||||
[Comment("คู่สมรส")]
|
||||
public bool? Marry { get; set; }
|
||||
|
||||
[Comment("Id คำนำหน้าชื่อคู่สมรส")]
|
||||
public Prefix? MarryPrefix { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("ชื่อจริงคู่สมรส")]
|
||||
public string? MarryFirstName { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("นามสกุลคู่สมรส")]
|
||||
public string? MarryLastName { get; set; }
|
||||
|
||||
[MaxLength(200), Comment("อาชีพคู่สมรส")]
|
||||
public string? MarryOccupation { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("สัญชาติคู่สมรส")]
|
||||
public string? MarryNationality { get; set; }
|
||||
|
||||
[Comment("Id คำนำหน้าชื่อบิดา")]
|
||||
public Prefix? FatherPrefix { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("ชื่อจริงบิดา")]
|
||||
public string? FatherFirstName { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("นามสกุลบิดา")]
|
||||
public string? FatherLastName { get; set; }
|
||||
|
||||
[MaxLength(200), Comment("อาชีพบิดา")]
|
||||
public string? FatherOccupation { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("สัญชาติบิดา")]
|
||||
public string? FatherNationality { get; set; }
|
||||
|
||||
[Comment("Id คำนำหน้าชื่อมารดา")]
|
||||
public Prefix? MotherPrefix { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("ชื่อจริงมารดา")]
|
||||
public string? MotherFirstName { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("นามสกุลมารดา")]
|
||||
public string? MotherLastName { get; set; }
|
||||
|
||||
[MaxLength(200), Comment("อาชีพมารดา")]
|
||||
public string? MotherOccupation { get; set; }
|
||||
|
||||
[MaxLength(100), Comment("สัญชาติมารดา")]
|
||||
public string? MotherNationality { get; set; }
|
||||
|
||||
[Comment("ประเภทอาชีพที่ทำงานมาก่อน")]
|
||||
public string? OccupationType { get; set; }
|
||||
|
||||
[Comment("สำนัก/บริษัท บริษัท")]
|
||||
public string? OccupationCompany { get; set; }
|
||||
|
||||
[Comment("กอง/ฝ่าย บริษัท")]
|
||||
public string? OccupationDepartment { get; set; }
|
||||
|
||||
[MaxLength(200), Comment("อีเมล บริษัท")]
|
||||
public string? OccupationEmail { get; set; }
|
||||
|
||||
[MaxLength(20), Comment("โทรศัพท์ บริษัท")]
|
||||
public string? OccupationTelephone { get; set; }
|
||||
|
||||
[Comment("ตำแหน่งอาชีพ")]
|
||||
public string? OccupationPosition { get; set; }
|
||||
|
||||
// [Comment("Id ตำแหน่งเลขที่")]
|
||||
// public PositionNumberEntity? PositionNumber { get; set; }
|
||||
|
||||
// [Comment("Id ตำแหน่ง")]
|
||||
// public PositionPath? PositionPath { get; set; }
|
||||
|
||||
// [Comment("Id ด้าน/สาขา")]
|
||||
// public PositionPathSide? PositionPathSide { get; set; }
|
||||
|
||||
// [Comment("Id ประเภทตำแหน่ง")]
|
||||
// public PositionType? PositionType { get; set; }
|
||||
|
||||
// [Comment("Id สายงาน")]
|
||||
// public PositionLine? PositionLine { get; set; }
|
||||
|
||||
// [Comment("Id ระดับ")]
|
||||
// public PositionLevel? PositionLevel { get; set; }
|
||||
|
||||
|
||||
[Comment("คะแนนเต็มภาค ก")]
|
||||
public double? PointTotalA { get; set; }
|
||||
|
||||
[Comment("คะแนนภาค ก")]
|
||||
public double? PointA { get; set; }
|
||||
[Comment("คะแนนเต็มภาค ข")]
|
||||
public double? PointTotalB { get; set; }
|
||||
|
||||
[Comment("คะแนนภาค ข")]
|
||||
public double? PointB { get; set; }
|
||||
|
||||
[Comment("คะแนนเต็มภาค ค")]
|
||||
public double? PointTotalC { get; set; }
|
||||
|
||||
[Comment("คะแนนภาค ค")]
|
||||
public double? PointC { get; set; }
|
||||
|
||||
[Comment("ลำดับที่สอบได้")]
|
||||
public int ExamNumber { get; set; }
|
||||
|
||||
[Comment("จำนวนครั้งที่สมัครสอบ")]
|
||||
public int ExamRound { get; set; }
|
||||
|
||||
[Comment("ผลสมัครสอบ")]
|
||||
public string? Pass { get; set; }
|
||||
|
||||
[Comment("ข้อมูลตำแหน่ง Draft")]
|
||||
public bool? Draft { get; set; }
|
||||
public virtual List<PlacementCertificate> PlacementCertificates { get; set; } = new List<PlacementCertificate>();
|
||||
public virtual List<PlacementEducation> PlacementEducations { get; set; } = new List<PlacementEducation>();
|
||||
}
|
||||
}
|
||||
15
Models/Placement/PlacementType.cs
Normal file
15
Models/Placement/PlacementType.cs
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PlacementType : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, Comment("ชื่อประเภทบรรจุ")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
[Comment("สถานะการใช้งาน")]
|
||||
public bool IsActive { get; set; } = true;
|
||||
}
|
||||
}
|
||||
19
Models/Placement/PositionPath.cs
Normal file
19
Models/Placement/PositionPath.cs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using BMA.EHR.Recurit.Exam.Service.Models;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace BMA.EHR.Domain.Models.Placement
|
||||
{
|
||||
public class PositionPath : EntityBaseNoIsActive
|
||||
{
|
||||
[Required, MaxLength(100), Column(Order = 1), Comment("ชื่อสายงาน")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
[Column(Order = 2), Comment("สถานะการใช้งาน")]
|
||||
public bool IsActive { get; set; } = true;
|
||||
|
||||
[Column(Order = 3), Comment("หมายเหตุ")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue