diff --git a/Controllers/CandidateController.cs b/Controllers/CandidateController.cs
index 59f459d..481e469 100644
--- a/Controllers/CandidateController.cs
+++ b/Controllers/CandidateController.cs
@@ -617,7 +617,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
/// เมื่อเจ้าหน้าที่ตรวจคุณสมบัติผู้สมัครสำเร็จ
/// ไม่ได้ Login เข้าระบบ
/// เมื่อเกิดข้อผิดพลาดในการทำงาน
- [HttpPut("check-register/{candidate:length(36)}")]
+ [HttpPut("check-register/{candidateId:length(36)}")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
@@ -643,7 +643,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
/// เมื่อเจ้าหน้าที่ตรวจคุณสมบัติผู้สมัครไม่ผ่านและให้สมัครใหม่สำเร็จ
/// ไม่ได้ Login เข้าระบบ
/// เมื่อเกิดข้อผิดพลาดในการทำงาน
- [HttpPut("reject-register/{candidate:length(36)}")]
+ [HttpPut("reject-register/{candidateId:length(36)}")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
@@ -669,7 +669,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
/// เมื่อเจ้าหน้าที่ตรวจการชำระเงินสำเร็จ
/// ไม่ได้ Login เข้าระบบ
/// เมื่อเกิดข้อผิดพลาดในการทำงาน
- [HttpPut("check-payment/{candidate:length(36)}")]
+ [HttpPut("check-payment/{candidateId:length(36)}")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
@@ -695,7 +695,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
/// เมื่อเจ้าหน้าที่บันทึกสถานที่สอบสำเร็จ
/// ไม่ได้ Login เข้าระบบ
/// เมื่อเกิดข้อผิดพลาดในการทำงาน
- [HttpGet("pass-seat/{candidate:length(36)}")]
+ [HttpGet("pass-seat/{candidateId:length(36)}")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
@@ -721,7 +721,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
/// เมื่อเจ้าหน้าที่บันทึกคะแนนสอบสำเร็จ
/// ไม่ได้ Login เข้าระบบ
/// เมื่อเกิดข้อผิดพลาดในการทำงาน
- [HttpGet("pass-point/{candidate:length(36)}")]
+ [HttpGet("pass-point/{candidateId:length(36)}")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
diff --git a/Controllers/PeriodExamController.cs b/Controllers/PeriodExamController.cs
index 0949d76..06fdb4d 100644
--- a/Controllers/PeriodExamController.cs
+++ b/Controllers/PeriodExamController.cs
@@ -1,3 +1,4 @@
+using BMA.EHR.Recurit.Exam.Service.Core;
using BMA.EHR.Recurit.Exam.Service.Models;
using BMA.EHR.Recurit.Exam.Service.Request;
using BMA.EHR.Recurit.Exam.Service.Response;
@@ -58,6 +59,32 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
}
}
+ ///
+ /// ข้อมูลสถานะจ่ายเงิน
+ /// รหัสรอบสมัคร
+ ///
+ ///
+ /// เมื่อทำการอ่านข้อมูลสถานะจ่ายเงินสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpGet("status-payment/{examId:length(36)}")]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> GetsStatusPaymentAsync(string examId)
+ {
+ try
+ {
+ var items = await _periodExamService.GetsStatusPaymentAsync(examId);
+
+ return Success(items);
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
+
///
/// ข้อมูลรอบการสมัครสอบ และ คนสมัครสอบในรอบ
///
@@ -189,31 +216,31 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
// }
// }
- // ///
- // /// รายชื่อผู้สมัครสอบรอ ตรวจสอบการชำระเงิน
- // ///
- // /// รหัสรอบสมัคร
- // ///
- // /// เมื่อทำการอ่านรายชื่อผู้สมัครสอบรอ ตรวจสอบการชำระเงินสำเร็จ
- // /// ไม่ได้ Login เข้าระบบ
- // /// เมื่อเกิดข้อผิดพลาดในการทำงาน
- // [HttpGet("payment/{examId:length(36)}")]
- // [ProducesResponseType(StatusCodes.Status200OK)]
- // [ProducesResponseType(StatusCodes.Status401Unauthorized)]
- // [ProducesResponseType(StatusCodes.Status500InternalServerError)]
- // public async Task> GetsCandidateCheckPaymentAsync(string examId)
- // {
- // try
- // {
- // var items = await _periodExamService.GetsCandidateByStatusAsync(examId, "checkPayment");
+ ///
+ /// ข้อมูลชำระเงิน
+ ///
+ /// รหัสรอบสมัคร
+ ///
+ /// เมื่อทำการอ่านข้อมูลชำระเงินสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpGet("payment/{examId:length(36)}")]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> GetsPaymentExamAsync(string examId)
+ {
+ try
+ {
+ var items = await _periodExamService.GetsPaymentExamAsync(examId);
- // return Success(items);
- // }
- // catch (Exception ex)
- // {
- // return Error(ex);
- // }
- // }
+ return Success(items);
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
// ///
// /// รายชื่อผู้สมัครสอบรอ จัดการเลขที่นั่งสอบ
@@ -422,6 +449,131 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
return Error(ex);
}
}
+
+ ///
+ /// อัพเดทข้อมูลที่นั่งสอบ
+ ///
+ /// รหัสรอบสมัคร
+ ///
+ /// เมื่อทำการอ่านอัพเดทข้อมูลที่นั่งสอบสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpPut("upload-seat/{examId:length(36)}"), DisableRequestSizeLimit]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> UploadSeatCandidateAsync(string examId)
+ {
+ try
+ {
+ if (Request.Form.Files == null || Request.Form.Files.Count == 0)
+ {
+ return Error(GlobalMessages.NoFileToUpload);
+ }
+ var file = Request.Form.Files[0];
+ if (!Path.GetExtension(file.FileName).Equals(".xlsx", StringComparison.OrdinalIgnoreCase))
+ {
+ return Error("นามสกุลไฟล์ต้องเป็น .xlsx!");
+ }
+ await _periodExamService.UploadSeatCandidateAsync(examId, file);
+
+ return Success();
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
+
+ ///
+ /// อัพเดทข้อมูลคะแนน
+ ///
+ /// รหัสรอบสมัคร
+ ///
+ /// เมื่อทำการอ่านอัพเดทข้อมูลคะแนนสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpPut("upload-point/{examId:length(36)}"), DisableRequestSizeLimit]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> UploadPointCandidateAsync(string examId)
+ {
+ try
+ {
+ if (Request.Form.Files == null || Request.Form.Files.Count == 0)
+ {
+ return Error(GlobalMessages.NoFileToUpload);
+ }
+ var file = Request.Form.Files[0];
+ if (!Path.GetExtension(file.FileName).Equals(".xlsx", StringComparison.OrdinalIgnoreCase))
+ {
+ return Error("นามสกุลไฟล์ต้องเป็น .xlsx!");
+ }
+ await _periodExamService.UploadPointCandidateAsync(examId, file);
+
+ return Success();
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
+
+ ///
+ /// โหลดผู้สมัครสอบ
+ ///
+ /// รหัสรอบสมัคร
+ ///
+ /// เมื่อทำการอ่านโหลดผู้สมัครสอบสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpGet("download/{examId:length(36)}")]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> DownloadCandidateAsync(string examId)
+ {
+ try
+ {
+ var stream = await _periodExamService.DownloadCandidateAsync(examId);
+
+ string excelName = $"Candidate_{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.xlsx";
+ return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", excelName);
+ // return Success();
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
+
+ ///
+ /// ข้อมูลตำแหน่งสมัครสอบ
+ /// รหัสรอบสมัคร
+ /// รหัสตำแหน่ง
+ ///
+ ///
+ /// เมื่อทำการอ่านข้อมูลตำแหน่งสมัครสอบสำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpGet("position/{examId:length(36)}/{positionId:length(36)}")]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> GetsNamePositionAsync(string examId, string positionId)
+ {
+ try
+ {
+ var items = await _periodExamService.GetsNamePositionAsync(examId, positionId);
+
+ return Success(items);
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
#endregion
}
}
diff --git a/Data/Migrations/ApplicationDbContextModelSnapshot.cs b/Data/Migrations/ApplicationDbContextModelSnapshot.cs
index 3f429c3..b3c3f4b 100644
--- a/Data/Migrations/ApplicationDbContextModelSnapshot.cs
+++ b/Data/Migrations/ApplicationDbContextModelSnapshot.cs
@@ -159,6 +159,10 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
.HasColumnType("varchar(200)")
.HasComment("อีเมล");
+ b.Property("ExamIdenNumber")
+ .HasColumnType("longtext")
+ .HasComment("เลขประจำตัวสอบ");
+
b.Property("FatherFirstName")
.HasMaxLength(100)
.HasColumnType("varchar(100)")
@@ -310,6 +314,13 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
b.Property("PeriodExamId")
.HasColumnType("char(36)");
+ b.Property("Point")
+ .HasColumnType("longtext")
+ .HasComment("คะแนน");
+
+ b.Property("PositionExamId")
+ .HasColumnType("char(36)");
+
b.Property("PrefixId")
.HasColumnType("char(36)");
@@ -388,6 +399,8 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
b.HasIndex("PeriodExamId");
+ b.HasIndex("PositionExamId");
+
b.HasIndex("PrefixId");
b.HasIndex("ProfileImgId");
@@ -946,6 +959,10 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
.HasColumnOrder(8)
.HasComment("รอบการสอบ");
+ b.Property("SetSeat")
+ .HasColumnType("tinyint(1)")
+ .HasComment("เช็คอัพคะแนน");
+
b.Property("Year")
.HasColumnType("int")
.HasComment("ปีงบประมาณ");
@@ -1013,6 +1030,10 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
.HasColumnType("longtext")
.HasComment("ชื่อตำแหน่ง");
+ b.Property("TypeId")
+ .HasColumnType("longtext")
+ .HasComment("Id ประเภทแบบฟอร์ม");
+
b.Property("TypeName")
.HasColumnType("longtext")
.HasComment("ชื่อประเภทแบบฟอร์ม");
@@ -1359,7 +1380,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
{
b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
- .WithMany()
+ .WithMany("BankExam")
.HasForeignKey("PeriodExamId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
@@ -1406,11 +1427,15 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
.HasForeignKey("PaymentImgId");
b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
- .WithMany()
+ .WithMany("Candidate")
.HasForeignKey("PeriodExamId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", "PositionExam")
+ .WithMany()
+ .HasForeignKey("PositionExamId");
+
b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Prefix", "Prefix")
.WithMany()
.HasForeignKey("PrefixId");
@@ -1455,6 +1480,8 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
b.Navigation("PeriodExam");
+ b.Navigation("PositionExam");
+
b.Navigation("Prefix");
b.Navigation("ProfileImg");
@@ -1529,7 +1556,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", b =>
{
b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
- .WithMany()
+ .WithMany("PositionExam")
.HasForeignKey("PeriodExamId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
@@ -1551,6 +1578,15 @@ namespace BMA.EHR.Recurit.Exam.Service.Data.Migrations
b.Navigation("SubDistricts");
});
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", b =>
+ {
+ b.Navigation("BankExam");
+
+ b.Navigation("Candidate");
+
+ b.Navigation("PositionExam");
+ });
+
modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Province", b =>
{
b.Navigation("Districts");
diff --git a/Migrations/20230405033622_Update table Candidate add bank2.Designer.cs b/Migrations/20230405033622_Update table Candidate add bank2.Designer.cs
new file mode 100644
index 0000000..1666319
--- /dev/null
+++ b/Migrations/20230405033622_Update table Candidate add bank2.Designer.cs
@@ -0,0 +1,1575 @@
+//
+using System;
+using BMA.EHR.Recurit.Exam.Service.Data;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace BMA.EHR.Recurit.Exam.Service.Migrations
+{
+ [DbContext(typeof(ApplicationDbContext))]
+ [Migration("20230405033622_Update table Candidate add bank2")]
+ partial class UpdatetableCandidateaddbank2
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "7.0.4")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("AccountName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อบัญชี");
+
+ b.Property("AccountNumber")
+ .HasColumnType("longtext")
+ .HasComment("เลขบัญชี");
+
+ b.Property("BankName")
+ .HasColumnType("longtext")
+ .HasComment("ธนาคาร");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("PeriodExamId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("PeriodExamId");
+
+ b.ToTable("BankExams");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CitizenDate")
+ .HasColumnType("datetime(6)")
+ .HasComment("วันที่ออกบัตร");
+
+ b.Property("CitizenDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("CitizenId")
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasComment("เลขประจำตัวประชาชน");
+
+ b.Property("CitizenProvinceId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("CurrentAddress")
+ .HasColumnType("longtext")
+ .HasComment("ที่อยู่ปัจจุบัน");
+
+ b.Property("CurrentDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("CurrentProvinceId")
+ .HasColumnType("char(36)");
+
+ b.Property("CurrentSubDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("CurrentZipCode")
+ .HasMaxLength(10)
+ .HasColumnType("varchar(10)")
+ .HasComment("รหัสไปรษณีย์ที่อยู่ปัจจุบัน");
+
+ b.Property("DateOfBirth")
+ .HasMaxLength(40)
+ .HasColumnType("datetime(6)")
+ .HasComment("วันเกิด");
+
+ b.Property("Email")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasComment("อีเมล");
+
+ b.Property("FatherFirstName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("ชื่อจริงบิดา");
+
+ b.Property("FatherLastName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("นามสกุลบิดา");
+
+ b.Property("FatherNationality")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("สัญชาติบิดา");
+
+ b.Property("FatherOccupation")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasComment("อาชีพบิดา");
+
+ b.Property("FatherPrefixId")
+ .HasColumnType("char(36)");
+
+ b.Property("FirstName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasColumnOrder(1)
+ .HasComment("ชื่อจริง");
+
+ b.Property("Knowledge")
+ .HasColumnType("longtext")
+ .HasComment("ความสามารถพิเศษ");
+
+ b.Property("LastName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasColumnOrder(2)
+ .HasComment("นามสกุล");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Marry")
+ .HasColumnType("tinyint(1)")
+ .HasComment("คู่สมรส");
+
+ b.Property("MarryFirstName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("ชื่อจริงคู่สมรส");
+
+ b.Property("MarryLastName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("นามสกุลคู่สมรส");
+
+ b.Property("MarryNationality")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("สัญชาติคู่สมรส");
+
+ b.Property("MarryOccupation")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasComment("อาชีพคู่สมรส");
+
+ b.Property("MarryPrefixId")
+ .HasColumnType("char(36)");
+
+ b.Property("MobilePhone")
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasComment("โทรศัพท์มือถือ");
+
+ b.Property("MotherFirstName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("ชื่อจริงมารดา");
+
+ b.Property("MotherLastName")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("นามสกุลมารดา");
+
+ b.Property("MotherNationality")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasComment("สัญชาติมารดา");
+
+ b.Property("MotherOccupation")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasComment("อาชีพมารดา");
+
+ b.Property("MotherPrefixId")
+ .HasColumnType("char(36)");
+
+ b.Property("Nationality")
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(3)
+ .HasComment("สัญชาติ");
+
+ b.Property("OccupationCompany")
+ .HasColumnType("longtext")
+ .HasComment("สำนัก/บริษัท บริษัท");
+
+ b.Property("OccupationDepartment")
+ .HasColumnType("longtext")
+ .HasComment("กอง/ฝ่าย บริษัท");
+
+ b.Property("OccupationEmail")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasComment("อีเมล บริษัท");
+
+ b.Property("OccupationPosition")
+ .HasColumnType("longtext")
+ .HasComment("ตำแหน่งอาชีพ");
+
+ b.Property("OccupationTelephone")
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasComment("โทรศัพท์ บริษัท");
+
+ b.Property("OccupationType")
+ .HasColumnType("longtext")
+ .HasComment("ประเภทอาชีพที่ทำงานมาก่อน");
+
+ b.Property("PaymentImgId")
+ .HasColumnType("char(36)");
+
+ b.Property("PeriodExamId")
+ .HasColumnType("char(36)");
+
+ b.Property("PositionExamId")
+ .HasColumnType("char(36)");
+
+ b.Property("PrefixId")
+ .HasColumnType("char(36)");
+
+ b.Property("ProfileImgId")
+ .HasColumnType("char(36)");
+
+ b.Property("RegistAddress")
+ .HasColumnType("longtext")
+ .HasComment("ที่อยู่ตามทะเบียนบ้าน");
+
+ b.Property("RegistDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("RegistProvinceId")
+ .HasColumnType("char(36)");
+
+ b.Property("RegistSame")
+ .HasColumnType("tinyint(1)")
+ .HasComment("ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน");
+
+ b.Property("RegistSubDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("RegistZipCode")
+ .HasMaxLength(10)
+ .HasColumnType("varchar(10)")
+ .HasComment("รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน");
+
+ b.Property("RejectDetail")
+ .HasColumnType("longtext")
+ .HasComment("เหตุผลการไม่อนุมัติ");
+
+ b.Property("RelationshipId")
+ .HasColumnType("char(36)");
+
+ b.Property("SeatNumber")
+ .HasColumnType("longtext")
+ .HasComment("เลขที่นั่งสอบ");
+
+ b.Property("Status")
+ .IsRequired()
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasComment("สถานะผู้สมัคร");
+
+ b.Property("Telephone")
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasComment("โทรศัพท์");
+
+ b.Property("UserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasComment("User Id ผู้สมัคร");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CitizenDistrictId");
+
+ b.HasIndex("CitizenProvinceId");
+
+ b.HasIndex("CurrentDistrictId");
+
+ b.HasIndex("CurrentProvinceId");
+
+ b.HasIndex("CurrentSubDistrictId");
+
+ b.HasIndex("FatherPrefixId");
+
+ b.HasIndex("MarryPrefixId");
+
+ b.HasIndex("MotherPrefixId");
+
+ b.HasIndex("PaymentImgId");
+
+ b.HasIndex("PeriodExamId");
+
+ b.HasIndex("PositionExamId");
+
+ b.HasIndex("PrefixId");
+
+ b.HasIndex("ProfileImgId");
+
+ b.HasIndex("RegistDistrictId");
+
+ b.HasIndex("RegistProvinceId");
+
+ b.HasIndex("RegistSubDistrictId");
+
+ b.HasIndex("RelationshipId");
+
+ b.ToTable("Candidates");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CandidateDocument", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CandidateId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("DocumentId")
+ .HasColumnType("char(36)");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CandidateId");
+
+ b.HasIndex("DocumentId");
+
+ b.ToTable("CandidateDocuments");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Career", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CandidateId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("DurationEnd")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(2)
+ .HasComment("ระยะเวลาสิ้นสุด");
+
+ b.Property("DurationStart")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(1)
+ .HasComment("ระยะเวลาเริ่ม");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnOrder(3)
+ .HasComment("สถานที่ทำงาน/ฝึกงาน");
+
+ b.Property("Position")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnOrder(4)
+ .HasComment("ตำแหน่ง/ลักษณะงาน");
+
+ b.Property("Reason")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnOrder(6)
+ .HasComment("เหตุผลที่ออก");
+
+ b.Property("Salary")
+ .HasMaxLength(20)
+ .HasColumnType("int")
+ .HasColumnOrder(5)
+ .HasComment("เงินเดือนสุดท้ายก่อนออก");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CandidateId");
+
+ b.ToTable("Careers");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.District", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(2)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("varchar(150)")
+ .HasColumnOrder(1)
+ .HasComment("เขต/อำเภอ");
+
+ b.Property("ProvinceId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ProvinceId");
+
+ b.ToTable("Districts");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Detail")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property("FileName")
+ .IsRequired()
+ .HasMaxLength(255)
+ .HasColumnType("varchar(255)");
+
+ b.Property("FileSize")
+ .HasColumnType("int");
+
+ b.Property("FileType")
+ .IsRequired()
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)");
+
+ b.Property("ObjectRefId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Documents");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Education", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CandidateId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("DurationEnd")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(2)
+ .HasComment("ระยะเวลาสิ้นสุด");
+
+ b.Property("DurationStart")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(1)
+ .HasComment("ระยะเวลาเริ่ม");
+
+ b.Property("EducationLevelId")
+ .HasColumnType("char(36)");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Major")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnOrder(4)
+ .HasComment("สาขาวิชา/วิชาเอก");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnOrder(3)
+ .HasComment("ชื่อสถานศึกษา");
+
+ b.Property("Scores")
+ .HasMaxLength(10)
+ .HasColumnType("float")
+ .HasColumnOrder(6)
+ .HasComment("คะแนนเฉลี่ยตลอดหลักสูตร");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CandidateId");
+
+ b.HasIndex("EducationLevelId");
+
+ b.ToTable("Educations");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.EducationLevel", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(2)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasColumnOrder(1)
+ .HasComment("ระดับการศึกษา");
+
+ b.HasKey("Id");
+
+ b.ToTable("EducationLevels");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("AnnouncementEndDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(6)
+ .HasComment("วันสิ้นสุดประกาศ");
+
+ b.Property("AnnouncementStartDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(5)
+ .HasComment("วันเริ่มประกาศ");
+
+ b.Property("CheckDisability")
+ .HasColumnType("tinyint(1)")
+ .HasComment("คนพิการ");
+
+ b.Property("CheckDocument")
+ .HasColumnType("tinyint(1)")
+ .HasComment("ตรวจสอบเอกสารหลังประกาศผลสอบ");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("Detail")
+ .HasColumnType("longtext")
+ .HasComment("รายละเอียดสมัครสอบ");
+
+ b.Property("Fee")
+ .HasColumnType("float")
+ .HasComment("ค่าธรรมเนียม");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("varchar(150)")
+ .HasColumnOrder(7)
+ .HasComment("ชื่อการสอบ");
+
+ b.Property("Note")
+ .HasColumnType("longtext")
+ .HasComment("หมายเหตุ");
+
+ b.Property("OrganizationCodeId")
+ .HasColumnType("char(36)")
+ .HasComment("Id รหัสส่วนราชการ");
+
+ b.Property("OrganizationCodeName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อรหัสส่วนราชการ");
+
+ b.Property("OrganizationId")
+ .HasColumnType("char(36)")
+ .HasComment("Id หน่วยงาน");
+
+ b.Property("OrganizationName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อหน่วยงาน");
+
+ b.Property("PaymentEndDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(4)
+ .HasComment("วันสิ้นสุดชำระเงิน");
+
+ b.Property("PaymentKrungThai")
+ .HasColumnType("longtext")
+ .HasComment("ชำระเงินผ่านกรุงไทย");
+
+ b.Property("PaymentStartDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(3)
+ .HasComment("วันเริ่มชำระเงิน");
+
+ b.Property("RegisterEndDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(2)
+ .HasComment("วันสิ้นสุดสมัครสอบ");
+
+ b.Property("RegisterStartDate")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(1)
+ .HasComment("วันเริ่มสมัครสอบ");
+
+ b.Property("Round")
+ .HasColumnType("int")
+ .HasColumnOrder(8)
+ .HasComment("รอบการสอบ");
+
+ b.Property("Year")
+ .HasColumnType("int")
+ .HasComment("ปีงบประมาณ");
+
+ b.HasKey("Id");
+
+ b.ToTable("PeriodExams");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("PeriodExamId")
+ .HasColumnType("char(36)");
+
+ b.Property("PositionId")
+ .HasColumnType("char(36)")
+ .HasComment("Id ตำแหน่ง");
+
+ b.Property("PositionName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อตำแหน่ง");
+
+ b.Property("TypeName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อประเภทแบบฟอร์ม");
+
+ b.HasKey("Id");
+
+ b.HasIndex("PeriodExamId");
+
+ b.ToTable("PositionExams");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Prefix", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(3)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)")
+ .HasColumnOrder(2)
+ .HasComment("รายละเอียดคำนำหน้า");
+
+ b.HasKey("Id");
+
+ b.ToTable("Prefixes");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Province", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(2)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("varchar(150)")
+ .HasColumnOrder(1)
+ .HasComment("จังหวัด");
+
+ b.HasKey("Id");
+
+ b.ToTable("Provinces");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Relationship", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(2)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)")
+ .HasColumnOrder(1)
+ .HasComment("ชื่อความสัมพันธ์");
+
+ b.HasKey("Id");
+
+ b.ToTable("Relationships");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Religion", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(2)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)")
+ .HasColumnOrder(1)
+ .HasComment("ศาสนา");
+
+ b.HasKey("Id");
+
+ b.ToTable("Religions");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.SubDistrict", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("DistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnOrder(3)
+ .HasComment("สถานะการใช้งาน");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("varchar(150)")
+ .HasColumnOrder(1)
+ .HasComment("เขต/อำเภอ");
+
+ b.Property("ZipCode")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("varchar(10)")
+ .HasColumnOrder(2)
+ .HasComment("รหัสไปรษณีย์");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DistrictId");
+
+ b.ToTable("SubDistricts");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
+ .WithMany()
+ .HasForeignKey("PeriodExamId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("PeriodExam");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.District", "CitizenDistrict")
+ .WithMany()
+ .HasForeignKey("CitizenDistrictId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Province", "CitizenProvince")
+ .WithMany()
+ .HasForeignKey("CitizenProvinceId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.District", "CurrentDistrict")
+ .WithMany()
+ .HasForeignKey("CurrentDistrictId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Province", "CurrentProvince")
+ .WithMany()
+ .HasForeignKey("CurrentProvinceId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.SubDistrict", "CurrentSubDistrict")
+ .WithMany()
+ .HasForeignKey("CurrentSubDistrictId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Prefix", "FatherPrefix")
+ .WithMany()
+ .HasForeignKey("FatherPrefixId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Prefix", "MarryPrefix")
+ .WithMany()
+ .HasForeignKey("MarryPrefixId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Prefix", "MotherPrefix")
+ .WithMany()
+ .HasForeignKey("MotherPrefixId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "PaymentImg")
+ .WithMany()
+ .HasForeignKey("PaymentImgId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
+ .WithMany()
+ .HasForeignKey("PeriodExamId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", "PositionExam")
+ .WithMany()
+ .HasForeignKey("PositionExamId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Prefix", "Prefix")
+ .WithMany()
+ .HasForeignKey("PrefixId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "ProfileImg")
+ .WithMany()
+ .HasForeignKey("ProfileImgId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.District", "RegistDistrict")
+ .WithMany()
+ .HasForeignKey("RegistDistrictId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Province", "RegistProvince")
+ .WithMany()
+ .HasForeignKey("RegistProvinceId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.SubDistrict", "RegistSubDistrict")
+ .WithMany()
+ .HasForeignKey("RegistSubDistrictId");
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Relationship", "Relationship")
+ .WithMany()
+ .HasForeignKey("RelationshipId");
+
+ b.Navigation("CitizenDistrict");
+
+ b.Navigation("CitizenProvince");
+
+ b.Navigation("CurrentDistrict");
+
+ b.Navigation("CurrentProvince");
+
+ b.Navigation("CurrentSubDistrict");
+
+ b.Navigation("FatherPrefix");
+
+ b.Navigation("MarryPrefix");
+
+ b.Navigation("MotherPrefix");
+
+ b.Navigation("PaymentImg");
+
+ b.Navigation("PeriodExam");
+
+ b.Navigation("PositionExam");
+
+ b.Navigation("Prefix");
+
+ b.Navigation("ProfileImg");
+
+ b.Navigation("RegistDistrict");
+
+ b.Navigation("RegistProvince");
+
+ b.Navigation("RegistSubDistrict");
+
+ b.Navigation("Relationship");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CandidateDocument", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Candidate", "Candidate")
+ .WithMany()
+ .HasForeignKey("CandidateId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "Document")
+ .WithMany()
+ .HasForeignKey("DocumentId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Candidate");
+
+ b.Navigation("Document");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Career", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Candidate", "Candidate")
+ .WithMany()
+ .HasForeignKey("CandidateId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Candidate");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.District", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Province", "Province")
+ .WithMany("Districts")
+ .HasForeignKey("ProvinceId");
+
+ b.Navigation("Province");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Education", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Candidate", "Candidate")
+ .WithMany()
+ .HasForeignKey("CandidateId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.EducationLevel", "EducationLevel")
+ .WithMany()
+ .HasForeignKey("EducationLevelId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Candidate");
+
+ b.Navigation("EducationLevel");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
+ .WithMany()
+ .HasForeignKey("PeriodExamId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("PeriodExam");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.SubDistrict", b =>
+ {
+ b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.District", "District")
+ .WithMany("SubDistricts")
+ .HasForeignKey("DistrictId");
+
+ b.Navigation("District");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.District", b =>
+ {
+ b.Navigation("SubDistricts");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Province", b =>
+ {
+ b.Navigation("Districts");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Migrations/20230405033622_Update table Candidate add bank2.cs b/Migrations/20230405033622_Update table Candidate add bank2.cs
new file mode 100644
index 0000000..47408b3
--- /dev/null
+++ b/Migrations/20230405033622_Update table Candidate add bank2.cs
@@ -0,0 +1,50 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace BMA.EHR.Recurit.Exam.Service.Migrations
+{
+ ///
+ public partial class UpdatetableCandidateaddbank2 : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.AddColumn(
+ name: "PositionExamId",
+ table: "Candidates",
+ type: "char(36)",
+ nullable: true,
+ collation: "ascii_general_ci");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_Candidates_PositionExamId",
+ table: "Candidates",
+ column: "PositionExamId");
+
+ migrationBuilder.AddForeignKey(
+ name: "FK_Candidates_PositionExams_PositionExamId",
+ table: "Candidates",
+ column: "PositionExamId",
+ principalTable: "PositionExams",
+ principalColumn: "Id");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropForeignKey(
+ name: "FK_Candidates_PositionExams_PositionExamId",
+ table: "Candidates");
+
+ migrationBuilder.DropIndex(
+ name: "IX_Candidates_PositionExamId",
+ table: "Candidates");
+
+ migrationBuilder.DropColumn(
+ name: "PositionExamId",
+ table: "Candidates");
+ }
+ }
+}
diff --git a/Migrations/20230405103112_Update table Candidate add ExamIdenNumber.Designer.cs b/Migrations/20230405103112_Update table Candidate add ExamIdenNumber.Designer.cs
new file mode 100644
index 0000000..c6ebfee
--- /dev/null
+++ b/Migrations/20230405103112_Update table Candidate add ExamIdenNumber.Designer.cs
@@ -0,0 +1,1588 @@
+//
+using System;
+using BMA.EHR.Recurit.Exam.Service.Data;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace BMA.EHR.Recurit.Exam.Service.Migrations
+{
+ [DbContext(typeof(ApplicationDbContext))]
+ [Migration("20230405103112_Update table Candidate add ExamIdenNumber")]
+ partial class UpdatetableCandidateaddExamIdenNumber
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "7.0.4")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("AccountName")
+ .HasColumnType("longtext")
+ .HasComment("ชื่อบัญชี");
+
+ b.Property("AccountNumber")
+ .HasColumnType("longtext")
+ .HasComment("เลขบัญชี");
+
+ b.Property("BankName")
+ .HasColumnType("longtext")
+ .HasComment("ธนาคาร");
+
+ b.Property("CreatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(100)
+ .HasComment("สร้างข้อมูลเมื่อ");
+
+ b.Property("CreatedFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(104)
+ .HasComment("ชื่อ User ที่สร้างข้อมูล");
+
+ b.Property("CreatedUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(101)
+ .HasComment("User Id ที่สร้างข้อมูล");
+
+ b.Property("LastUpdateFullName")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)")
+ .HasColumnOrder(105)
+ .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdateUserId")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnOrder(103)
+ .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
+
+ b.Property("LastUpdatedAt")
+ .HasColumnType("datetime(6)")
+ .HasColumnOrder(102)
+ .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
+
+ b.Property("PeriodExamId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("PeriodExamId");
+
+ b.ToTable("BankExams");
+ });
+
+ modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)")
+ .HasColumnOrder(0)
+ .HasComment("PrimaryKey")
+ .HasAnnotation("Relational:JsonPropertyName", "id");
+
+ b.Property("CitizenDate")
+ .HasColumnType("datetime(6)")
+ .HasComment("วันที่ออกบัตร");
+
+ b.Property("CitizenDistrictId")
+ .HasColumnType("char(36)");
+
+ b.Property