// <auto-generated />
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("20250127093245_update table period add qrcode1")]
    partial class updatetableperiodaddqrcode1
    {
        /// <inheritdoc />
        protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
                .HasAnnotation("ProductVersion", "7.0.5")
                .HasAnnotation("Relational:MaxIdentifierLength", 64);

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("AccountName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อบัญชี");

                    b.Property<string>("AccountNumber")
                        .HasColumnType("longtext")
                        .HasComment("เลขบัญชี");

                    b.Property<string>("BankName")
                        .HasColumnType("longtext")
                        .HasComment("ธนาคาร");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("BankExams");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSAgency", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<Guid>("CMSCandidateId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Link")
                        .HasColumnType("longtext")
                        .HasComment("ลิงค์");

                    b.Property<string>("Name")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อลิงค์");

                    b.HasKey("Id");

                    b.HasIndex("CMSCandidateId");

                    b.ToTable("CMSAgencys");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSCandidate", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("About")
                        .HasColumnType("longtext")
                        .HasComment("ข้อมูลเกี่ยวกับเรา");

                    b.Property<string>("Address")
                        .HasColumnType("longtext")
                        .HasComment("ที่อยู่ปัจจุบัน");

                    b.Property<Guid?>("BannerImgId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("Description")
                        .HasColumnType("longtext")
                        .HasComment("ข้อมูลเว็บโดยย่อ");

                    b.Property<Guid?>("DistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id อำเภอ");

                    b.Property<string>("DistrictName")
                        .HasColumnType("longtext")
                        .HasComment("อำเภอ");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid?>("LogoImgId")
                        .HasColumnType("char(36)");

                    b.Property<string>("NameEn")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อเว็บภาษาอังกฤษ");

                    b.Property<string>("NameTh")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อเว็บภาษาไทย");

                    b.Property<Guid?>("ProvinceId")
                        .HasColumnType("char(36)")
                        .HasComment("Id จังหวัด");

                    b.Property<string>("ProvinceName")
                        .HasColumnType("longtext")
                        .HasComment("จังหวัด");

                    b.Property<string>("ShortName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อย่อ");

                    b.Property<Guid?>("SubDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ตำบล");

                    b.Property<string>("SubDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("ตำบล");

                    b.Property<string>("Telephone")
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("โทรศัพท์");

                    b.Property<string>("ZipCode")
                        .HasMaxLength(10)
                        .HasColumnType("varchar(10)")
                        .HasComment("รหัสไปรษณีย์");

                    b.HasKey("Id");

                    b.HasIndex("BannerImgId");

                    b.HasIndex("LogoImgId");

                    b.ToTable("CMSCandidates");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSGovernment", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<Guid>("CMSCandidateId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Link")
                        .HasColumnType("longtext")
                        .HasComment("ลิงค์");

                    b.Property<string>("Name")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อลิงค์");

                    b.HasKey("Id");

                    b.HasIndex("CMSCandidateId");

                    b.ToTable("CMSGovernments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime?>("CitizenDate")
                        .HasColumnType("datetime(6)")
                        .HasComment("วันที่ออกบัตร");

                    b.Property<Guid?>("CitizenDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id เขตที่ออกบัตรประชาชน");

                    b.Property<string>("CitizenDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("เขตที่ออกบัตรประชาชน");

                    b.Property<string>("CitizenId")
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("เลขประจำตัวประชาชน");

                    b.Property<Guid?>("CitizenProvinceId")
                        .HasColumnType("char(36)")
                        .HasComment("Id จังหวัดที่ออกบัตรประชาชน");

                    b.Property<string>("CitizenProvinceName")
                        .HasColumnType("longtext")
                        .HasComment("จังหวัดที่ออกบัตรประชาชน");

                    b.Property<string>("ContactFirstname")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อ บุคคลที่สามารถติดต่อได้");

                    b.Property<string>("ContactLastname")
                        .HasColumnType("longtext")
                        .HasComment("สกุล บุคคลที่สามารถติดต่อได้");

                    b.Property<Guid?>("ContactPrefixId")
                        .HasColumnType("char(36)")
                        .HasComment("Id คำนำหน้า บุคคลที่สามารถติดต่อได้");

                    b.Property<string>("ContactPrefixName")
                        .HasColumnType("longtext")
                        .HasComment("คำนำหน้า บุคคลที่สามารถติดต่อได้");

                    b.Property<string>("ContactRelations")
                        .HasColumnType("longtext")
                        .HasComment("เกี่ยวข้องเป็น บุคคลที่สามารถติดต่อได้");

                    b.Property<string>("ContactTel")
                        .HasColumnType("longtext")
                        .HasComment("โทรศัพท์ บุคคลที่สามารถติดต่อได้");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("CurrentAddress")
                        .HasColumnType("longtext")
                        .HasComment("ที่อยู่ปัจจุบัน");

                    b.Property<Guid?>("CurrentDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id อำเภอที่อยู่ปัจจุบัน");

                    b.Property<string>("CurrentDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("อำเภอที่อยู่ปัจจุบัน");

                    b.Property<Guid?>("CurrentProvinceId")
                        .HasColumnType("char(36)")
                        .HasComment("Id จังหวัดที่อยู่ปัจจุบัน");

                    b.Property<string>("CurrentProvinceName")
                        .HasColumnType("longtext")
                        .HasComment("จังหวัดที่อยู่ปัจจุบัน");

                    b.Property<Guid?>("CurrentSubDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ตำบลที่อยู่ปัจจุบัน");

                    b.Property<string>("CurrentSubDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("ตำบลที่อยู่ปัจจุบัน");

                    b.Property<string>("CurrentZipCode")
                        .HasMaxLength(10)
                        .HasColumnType("varchar(10)")
                        .HasComment("รหัสไปรษณีย์ที่อยู่ปัจจุบัน");

                    b.Property<DateTime?>("DateOfBirth")
                        .HasMaxLength(40)
                        .HasColumnType("datetime(6)")
                        .HasComment("วันเกิด");

                    b.Property<string>("Email")
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasComment("อีเมล");

                    b.Property<string>("ExamIdenNumber")
                        .HasColumnType("longtext")
                        .HasComment("เลขประจำตัวสอบ");

                    b.Property<string>("ExamReason")
                        .HasColumnType("longtext")
                        .HasComment("หมายเหตุ");

                    b.Property<string>("FatherFirstName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("ชื่อจริงบิดา");

                    b.Property<string>("FatherLastName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("นามสกุลบิดา");

                    b.Property<string>("FatherNationality")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("สัญชาติบิดา");

                    b.Property<string>("FatherOccupation")
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasComment("อาชีพบิดา");

                    b.Property<Guid?>("FatherPrefixId")
                        .HasColumnType("char(36)")
                        .HasComment("Id คำนำหน้าชื่อบิดา");

                    b.Property<string>("FatherPrefixName")
                        .HasColumnType("longtext")
                        .HasComment("คำนำหน้าชื่อบิดา");

                    b.Property<string>("FirstName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasColumnOrder(1)
                        .HasComment("ชื่อจริง");

                    b.Property<string>("Knowledge")
                        .HasColumnType("longtext")
                        .HasComment("ความสามารถพิเศษ");

                    b.Property<string>("LastName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasColumnOrder(2)
                        .HasComment("นามสกุล");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<bool?>("Marry")
                        .HasColumnType("tinyint(1)")
                        .HasComment("คู่สมรส");

                    b.Property<string>("MarryFirstName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("ชื่อจริงคู่สมรส");

                    b.Property<string>("MarryLastName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("นามสกุลคู่สมรส");

                    b.Property<string>("MarryNationality")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("สัญชาติคู่สมรส");

                    b.Property<string>("MarryOccupation")
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasComment("อาชีพคู่สมรส");

                    b.Property<Guid?>("MarryPrefixId")
                        .HasColumnType("char(36)")
                        .HasComment("Id คำนำหน้าชื่อคู่สมรส");

                    b.Property<string>("MarryPrefixName")
                        .HasColumnType("longtext")
                        .HasComment("คำนำหน้าชื่อคู่สมรส");

                    b.Property<string>("MobilePhone")
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("โทรศัพท์มือถือ");

                    b.Property<string>("MotherFirstName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("ชื่อจริงมารดา");

                    b.Property<string>("MotherLastName")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("นามสกุลมารดา");

                    b.Property<string>("MotherNationality")
                        .HasMaxLength(100)
                        .HasColumnType("varchar(100)")
                        .HasComment("สัญชาติมารดา");

                    b.Property<string>("MotherOccupation")
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasComment("อาชีพมารดา");

                    b.Property<Guid?>("MotherPrefixId")
                        .HasColumnType("char(36)")
                        .HasComment("Id คำนำหน้าชื่อมารดา");

                    b.Property<string>("MotherPrefixName")
                        .HasColumnType("longtext")
                        .HasComment("คำนำหน้าชื่อมารดา");

                    b.Property<string>("Nationality")
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(3)
                        .HasComment("สัญชาติ");

                    b.Property<string>("Number")
                        .HasColumnType("longtext")
                        .HasComment("ลำดับที่สอบได้");

                    b.Property<string>("OccupationGroup")
                        .HasColumnType("longtext")
                        .HasComment("ตำแหน่งปัจจุบัน กลุ่ม/ฝ่าย");

                    b.Property<string>("OccupationOrg")
                        .HasColumnType("longtext")
                        .HasComment("ตำแหน่งปัจจุบัน ชื่อตำแหน่ง");

                    b.Property<string>("OccupationPile")
                        .HasColumnType("longtext")
                        .HasComment("ตำแหน่งปัจจุบัน กอง");

                    b.Property<string>("OccupationPosition")
                        .HasColumnType("longtext")
                        .HasComment("ตำแหน่งปัจจุบัน สังกัด");

                    b.Property<string>("OccupationPositionType")
                        .HasColumnType("longtext")
                        .HasComment("ตำแหน่งปัจจุบัน ประเภทราชการ");

                    b.Property<int?>("OccupationSalary")
                        .HasColumnType("int")
                        .HasComment("ตำแหน่งปัจจุบัน เงินเดือน");

                    b.Property<string>("OccupationTelephone")
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("ตำแหน่งปัจจุบัน เบอร์โทรที่ทำงาน");

                    b.Property<string>("Pass")
                        .HasColumnType("longtext")
                        .HasComment("ผลสมัครสอบ");

                    b.Property<DateTime?>("PaymentDate")
                        .HasColumnType("datetime(6)")
                        .HasComment("วันที่ชำระเงิน");

                    b.Property<Guid?>("PaymentImgId")
                        .HasColumnType("char(36)");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.Property<string>("PointA")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ก");

                    b.Property<string>("PointB")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ข");

                    b.Property<string>("PointC")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ค");

                    b.Property<string>("PointPath1A")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ก ความสามารถในการคิดวิเคราะห์");

                    b.Property<string>("PointPath1C")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค คทดสอบสมรรถนะหลัก");

                    b.Property<string>("PointPath2A")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ก ภาษาอังกฤษ");

                    b.Property<string>("PointPath2C")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ค สัมภาษณ์");

                    b.Property<string>("PointPath3A")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ก ความรู้และลักษณะการเป็นข้าราชการที่ดี");

                    b.Property<string>("PointPerA")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ก เปอร์เซนต์");

                    b.Property<string>("PointPerB")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ข เปอร์เซนต์");

                    b.Property<string>("PointPerC")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนภาค ค เปอร์เซนต์");

                    b.Property<string>("PointTotalA")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนเต็มภาค ก");

                    b.Property<string>("PointTotalB")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนเต็มภาค ข");

                    b.Property<string>("PointTotalC")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนเต็มภาค ค");

                    b.Property<Guid?>("PositionExamId")
                        .HasColumnType("char(36)");

                    b.Property<Guid?>("PrefixId")
                        .HasColumnType("char(36)")
                        .HasComment("Id คำนำหน้าชื่อ");

                    b.Property<string>("PrefixName")
                        .HasColumnType("longtext")
                        .HasComment("คำนำหน้าชื่อ");

                    b.Property<Guid?>("ProfileImgId")
                        .HasColumnType("char(36)");

                    b.Property<string>("RegistAddress")
                        .HasColumnType("longtext")
                        .HasComment("ที่อยู่ตามทะเบียนบ้าน");

                    b.Property<Guid?>("RegistDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id อำเภอที่อยู่ตามทะเบียนบ้าน");

                    b.Property<string>("RegistDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("อำเภอที่อยู่ตามทะเบียนบ้าน");

                    b.Property<Guid?>("RegistProvinceId")
                        .HasColumnType("char(36)")
                        .HasComment("Id จังหวัดที่อยู่ตามทะเบียนบ้าน");

                    b.Property<string>("RegistProvinceName")
                        .HasColumnType("longtext")
                        .HasComment("จังหวัดที่อยู่ตามทะเบียนบ้าน");

                    b.Property<bool?>("RegistSame")
                        .HasColumnType("tinyint(1)")
                        .HasComment("ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน");

                    b.Property<Guid?>("RegistSubDistrictId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ตำบลที่อยู่ตามทะเบียนบ้าน");

                    b.Property<string>("RegistSubDistrictName")
                        .HasColumnType("longtext")
                        .HasComment("ตำบลที่อยู่ตามทะเบียนบ้าน");

                    b.Property<string>("RegistZipCode")
                        .HasMaxLength(10)
                        .HasColumnType("varchar(10)")
                        .HasComment("รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน");

                    b.Property<DateTime?>("RegisterDate")
                        .HasMaxLength(40)
                        .HasColumnType("datetime(6)")
                        .HasComment("วันที่สมัคร");

                    b.Property<string>("RejectDetail")
                        .HasColumnType("longtext")
                        .HasComment("เหตุผลการไม่อนุมัติ");

                    b.Property<Guid?>("RelationshipId")
                        .HasColumnType("char(36)")
                        .HasComment("Id สถานภาพ");

                    b.Property<string>("RelationshipName")
                        .HasColumnType("longtext")
                        .HasComment("สถานภาพ");

                    b.Property<Guid?>("ReligionId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ศาสนา");

                    b.Property<string>("ReligionName")
                        .HasColumnType("longtext")
                        .HasComment("ศาสนา");

                    b.Property<string>("ResultA")
                        .HasColumnType("longtext")
                        .HasComment("ผลสอบภาค ก");

                    b.Property<string>("ResultB")
                        .HasColumnType("longtext")
                        .HasComment("ผลสอบภาค ข");

                    b.Property<string>("ResultC")
                        .HasColumnType("longtext")
                        .HasComment("ผลสอบภาค ค");

                    b.Property<string>("Review")
                        .HasColumnType("longtext")
                        .HasComment("ข้อแนะนำ");

                    b.Property<int?>("ReviewPoint")
                        .HasColumnType("int")
                        .HasComment("คะแนนความพึงพอใจ");

                    b.Property<string>("SeatNumber")
                        .HasColumnType("longtext")
                        .HasComment("เลขที่นั่งสอบ");

                    b.Property<string>("Status")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("สถานะผู้สมัคร");

                    b.Property<string>("Telephone")
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)")
                        .HasComment("โทรศัพท์");

                    b.Property<string>("UserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasComment("User Id ผู้สมัคร");

                    b.HasKey("Id");

                    b.HasIndex("PaymentImgId");

                    b.HasIndex("PeriodExamId");

                    b.HasIndex("PositionExamId");

                    b.HasIndex("ProfileImgId");

                    b.ToTable("Candidates");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CandidateDocument", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<Guid>("CandidateId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DocumentId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("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<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<Guid>("CandidateId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<DateTime>("DurationEnd")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(2)
                        .HasComment("ระยะเวลาสิ้นสุด");

                    b.Property<DateTime>("DurationStart")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(1)
                        .HasComment("ระยะเวลาเริ่ม");

                    b.Property<string>("Group")
                        .HasColumnType("longtext")
                        .HasColumnOrder(4)
                        .HasComment("กลุ่ม/ฝ่าย");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Org")
                        .HasColumnType("longtext")
                        .HasColumnOrder(6)
                        .HasComment("สังกัด");

                    b.Property<string>("Pile")
                        .HasColumnType("longtext")
                        .HasColumnOrder(5)
                        .HasComment("กอง");

                    b.Property<string>("Position")
                        .IsRequired()
                        .HasColumnType("longtext")
                        .HasColumnOrder(3)
                        .HasComment("ชื่อตำแหน่ง");

                    b.Property<string>("RangeDate")
                        .IsRequired()
                        .HasColumnType("longtext")
                        .HasColumnOrder(7)
                        .HasComment("ระยะเวลา");

                    b.Property<string>("Type")
                        .IsRequired()
                        .HasColumnType("longtext")
                        .HasColumnOrder(8)
                        .HasComment("ประเภท");

                    b.HasKey("Id");

                    b.HasIndex("CandidateId");

                    b.ToTable("Careers");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("ApplyDate")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("CitizenCardExpireDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("CitizenCardIssuer")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("CitizenId")
                        .IsRequired()
                        .HasMaxLength(13)
                        .HasColumnType("varchar(13)")
                        .HasComment("เลขประจำตัวประชาชน");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<DateTime>("CreatedDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<DateTime>("DateOfBirth")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("ExamId")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("FirstName")
                        .IsRequired()
                        .HasMaxLength(150)
                        .HasColumnType("varchar(150)");

                    b.Property<string>("Gendor")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)");

                    b.Property<string>("Isspecial")
                        .IsRequired()
                        .HasMaxLength(1)
                        .HasColumnType("varchar(1)");

                    b.Property<string>("LastName")
                        .IsRequired()
                        .HasMaxLength(150)
                        .HasColumnType("varchar(150)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Marry")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)");

                    b.Property<DateTime>("ModifiedDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("National")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<Guid?>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.Property<string>("PositionLevel")
                        .HasColumnType("longtext");

                    b.Property<string>("PositionName")
                        .HasColumnType("longtext");

                    b.Property<string>("PositionType")
                        .HasColumnType("longtext");

                    b.Property<string>("Prefix")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("Qualified")
                        .IsRequired()
                        .HasMaxLength(1)
                        .HasColumnType("varchar(1)");

                    b.Property<string>("Race")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("RefNo")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)");

                    b.Property<string>("Religion")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Remark")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.HasKey("Id");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("Disables");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableAddress", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("Address")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Address1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Amphur")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Amphur1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<string>("District")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("District1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Mobile")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Moo")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Moo1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Province")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Province1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Road")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Road1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Soi")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Soi1")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Telephone")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("ZipCode")
                        .IsRequired()
                        .HasMaxLength(5)
                        .HasColumnType("varchar(5)");

                    b.Property<string>("ZipCode1")
                        .IsRequired()
                        .HasMaxLength(5)
                        .HasColumnType("varchar(5)");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.ToTable("DisableAddresses");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableCertificate", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("CertificateNo")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("Description")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("ExpiredDate")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("IssueDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.ToTable("DisableCertificates");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableDocument", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<DateTime>("CreatedDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<Guid>("DocumentFileId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.HasIndex("DocumentFileId");

                    b.ToTable("DisableDocuments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableEducation", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("BachelorDate")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("Degree")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<double>("GPA")
                        .HasColumnType("double");

                    b.Property<string>("HighDegree")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Major")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("MajorGroupId")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("varchar(20)");

                    b.Property<string>("MajorGroupName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Specialist")
                        .IsRequired()
                        .HasMaxLength(1000)
                        .HasColumnType("varchar(1000)");

                    b.Property<string>("University")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.ToTable("DisableEducations");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableImportHistory", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("Description")
                        .IsRequired()
                        .HasColumnType("longtext")
                        .HasColumnOrder(1)
                        .HasComment("รายละเอียดการนำเข้า");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("DisableImportHistories");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableOccupation", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Occupation")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Position")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Telephone")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("WorkAge")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Workplace")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.ToTable("DisableOccupations");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisablePayment", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("AccountNumber")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<decimal>("Amount")
                        .HasColumnType("decimal(65,30)");

                    b.Property<string>("BankCode")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("ChequeNo")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("ChqueBankCode")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("CompanyCode")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("CreditDebit")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("CustomerName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<Guid>("DisableId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("PaymentId")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("PaymentType")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("RefNo1")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("TellerId")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("TermBranch")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("TextFile")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("TransDate")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("TransTime")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.HasKey("Id");

                    b.HasIndex("DisableId");

                    b.ToTable("DisablePayments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableScore", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("ABStatus")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("AStatus")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("BStatus")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("CStatus")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("ExamId")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<string>("ExamStatus")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("varchar(50)");

                    b.Property<int>("FullA")
                        .HasColumnType("int");

                    b.Property<int>("FullB")
                        .HasColumnType("int");

                    b.Property<int>("FullC")
                        .HasColumnType("int");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Major")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)");

                    b.Property<string>("Number")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasComment("ลำดับที่สอบได้");

                    b.Property<double>("PercentageA")
                        .HasColumnType("double");

                    b.Property<double>("PercentageB")
                        .HasColumnType("double");

                    b.Property<double>("PercentageC")
                        .HasColumnType("double");

                    b.Property<Guid>("ScoreImportId")
                        .HasColumnType("char(36)");

                    b.Property<int>("SumA")
                        .HasColumnType("int");

                    b.Property<int>("SumAB")
                        .HasColumnType("int");

                    b.Property<int>("SumB")
                        .HasColumnType("int");

                    b.Property<int>("SumC")
                        .HasColumnType("int");

                    b.HasKey("Id");

                    b.HasIndex("ScoreImportId");

                    b.ToTable("DisableScores");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.ScoreImport", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("ImportFileId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.Property<int?>("Year")
                        .HasColumnType("int");

                    b.HasKey("Id");

                    b.HasIndex("ImportFileId");

                    b.HasIndex("PeriodExamId")
                        .IsUnique();

                    b.ToTable("ScoreImports");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Detail")
                        .IsRequired()
                        .HasColumnType("text");

                    b.Property<string>("FileName")
                        .IsRequired()
                        .HasMaxLength(255)
                        .HasColumnType("varchar(255)");

                    b.Property<int>("FileSize")
                        .HasColumnType("int");

                    b.Property<string>("FileType")
                        .IsRequired()
                        .HasMaxLength(128)
                        .HasColumnType("varchar(128)");

                    b.Property<Guid>("ObjectRefId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.ToTable("Documents");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Education", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<Guid>("CandidateId")
                        .HasColumnType("char(36)");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<DateTime?>("EducationEndDate")
                        .HasColumnType("datetime(6)")
                        .HasComment("วันที่สำเร็จการศึกษา");

                    b.Property<Guid?>("EducationLevelExamId")
                        .HasColumnType("char(36)")
                        .HasComment("Id วุฒิที่ใช้สมัครสอบ");

                    b.Property<string>("EducationLevelExamName")
                        .HasColumnType("longtext")
                        .HasComment("วุฒิที่ใช้สมัครสอบ");

                    b.Property<Guid?>("EducationLevelHighId")
                        .HasColumnType("char(36)")
                        .HasComment("Id วุฒิการศึกษาสูงสุด");

                    b.Property<string>("EducationLevelHighName")
                        .HasColumnType("longtext")
                        .HasComment("วุฒิการศึกษาสูงสุด");

                    b.Property<string>("EducationLocation")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อสถานศึกษา");

                    b.Property<string>("EducationMajor")
                        .HasColumnType("longtext")
                        .HasComment("สาขาวิชา/วิชาเอก");

                    b.Property<string>("EducationName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อปริญญา");

                    b.Property<string>("EducationScores")
                        .HasColumnType("longtext")
                        .HasComment("คะแนนเฉลี่ยสะสม");

                    b.Property<string>("EducationType")
                        .HasColumnType("longtext")
                        .HasComment("ประเภทสถานศึกษา");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.HasKey("Id");

                    b.HasIndex("CandidateId");

                    b.ToTable("Educations");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime?>("AnnouncementDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(5)
                        .HasComment("วันประกาศผลสอบ");

                    b.Property<DateTime>("AnnouncementEndDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(7)
                        .HasComment("วันสิ้นสุดประกาศ");

                    b.Property<bool>("AnnouncementExam")
                        .HasColumnType("tinyint(1)")
                        .HasComment("ประกาศนี้มีสมัครสอบคัดเลือก");

                    b.Property<DateTime>("AnnouncementStartDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(6)
                        .HasComment("วันเริ่มประกาศ");

                    b.Property<string>("Category")
                        .HasColumnType("longtext")
                        .HasComment("สำนัก");

                    b.Property<bool>("CheckDisability")
                        .HasColumnType("tinyint(1)")
                        .HasComment("คนพิการ");

                    b.Property<bool>("CheckDocument")
                        .HasColumnType("tinyint(1)")
                        .HasComment("ตรวจสอบเอกสารหลังประกาศผลสอบ");

                    b.Property<string>("CompanyCode")
                        .HasColumnType("longtext")
                        .HasComment("Company code");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<string>("Detail")
                        .HasColumnType("longtext")
                        .HasComment("รายละเอียดสมัครสอบ");

                    b.Property<string>("EditorCondition")
                        .HasColumnType("longtext")
                        .HasComment("รายละเอียดเงื่อนไขการสมัคร");

                    b.Property<string>("EditorConfirm")
                        .HasColumnType("longtext")
                        .HasComment("รายละเอียดคำรับรอง");

                    b.Property<DateTime?>("ExamDate")
                        .HasColumnType("datetime(6)")
                        .HasComment("วันที่สอบ");

                    b.Property<float?>("Fee")
                        .HasColumnType("float")
                        .HasComment("ค่าธรรมเนียม");

                    b.Property<Guid?>("ImportFileId")
                        .HasColumnType("char(36)");

                    b.Property<bool>("IsActive")
                        .HasColumnType("tinyint(1)")
                        .HasComment("สถานะการใช้งาน");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<string>("Name")
                        .IsRequired()
                        .HasMaxLength(150)
                        .HasColumnType("varchar(150)")
                        .HasColumnOrder(8)
                        .HasComment("ชื่อการสอบ");

                    b.Property<string>("Note")
                        .HasColumnType("longtext")
                        .HasComment("หมายเหตุ");

                    b.Property<Guid?>("OrganizationCodeId")
                        .HasColumnType("char(36)")
                        .HasComment("Id รหัสส่วนราชการ");

                    b.Property<string>("OrganizationCodeName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อรหัสส่วนราชการ");

                    b.Property<Guid?>("OrganizationId")
                        .HasColumnType("char(36)")
                        .HasComment("Id หน่วยงาน");

                    b.Property<string>("OrganizationName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อหน่วยงาน");

                    b.Property<DateTime?>("PaymentEndDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(4)
                        .HasComment("วันสิ้นสุดชำระเงิน");

                    b.Property<string>("PaymentKrungThai")
                        .HasColumnType("longtext")
                        .HasComment("ชำระเงินผ่านกรุงไทย");

                    b.Property<DateTime?>("PaymentStartDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(3)
                        .HasComment("วันเริ่มชำระเงิน");

                    b.Property<string>("Reason")
                        .HasColumnType("text")
                        .HasComment("หมายเหตุ");

                    b.Property<string>("RefNo1")
                        .HasColumnType("longtext")
                        .HasComment("Ref No1");

                    b.Property<DateTime?>("RegisterEndDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(2)
                        .HasComment("วันสิ้นสุดสมัครสอบ");

                    b.Property<DateTime?>("RegisterStartDate")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(1)
                        .HasComment("วันเริ่มสมัครสอบ");

                    b.Property<string>("Remark")
                        .HasColumnType("text")
                        .HasComment("remark");

                    b.Property<int?>("Round")
                        .HasColumnType("int")
                        .HasColumnOrder(9)
                        .HasComment("รอบการสอบ");

                    b.Property<bool>("SetSeat")
                        .HasColumnType("tinyint(1)")
                        .HasComment("เช็คอัพคะแนน");

                    b.Property<int?>("Year")
                        .HasColumnType("int")
                        .HasComment("ปีงบประมาณ");

                    b.HasKey("Id");

                    b.HasIndex("ImportFileId");

                    b.ToTable("PeriodExams");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamBarCode", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DocumentId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("DocumentId");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("PeriodExamBarCodes");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamDocument", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DocumentId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("DocumentId");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("PeriodExamDocuments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamImage", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DocumentId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("DocumentId");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("PeriodExamImages");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamQrCode", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<Guid>("DocumentId")
                        .HasColumnType("char(36)");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.HasKey("Id");

                    b.HasIndex("DocumentId");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("PeriodExamQrCodes");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", b =>
                {
                    b.Property<Guid>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("char(36)")
                        .HasColumnOrder(0)
                        .HasComment("PrimaryKey")
                        .HasAnnotation("Relational:JsonPropertyName", "id");

                    b.Property<string>("Code")
                        .HasColumnType("longtext")
                        .HasComment("รหัสประจำตำแหน่งที่สอบ");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(100)
                        .HasComment("สร้างข้อมูลเมื่อ");

                    b.Property<string>("CreatedFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(104)
                        .HasComment("ชื่อ User ที่สร้างข้อมูล");

                    b.Property<string>("CreatedUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(101)
                        .HasComment("User Id ที่สร้างข้อมูล");

                    b.Property<bool>("HighDegree")
                        .HasColumnType("tinyint(1)")
                        .HasComment("ปริญญาบัตรขึ้นไป");

                    b.Property<string>("LastUpdateFullName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("varchar(200)")
                        .HasColumnOrder(105)
                        .HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<string>("LastUpdateUserId")
                        .IsRequired()
                        .HasMaxLength(40)
                        .HasColumnType("varchar(40)")
                        .HasColumnOrder(103)
                        .HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");

                    b.Property<DateTime?>("LastUpdatedAt")
                        .HasColumnType("datetime(6)")
                        .HasColumnOrder(102)
                        .HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");

                    b.Property<Guid>("PeriodExamId")
                        .HasColumnType("char(36)");

                    b.Property<Guid?>("PositionId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ตำแหน่ง");

                    b.Property<Guid?>("PositionLevelId")
                        .HasColumnType("char(36)")
                        .HasComment("Id ระดับ");

                    b.Property<string>("PositionLevelName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อระดับ");

                    b.Property<string>("PositionName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อตำแหน่ง");

                    b.Property<string>("TypeId")
                        .HasColumnType("longtext")
                        .HasComment("Id ประเภทแบบฟอร์ม");

                    b.Property<string>("TypeName")
                        .HasColumnType("longtext")
                        .HasComment("ชื่อประเภทแบบฟอร์ม");

                    b.HasKey("Id");

                    b.HasIndex("PeriodExamId");

                    b.ToTable("PositionExams");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.BankExam", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("BankExam")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSAgency", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.CMSCandidate", "CMSCandidate")
                        .WithMany("CMSAgencys")
                        .HasForeignKey("CMSCandidateId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("CMSCandidate");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSCandidate", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "BannerImg")
                        .WithMany()
                        .HasForeignKey("BannerImgId");

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "LogoImg")
                        .WithMany()
                        .HasForeignKey("LogoImgId");

                    b.Navigation("BannerImg");

                    b.Navigation("LogoImg");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSGovernment", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.CMSCandidate", "CMSCandidate")
                        .WithMany("CMSGovernments")
                        .HasForeignKey("CMSCandidateId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("CMSCandidate");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
                {
                    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("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.Documents.Document", "ProfileImg")
                        .WithMany()
                        .HasForeignKey("ProfileImgId");

                    b.Navigation("PaymentImg");

                    b.Navigation("PeriodExam");

                    b.Navigation("PositionExam");

                    b.Navigation("ProfileImg");
                });

            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("Careers")
                        .HasForeignKey("CandidateId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Candidate");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("Disables")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade);

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableAddress", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Addresses")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableCertificate", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Certificates")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableDocument", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Documents")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "DocumentFile")
                        .WithMany()
                        .HasForeignKey("DocumentFileId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");

                    b.Navigation("DocumentFile");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableEducation", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Educations")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableImportHistory", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("ImportHostories")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableOccupation", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Occupations")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisablePayment", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", "Disable")
                        .WithMany("Payments")
                        .HasForeignKey("DisableId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Disable");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.DisableScore", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Disables.ScoreImport", "ScoreImport")
                        .WithMany("Scores")
                        .HasForeignKey("ScoreImportId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("ScoreImport");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.ScoreImport", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "ImportFile")
                        .WithMany()
                        .HasForeignKey("ImportFileId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithOne("ScoreImport")
                        .HasForeignKey("BMA.EHR.Recurit.Exam.Service.Models.Disables.ScoreImport", "PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("ImportFile");

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Education", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Candidate", "Candidate")
                        .WithMany("Educations")
                        .HasForeignKey("CandidateId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Candidate");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "ImportFile")
                        .WithMany()
                        .HasForeignKey("ImportFileId");

                    b.Navigation("ImportFile");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamBarCode", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "Document")
                        .WithMany()
                        .HasForeignKey("DocumentId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("PeriodExamBarCodes")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Document");

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamDocument", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "Document")
                        .WithMany()
                        .HasForeignKey("DocumentId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("PeriodExamDocuments")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Document");

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamImage", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "Document")
                        .WithMany()
                        .HasForeignKey("DocumentId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("PeriodExamImages")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Document");

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExamQrCode", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.Documents.Document", "Document")
                        .WithMany()
                        .HasForeignKey("DocumentId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("PeriodExamQrCodes")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("Document");

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PositionExam", b =>
                {
                    b.HasOne("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", "PeriodExam")
                        .WithMany("PositionExam")
                        .HasForeignKey("PeriodExamId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("PeriodExam");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.CMSCandidate", b =>
                {
                    b.Navigation("CMSAgencys");

                    b.Navigation("CMSGovernments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Candidate", b =>
                {
                    b.Navigation("Careers");

                    b.Navigation("Educations");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.Disable", b =>
                {
                    b.Navigation("Addresses");

                    b.Navigation("Certificates");

                    b.Navigation("Documents");

                    b.Navigation("Educations");

                    b.Navigation("Occupations");

                    b.Navigation("Payments");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.Disables.ScoreImport", b =>
                {
                    b.Navigation("Scores");
                });

            modelBuilder.Entity("BMA.EHR.Recurit.Exam.Service.Models.PeriodExam", b =>
                {
                    b.Navigation("BankExam");

                    b.Navigation("Candidate");

                    b.Navigation("Disables");

                    b.Navigation("ImportHostories");

                    b.Navigation("PeriodExamBarCodes");

                    b.Navigation("PeriodExamDocuments");

                    b.Navigation("PeriodExamImages");

                    b.Navigation("PeriodExamQrCodes");

                    b.Navigation("PositionExam");

                    b.Navigation("ScoreImport");
                });
#pragma warning restore 612, 618
        }
    }
}
