สร้าง table บรรจุ

This commit is contained in:
Kittapath 2023-06-29 10:41:00 +07:00
parent b0228a5277
commit d387cc68bc
10 changed files with 12070 additions and 0 deletions

View file

@ -0,0 +1,27 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
namespace BMA.EHR.Domain.Models.Placement
{
public class Placement : EntityBase
{
[Required, Comment("รอบการสอบ")]
public string Name { get; set; } = string.Empty;
[Comment("ครั้งที่")]
public string Round { get; set; } = string.Empty;
[Required, Comment("ปีงบประมาณ"), MaxLength(5)]
public int Year { get; set; }
[Required, Comment("จำนวนผู้สอบได้"), MaxLength(10)]
public int Number { get; set; } = 0;
[Required, Comment("ประเภทการสอบ")]
public string TypeExam { get; set; } = string.Empty;
[Required, Comment("วันที่เริ่มบัญชีบัญชี")]
public DateTime StartDate { get; set; }
[Required, Comment("วันที่สิ้นสุดบัญชี")]
public DateTime EndDate { get; set; }
[Comment("สถานะการใช้งาน")]
public bool IsActive { get; set; } = true;
}
}

View file

@ -0,0 +1,30 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
namespace BMA.EHR.Domain.Models.Placement
{
public class PlacementCareer : EntityBase
{
[Required, Comment("Id ผู้สมัคร")]
public virtual PlacementProfile? PlacementProfile { get; set; }
[Required, Comment("ระยะเวลาเริ่ม")]
public DateTime DurationStart { get; set; } = DateTime.Now.Date;
[Required, Comment("ระยะเวลาสิ้นสุด")]
public DateTime DurationEnd { get; set; } = DateTime.Now.Date;
[Required, Comment("สถานที่ทำงาน/ฝึกงาน")]
public string Name { get; set; } = string.Empty;
[Required, Comment("ตำแหน่ง/ลักษณะงาน")]
public string Position { get; set; } = string.Empty;
[Required, MaxLength(20), Comment("เงินเดือนสุดท้ายก่อนออก")]
public int Salary { get; set; }
[Required, Comment("เหตุผลที่ออก")]
public string Reason { get; set; } = string.Empty;
}
}

View file

@ -0,0 +1,31 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
using BMA.EHR.Domain.Models.MetaData;
namespace BMA.EHR.Domain.Models.Placement
{
public class PlacementEducation : EntityBase
{
[Required, Comment("Id ผู้สมัคร")]
public virtual PlacementProfile? PlacementProfile { get; set; }
[Comment("Idวุฒิที่ได้รับ")]
public virtual EducationLevel? EducationLevel { get; set; }
[Required, Comment("สาขาวิชา/วิชาเอก")]
public string Major { get; set; } = string.Empty;
[Required, MaxLength(10), Comment("คะแนนเฉลี่ยตลอดหลักสูตร")]
public float Scores { get; set; }
[Required, Comment("ชื่อสถานศึกษา")]
public string Name { get; set; } = string.Empty;
[Required, Comment("ระยะเวลาเริ่ม")]
public DateTime DurationStart { get; set; } = DateTime.Now.Date;
[Required, Comment("ระยะเวลาสิ้นสุด")]
public DateTime DurationEnd { get; set; } = DateTime.Now.Date;
}
}

View file

@ -0,0 +1,15 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
namespace BMA.EHR.Domain.Models.Placement
{
public class PlacementIsProperty : EntityBase
{
[Required, Comment("ชื่อคุณสมบัติ")]
public string Name { get; set; } = string.Empty;
[Comment("สถานะการใช้งาน")]
public bool IsActive { get; set; } = true;
}
}

View file

@ -0,0 +1,228 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
using BMA.EHR.Domain.Models.MetaData;
using BMA.EHR.Domain.Models.Organizations;
using BMA.EHR.Domain.Models.Documents;
namespace BMA.EHR.Domain.Models.Placement
{
public class PlacementProfile : EntityBase
{
[Comment("Id บรรจุ")]
public Placement? Placement { get; set; }
[Comment("Id คำนำหน้า")]
public Prefix? Prefix { get; set; }
[Comment("ชื่อ")]
public string? Firstname { get; set; }
[Comment("นามสกุล")]
public string? Lastname { get; set; }
[Comment("ลำดับที่สอบได้")]
public int? Number { get; set; }
[Comment("Id เลขที่ตำแหน่ง")]
public OrganizationPositionEntity? OrganizationPosition { get; set; }
[Comment("วันที่บรรจุ")]
public DateTime? RecruitDate { get; set; }
[Comment("เงินเดือน")]
public double? Amount { get; set; }
[Comment("เงินประจำตำแหน่ง")]
public double? PositionSalaryAmount { get; set; }
[Comment("เงินค่าตอบแทนรายเดือน")]
public double? MouthSalaryAmount { get; set; }
[Comment("ตำแหน่ง (รายละเอียด)")]
public string? SalaryClass { get; set; }
[Comment("เอกสารอ้างอิง")]
public string? SalaryRef { get; set; }
[Comment("ข้าราชการฯ กทม.")]
public bool? IsOfficer { get; set; }
[Comment("สถานะการบรรจุ")]
public PlacementStatus? PlacementStatus { get; set; }
[Comment("เหตุผลสละสิทธิ์")]
public string? RejectReason { get; set; }
[Comment("เหตุผลผ่อนผัน")]
public string? ReliefReason { get; set; }
[Comment("Id เอกสารผ่อนผัน")]
public Document? ReliefDoc { get; set; }
[Comment("การคัดกรองคุณสมบัติ")]
public string? IsProperty { get; set; }
[MaxLength(40), Comment("สัญชาติ")]
public string? Nationality { get; set; }
[MaxLength(40), Comment("วันเกิด")]
public DateTime? DateOfBirth { get; set; }
[Comment("Id สถานภาพ")]
public Relationship? Relationship { get; set; }
[MaxLength(200), Comment("อีเมล")]
public string? Email { get; set; }
[MaxLength(20), Comment("เลขประจำตัวประชาชน")]
public string? CitizenId { get; set; }
[Comment("Id เขตที่ออกบัตรประชาชน")]
public District? CitizenDistrict { get; set; }
[Comment("Id จังหวัดที่ออกบัตรประชาชน")]
public Province? CitizenProvince { get; set; }
[Comment("วันที่ออกบัตร")]
public DateTime? CitizenDate { get; set; }
[MaxLength(20), Comment("โทรศัพท์")]
public string? Telephone { get; set; }
[MaxLength(20), Comment("โทรศัพท์มือถือ")]
public string? MobilePhone { get; set; }
[Comment("ความสามารถพิเศษ")]
public string? Knowledge { get; set; }
[Comment("ที่อยู่ตามทะเบียนบ้าน")]
public string? RegistAddress { get; set; }
[Comment("Id จังหวัดที่อยู่ตามทะเบียนบ้าน")]
public Province? RegistProvince { get; set; }
[Comment("Id อำเภอที่อยู่ตามทะเบียนบ้าน")]
public District? RegistDistrict { get; set; }
[Comment("Id ตำบลที่อยู่ตามทะเบียนบ้าน")]
public SubDistrict? RegistSubDistrict { get; set; }
[MaxLength(10), Comment("รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน")]
public string? RegistZipCode { get; set; }
[Comment("ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน")]
public bool? RegistSame { get; set; }
[Comment("ที่อยู่ปัจจุบัน")]
public string? CurrentAddress { get; set; }
[Comment("Id จังหวัดที่อยู่ปัจจุบัน")]
public Province? CurrentProvince { get; set; }
[Comment("Id อำเภอที่อยู่ปัจจุบัน")]
public District? CurrentDistrict { get; set; }
[Comment("Id ตำบลที่อยู่ปัจจุบัน")]
public SubDistrict? CurrentSubDistrict { get; set; }
[MaxLength(10), Comment("รหัสไปรษณีย์ที่อยู่ปัจจุบัน")]
public string? CurrentZipCode { get; set; }
[Comment("คู่สมรส")]
public bool? Marry { get; set; }
[Comment("Id คำนำหน้าชื่อคู่สมรส")]
public Prefix? MarryPrefix { get; set; }
[MaxLength(100), Comment("ชื่อจริงคู่สมรส")]
public string? MarryFirstName { get; set; }
[MaxLength(100), Comment("นามสกุลคู่สมรส")]
public string? MarryLastName { get; set; }
[MaxLength(200), Comment("อาชีพคู่สมรส")]
public string? MarryOccupation { get; set; }
[MaxLength(100), Comment("สัญชาติคู่สมรส")]
public string? MarryNationality { get; set; }
[Comment("Id คำนำหน้าชื่อบิดา")]
public Prefix? FatherPrefix { get; set; }
[MaxLength(100), Comment("ชื่อจริงบิดา")]
public string? FatherFirstName { get; set; }
[MaxLength(100), Comment("นามสกุลบิดา")]
public string? FatherLastName { get; set; }
[MaxLength(200), Comment("อาชีพบิดา")]
public string? FatherOccupation { get; set; }
[MaxLength(100), Comment("สัญชาติบิดา")]
public string? FatherNationality { get; set; }
[Comment("Id คำนำหน้าชื่อมารดา")]
public Prefix? MotherPrefix { get; set; }
[MaxLength(100), Comment("ชื่อจริงมารดา")]
public string? MotherFirstName { get; set; }
[MaxLength(100), Comment("นามสกุลมารดา")]
public string? MotherLastName { get; set; }
[MaxLength(200), Comment("อาชีพมารดา")]
public string? MotherOccupation { get; set; }
[MaxLength(100), Comment("สัญชาติมารดา")]
public string? MotherNationality { get; set; }
[Comment("ประเภทอาชีพที่ทำงานมาก่อน")]
public string? OccupationType { get; set; }
[Comment("สำนัก/บริษัท บริษัท")]
public string? OccupationCompany { get; set; }
[Comment("กอง/ฝ่าย บริษัท")]
public string? OccupationDepartment { get; set; }
[MaxLength(200), Comment("อีเมล บริษัท")]
public string? OccupationEmail { get; set; }
[MaxLength(20), Comment("โทรศัพท์ บริษัท")]
public string? OccupationTelephone { get; set; }
[Comment("ตำแหน่งอาชีพ")]
public string? OccupationPosition { get; set; }
[Comment("Id ตำแหน่งเลขที่")]
public PositionNumberEntity? PositionNumber { get; set; }
[Comment("Id ตำแหน่ง")]
public PositionPath? PositionPath { get; set; }
[Comment("Id ด้าน/สาขา")]
public PositionPathSide? PositionPathSide { get; set; }
[Comment("Id ประเภทตำแหน่ง")]
public PositionType? PositionType { get; set; }
[Comment("Id สายงาน")]
public PositionLine? PositionLine { get; set; }
[Comment("Id ระดับ")]
public PositionLevel? PositionLevel { get; set; }
[Comment("คะแนนเต็มภาค ก")]
public double? PointTotalA { get; set; }
[Comment("คะแนนภาค ก")]
public double? PointA { get; set; }
[Comment("คะแนนเต็มภาค ข")]
public double? PointTotalB { get; set; }
[Comment("คะแนนภาค ข")]
public double? PointB { get; set; }
[Comment("คะแนนเต็มภาค ค")]
public double? PointTotalC { get; set; }
[Comment("คะแนนภาค ค")]
public double? PointC { get; set; }
[Comment("ลำดับที่สอบได้")]
public int ExamNumber { get; set; }
[Comment("จำนวนครั้งที่สมัครสอบ")]
public int ExamRound { get; set; }
[Comment("ผลสมัครสอบ")]
public string? Pass { get; set; }
}
}

View file

@ -0,0 +1,15 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
namespace BMA.EHR.Domain.Models.Placement
{
public class PlacementStatus : EntityBase
{
[Required, Comment("ชื่อสถานะบรรจุ")]
public string Name { get; set; } = string.Empty;
[Comment("สถานะการใช้งาน")]
public bool IsActive { get; set; } = true;
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,580 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Infrastructure.Migrations
{
/// <inheritdoc />
public partial class addtableplacements : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "PlacementIsProperties",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
Name = table.Column<string>(type: "longtext", nullable: false, comment: "ชื่อคุณสมบัติ")
.Annotation("MySql:CharSet", "utf8mb4"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false, comment: "สถานะการใช้งาน")
},
constraints: table =>
{
table.PrimaryKey("PK_PlacementIsProperties", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "Placements",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
Name = table.Column<string>(type: "longtext", nullable: false, comment: "รอบการสอบ")
.Annotation("MySql:CharSet", "utf8mb4"),
Round = table.Column<string>(type: "longtext", nullable: false, comment: "ครั้งที่")
.Annotation("MySql:CharSet", "utf8mb4"),
Year = table.Column<int>(type: "int", maxLength: 5, nullable: false, comment: "ปีงบประมาณ"),
Number = table.Column<int>(type: "int", maxLength: 10, nullable: false, comment: "จำนวนผู้สอบได้"),
TypeExam = table.Column<string>(type: "longtext", nullable: false, comment: "ประเภทการสอบ")
.Annotation("MySql:CharSet", "utf8mb4"),
StartDate = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "วันที่เริ่มบัญชีบัญชี"),
EndDate = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "วันที่สิ้นสุดบัญชี"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false, comment: "สถานะการใช้งาน")
},
constraints: table =>
{
table.PrimaryKey("PK_Placements", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "PlacementStatuses",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
Name = table.Column<string>(type: "longtext", nullable: false, comment: "ชื่อสถานะบรรจุ")
.Annotation("MySql:CharSet", "utf8mb4"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false, comment: "สถานะการใช้งาน")
},
constraints: table =>
{
table.PrimaryKey("PK_PlacementStatuses", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "PlacementProfiles",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
PlacementId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PrefixId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
Firstname = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อ")
.Annotation("MySql:CharSet", "utf8mb4"),
Lastname = table.Column<string>(type: "longtext", nullable: true, comment: "นามสกุล")
.Annotation("MySql:CharSet", "utf8mb4"),
Number = table.Column<int>(type: "int", nullable: true, comment: "ลำดับที่สอบได้"),
OrganizationPositionId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
RecruitDate = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "วันที่บรรจุ"),
Amount = table.Column<double>(type: "double", nullable: true, comment: "เงินเดือน"),
PositionSalaryAmount = table.Column<double>(type: "double", nullable: true, comment: "เงินประจำตำแหน่ง"),
MouthSalaryAmount = table.Column<double>(type: "double", nullable: true, comment: "เงินค่าตอบแทนรายเดือน"),
SalaryClass = table.Column<string>(type: "longtext", nullable: true, comment: "ตำแหน่ง (รายละเอียด)")
.Annotation("MySql:CharSet", "utf8mb4"),
SalaryRef = table.Column<string>(type: "longtext", nullable: true, comment: "เอกสารอ้างอิง")
.Annotation("MySql:CharSet", "utf8mb4"),
IsOfficer = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "ข้าราชการฯ กทม."),
PlacementStatusId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
RejectReason = table.Column<string>(type: "longtext", nullable: true, comment: "เหตุผลสละสิทธิ์")
.Annotation("MySql:CharSet", "utf8mb4"),
ReliefReason = table.Column<string>(type: "longtext", nullable: true, comment: "เหตุผลผ่อนผัน")
.Annotation("MySql:CharSet", "utf8mb4"),
ReliefDocId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
IsProperty = table.Column<string>(type: "longtext", nullable: true, comment: "การคัดกรองคุณสมบัติ")
.Annotation("MySql:CharSet", "utf8mb4"),
Nationality = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "สัญชาติ")
.Annotation("MySql:CharSet", "utf8mb4"),
DateOfBirth = table.Column<DateTime>(type: "datetime(6)", maxLength: 40, nullable: true, comment: "วันเกิด"),
RelationshipId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
Email = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true, comment: "อีเมล")
.Annotation("MySql:CharSet", "utf8mb4"),
CitizenId = table.Column<string>(type: "varchar(20)", maxLength: 20, nullable: true, comment: "เลขประจำตัวประชาชน")
.Annotation("MySql:CharSet", "utf8mb4"),
CitizenDistrictId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
CitizenProvinceId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
CitizenDate = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "วันที่ออกบัตร"),
Telephone = table.Column<string>(type: "varchar(20)", maxLength: 20, nullable: true, comment: "โทรศัพท์")
.Annotation("MySql:CharSet", "utf8mb4"),
MobilePhone = table.Column<string>(type: "varchar(20)", maxLength: 20, nullable: true, comment: "โทรศัพท์มือถือ")
.Annotation("MySql:CharSet", "utf8mb4"),
Knowledge = table.Column<string>(type: "longtext", nullable: true, comment: "ความสามารถพิเศษ")
.Annotation("MySql:CharSet", "utf8mb4"),
RegistAddress = table.Column<string>(type: "longtext", nullable: true, comment: "ที่อยู่ตามทะเบียนบ้าน")
.Annotation("MySql:CharSet", "utf8mb4"),
RegistProvinceId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
RegistDistrictId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
RegistSubDistrictId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
RegistZipCode = table.Column<string>(type: "varchar(10)", maxLength: 10, nullable: true, comment: "รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน")
.Annotation("MySql:CharSet", "utf8mb4"),
RegistSame = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน"),
CurrentAddress = table.Column<string>(type: "longtext", nullable: true, comment: "ที่อยู่ปัจจุบัน")
.Annotation("MySql:CharSet", "utf8mb4"),
CurrentProvinceId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
CurrentDistrictId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
CurrentSubDistrictId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
CurrentZipCode = table.Column<string>(type: "varchar(10)", maxLength: 10, nullable: true, comment: "รหัสไปรษณีย์ที่อยู่ปัจจุบัน")
.Annotation("MySql:CharSet", "utf8mb4"),
Marry = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "คู่สมรส"),
MarryPrefixId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
MarryFirstName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "ชื่อจริงคู่สมรส")
.Annotation("MySql:CharSet", "utf8mb4"),
MarryLastName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "นามสกุลคู่สมรส")
.Annotation("MySql:CharSet", "utf8mb4"),
MarryOccupation = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true, comment: "อาชีพคู่สมรส")
.Annotation("MySql:CharSet", "utf8mb4"),
MarryNationality = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "สัญชาติคู่สมรส")
.Annotation("MySql:CharSet", "utf8mb4"),
FatherPrefixId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
FatherFirstName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "ชื่อจริงบิดา")
.Annotation("MySql:CharSet", "utf8mb4"),
FatherLastName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "นามสกุลบิดา")
.Annotation("MySql:CharSet", "utf8mb4"),
FatherOccupation = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true, comment: "อาชีพบิดา")
.Annotation("MySql:CharSet", "utf8mb4"),
FatherNationality = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "สัญชาติบิดา")
.Annotation("MySql:CharSet", "utf8mb4"),
MotherPrefixId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
MotherFirstName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "ชื่อจริงมารดา")
.Annotation("MySql:CharSet", "utf8mb4"),
MotherLastName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "นามสกุลมารดา")
.Annotation("MySql:CharSet", "utf8mb4"),
MotherOccupation = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true, comment: "อาชีพมารดา")
.Annotation("MySql:CharSet", "utf8mb4"),
MotherNationality = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: true, comment: "สัญชาติมารดา")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationType = table.Column<string>(type: "longtext", nullable: true, comment: "ประเภทอาชีพที่ทำงานมาก่อน")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationCompany = table.Column<string>(type: "longtext", nullable: true, comment: "สำนัก/บริษัท บริษัท")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationDepartment = table.Column<string>(type: "longtext", nullable: true, comment: "กอง/ฝ่าย บริษัท")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationEmail = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true, comment: "อีเมล บริษัท")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationTelephone = table.Column<string>(type: "varchar(20)", maxLength: 20, nullable: true, comment: "โทรศัพท์ บริษัท")
.Annotation("MySql:CharSet", "utf8mb4"),
OccupationPosition = table.Column<string>(type: "longtext", nullable: true, comment: "ตำแหน่งอาชีพ")
.Annotation("MySql:CharSet", "utf8mb4"),
PositionNumberId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PositionPathId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PositionPathSideId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PositionTypeId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PositionLineId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PositionLevelId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
PointTotalA = table.Column<double>(type: "double", nullable: true, comment: "คะแนนเต็มภาค ก"),
PointA = table.Column<double>(type: "double", nullable: true, comment: "คะแนนภาค ก"),
PointTotalB = table.Column<double>(type: "double", nullable: true, comment: "คะแนนเต็มภาค ข"),
PointB = table.Column<double>(type: "double", nullable: true, comment: "คะแนนภาค ข"),
PointTotalC = table.Column<double>(type: "double", nullable: true, comment: "คะแนนเต็มภาค ค"),
PointC = table.Column<double>(type: "double", nullable: true, comment: "คะแนนภาค ค"),
ExamNumber = table.Column<int>(type: "int", nullable: false, comment: "ลำดับที่สอบได้"),
ExamRound = table.Column<int>(type: "int", nullable: false, comment: "จำนวนครั้งที่สมัครสอบ"),
Pass = table.Column<string>(type: "longtext", nullable: true, comment: "ผลสมัครสอบ")
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_PlacementProfiles", x => x.Id);
table.ForeignKey(
name: "FK_PlacementProfiles_Districts_CitizenDistrictId",
column: x => x.CitizenDistrictId,
principalTable: "Districts",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Districts_CurrentDistrictId",
column: x => x.CurrentDistrictId,
principalTable: "Districts",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Districts_RegistDistrictId",
column: x => x.RegistDistrictId,
principalTable: "Districts",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Documents_ReliefDocId",
column: x => x.ReliefDocId,
principalTable: "Documents",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_OrganizationPositions_OrganizationPosition~",
column: x => x.OrganizationPositionId,
principalTable: "OrganizationPositions",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PlacementStatuses_PlacementStatusId",
column: x => x.PlacementStatusId,
principalTable: "PlacementStatuses",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Placements_PlacementId",
column: x => x.PlacementId,
principalTable: "Placements",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionLevels_PositionLevelId",
column: x => x.PositionLevelId,
principalTable: "PositionLevels",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionLines_PositionLineId",
column: x => x.PositionLineId,
principalTable: "PositionLines",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionNumbers_PositionNumberId",
column: x => x.PositionNumberId,
principalTable: "PositionNumbers",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionPathSides_PositionPathSideId",
column: x => x.PositionPathSideId,
principalTable: "PositionPathSides",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionPaths_PositionPathId",
column: x => x.PositionPathId,
principalTable: "PositionPaths",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_PositionTypes_PositionTypeId",
column: x => x.PositionTypeId,
principalTable: "PositionTypes",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Prefixes_FatherPrefixId",
column: x => x.FatherPrefixId,
principalTable: "Prefixes",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Prefixes_MarryPrefixId",
column: x => x.MarryPrefixId,
principalTable: "Prefixes",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Prefixes_MotherPrefixId",
column: x => x.MotherPrefixId,
principalTable: "Prefixes",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Prefixes_PrefixId",
column: x => x.PrefixId,
principalTable: "Prefixes",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Provinces_CitizenProvinceId",
column: x => x.CitizenProvinceId,
principalTable: "Provinces",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Provinces_CurrentProvinceId",
column: x => x.CurrentProvinceId,
principalTable: "Provinces",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Provinces_RegistProvinceId",
column: x => x.RegistProvinceId,
principalTable: "Provinces",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_Relationships_RelationshipId",
column: x => x.RelationshipId,
principalTable: "Relationships",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_SubDistricts_CurrentSubDistrictId",
column: x => x.CurrentSubDistrictId,
principalTable: "SubDistricts",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementProfiles_SubDistricts_RegistSubDistrictId",
column: x => x.RegistSubDistrictId,
principalTable: "SubDistricts",
principalColumn: "Id");
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "PlacementCareers",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
PlacementProfileId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DurationStart = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "ระยะเวลาเริ่ม"),
DurationEnd = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "ระยะเวลาสิ้นสุด"),
Name = table.Column<string>(type: "longtext", nullable: false, comment: "สถานที่ทำงาน/ฝึกงาน")
.Annotation("MySql:CharSet", "utf8mb4"),
Position = table.Column<string>(type: "longtext", nullable: false, comment: "ตำแหน่ง/ลักษณะงาน")
.Annotation("MySql:CharSet", "utf8mb4"),
Salary = table.Column<int>(type: "int", maxLength: 20, nullable: false, comment: "เงินเดือนสุดท้ายก่อนออก"),
Reason = table.Column<string>(type: "longtext", nullable: false, comment: "เหตุผลที่ออก")
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_PlacementCareers", x => x.Id);
table.ForeignKey(
name: "FK_PlacementCareers_PlacementProfiles_PlacementProfileId",
column: x => x.PlacementProfileId,
principalTable: "PlacementProfiles",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "PlacementEducations",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
.Annotation("MySql:CharSet", "utf8mb4"),
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
.Annotation("MySql:CharSet", "utf8mb4"),
PlacementProfileId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
EducationLevelId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
Major = table.Column<string>(type: "longtext", nullable: false, comment: "สาขาวิชา/วิชาเอก")
.Annotation("MySql:CharSet", "utf8mb4"),
Scores = table.Column<float>(type: "float", maxLength: 10, nullable: false, comment: "คะแนนเฉลี่ยตลอดหลักสูตร"),
Name = table.Column<string>(type: "longtext", nullable: false, comment: "ชื่อสถานศึกษา")
.Annotation("MySql:CharSet", "utf8mb4"),
DurationStart = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "ระยะเวลาเริ่ม"),
DurationEnd = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "ระยะเวลาสิ้นสุด")
},
constraints: table =>
{
table.PrimaryKey("PK_PlacementEducations", x => x.Id);
table.ForeignKey(
name: "FK_PlacementEducations_EducationLevels_EducationLevelId",
column: x => x.EducationLevelId,
principalTable: "EducationLevels",
principalColumn: "Id");
table.ForeignKey(
name: "FK_PlacementEducations_PlacementProfiles_PlacementProfileId",
column: x => x.PlacementProfileId,
principalTable: "PlacementProfiles",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateIndex(
name: "IX_PlacementCareers_PlacementProfileId",
table: "PlacementCareers",
column: "PlacementProfileId");
migrationBuilder.CreateIndex(
name: "IX_PlacementEducations_EducationLevelId",
table: "PlacementEducations",
column: "EducationLevelId");
migrationBuilder.CreateIndex(
name: "IX_PlacementEducations_PlacementProfileId",
table: "PlacementEducations",
column: "PlacementProfileId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_CitizenDistrictId",
table: "PlacementProfiles",
column: "CitizenDistrictId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_CitizenProvinceId",
table: "PlacementProfiles",
column: "CitizenProvinceId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_CurrentDistrictId",
table: "PlacementProfiles",
column: "CurrentDistrictId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_CurrentProvinceId",
table: "PlacementProfiles",
column: "CurrentProvinceId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_CurrentSubDistrictId",
table: "PlacementProfiles",
column: "CurrentSubDistrictId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_FatherPrefixId",
table: "PlacementProfiles",
column: "FatherPrefixId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_MarryPrefixId",
table: "PlacementProfiles",
column: "MarryPrefixId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_MotherPrefixId",
table: "PlacementProfiles",
column: "MotherPrefixId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_OrganizationPositionId",
table: "PlacementProfiles",
column: "OrganizationPositionId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PlacementId",
table: "PlacementProfiles",
column: "PlacementId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PlacementStatusId",
table: "PlacementProfiles",
column: "PlacementStatusId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionLevelId",
table: "PlacementProfiles",
column: "PositionLevelId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionLineId",
table: "PlacementProfiles",
column: "PositionLineId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionNumberId",
table: "PlacementProfiles",
column: "PositionNumberId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionPathId",
table: "PlacementProfiles",
column: "PositionPathId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionPathSideId",
table: "PlacementProfiles",
column: "PositionPathSideId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PositionTypeId",
table: "PlacementProfiles",
column: "PositionTypeId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_PrefixId",
table: "PlacementProfiles",
column: "PrefixId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_RegistDistrictId",
table: "PlacementProfiles",
column: "RegistDistrictId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_RegistProvinceId",
table: "PlacementProfiles",
column: "RegistProvinceId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_RegistSubDistrictId",
table: "PlacementProfiles",
column: "RegistSubDistrictId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_RelationshipId",
table: "PlacementProfiles",
column: "RelationshipId");
migrationBuilder.CreateIndex(
name: "IX_PlacementProfiles_ReliefDocId",
table: "PlacementProfiles",
column: "ReliefDocId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "PlacementCareers");
migrationBuilder.DropTable(
name: "PlacementEducations");
migrationBuilder.DropTable(
name: "PlacementIsProperties");
migrationBuilder.DropTable(
name: "PlacementProfiles");
migrationBuilder.DropTable(
name: "PlacementStatuses");
migrationBuilder.DropTable(
name: "Placements");
}
}
}

View file

@ -8459,6 +8459,792 @@ namespace BMA.EHR.Infrastructure.Migrations
b.ToTable("Report2Histories");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.Placement", 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<DateTime>("EndDate")
.HasColumnType("datetime(6)")
.HasComment("วันที่สิ้นสุดบัญชี");
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()
.HasColumnType("longtext")
.HasComment("รอบการสอบ");
b.Property<int>("Number")
.HasMaxLength(10)
.HasColumnType("int")
.HasComment("จำนวนผู้สอบได้");
b.Property<string>("Round")
.IsRequired()
.HasColumnType("longtext")
.HasComment("ครั้งที่");
b.Property<DateTime>("StartDate")
.HasColumnType("datetime(6)")
.HasComment("วันที่เริ่มบัญชีบัญชี");
b.Property<string>("TypeExam")
.IsRequired()
.HasColumnType("longtext")
.HasComment("ประเภทการสอบ");
b.Property<int>("Year")
.HasMaxLength(5)
.HasColumnType("int")
.HasComment("ปีงบประมาณ");
b.HasKey("Id");
b.ToTable("Placements");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementCareer", 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<DateTime>("DurationEnd")
.HasColumnType("datetime(6)")
.HasComment("ระยะเวลาสิ้นสุด");
b.Property<DateTime>("DurationStart")
.HasColumnType("datetime(6)")
.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()
.HasColumnType("longtext")
.HasComment("สถานที่ทำงาน/ฝึกงาน");
b.Property<Guid>("PlacementProfileId")
.HasColumnType("char(36)");
b.Property<string>("Position")
.IsRequired()
.HasColumnType("longtext")
.HasComment("ตำแหน่ง/ลักษณะงาน");
b.Property<string>("Reason")
.IsRequired()
.HasColumnType("longtext")
.HasComment("เหตุผลที่ออก");
b.Property<int>("Salary")
.HasMaxLength(20)
.HasColumnType("int")
.HasComment("เงินเดือนสุดท้ายก่อนออก");
b.HasKey("Id");
b.HasIndex("PlacementProfileId");
b.ToTable("PlacementCareers");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementEducation", 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<DateTime>("DurationEnd")
.HasColumnType("datetime(6)")
.HasComment("ระยะเวลาสิ้นสุด");
b.Property<DateTime>("DurationStart")
.HasColumnType("datetime(6)")
.HasComment("ระยะเวลาเริ่ม");
b.Property<Guid?>("EducationLevelId")
.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>("Major")
.IsRequired()
.HasColumnType("longtext")
.HasComment("สาขาวิชา/วิชาเอก");
b.Property<string>("Name")
.IsRequired()
.HasColumnType("longtext")
.HasComment("ชื่อสถานศึกษา");
b.Property<Guid>("PlacementProfileId")
.HasColumnType("char(36)");
b.Property<float>("Scores")
.HasMaxLength(10)
.HasColumnType("float")
.HasComment("คะแนนเฉลี่ยตลอดหลักสูตร");
b.HasKey("Id");
b.HasIndex("EducationLevelId");
b.HasIndex("PlacementProfileId");
b.ToTable("PlacementEducations");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementIsProperty", 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<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()
.HasColumnType("longtext")
.HasComment("ชื่อคุณสมบัติ");
b.HasKey("Id");
b.ToTable("PlacementIsProperties");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementProfile", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)")
.HasColumnOrder(0)
.HasComment("PrimaryKey")
.HasAnnotation("Relational:JsonPropertyName", "id");
b.Property<double?>("Amount")
.HasColumnType("double")
.HasComment("เงินเดือน");
b.Property<DateTime?>("CitizenDate")
.HasColumnType("datetime(6)")
.HasComment("วันที่ออกบัตร");
b.Property<Guid?>("CitizenDistrictId")
.HasColumnType("char(36)");
b.Property<string>("CitizenId")
.HasMaxLength(20)
.HasColumnType("varchar(20)")
.HasComment("เลขประจำตัวประชาชน");
b.Property<Guid?>("CitizenProvinceId")
.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>("CurrentAddress")
.HasColumnType("longtext")
.HasComment("ที่อยู่ปัจจุบัน");
b.Property<Guid?>("CurrentDistrictId")
.HasColumnType("char(36)");
b.Property<Guid?>("CurrentProvinceId")
.HasColumnType("char(36)");
b.Property<Guid?>("CurrentSubDistrictId")
.HasColumnType("char(36)");
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<int>("ExamNumber")
.HasColumnType("int")
.HasComment("ลำดับที่สอบได้");
b.Property<int>("ExamRound")
.HasColumnType("int")
.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)");
b.Property<string>("Firstname")
.HasColumnType("longtext")
.HasComment("ชื่อ");
b.Property<bool?>("IsOfficer")
.HasColumnType("tinyint(1)")
.HasComment("ข้าราชการฯ กทม.");
b.Property<string>("IsProperty")
.HasColumnType("longtext")
.HasComment("การคัดกรองคุณสมบัติ");
b.Property<string>("Knowledge")
.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<string>("Lastname")
.HasColumnType("longtext")
.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)");
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)");
b.Property<double?>("MouthSalaryAmount")
.HasColumnType("double")
.HasComment("เงินค่าตอบแทนรายเดือน");
b.Property<string>("Nationality")
.HasMaxLength(40)
.HasColumnType("varchar(40)")
.HasComment("สัญชาติ");
b.Property<int?>("Number")
.HasColumnType("int")
.HasComment("ลำดับที่สอบได้");
b.Property<string>("OccupationCompany")
.HasColumnType("longtext")
.HasComment("สำนัก/บริษัท บริษัท");
b.Property<string>("OccupationDepartment")
.HasColumnType("longtext")
.HasComment("กอง/ฝ่าย บริษัท");
b.Property<string>("OccupationEmail")
.HasMaxLength(200)
.HasColumnType("varchar(200)")
.HasComment("อีเมล บริษัท");
b.Property<string>("OccupationPosition")
.HasColumnType("longtext")
.HasComment("ตำแหน่งอาชีพ");
b.Property<string>("OccupationTelephone")
.HasMaxLength(20)
.HasColumnType("varchar(20)")
.HasComment("โทรศัพท์ บริษัท");
b.Property<string>("OccupationType")
.HasColumnType("longtext")
.HasComment("ประเภทอาชีพที่ทำงานมาก่อน");
b.Property<Guid?>("OrganizationPositionId")
.HasColumnType("char(36)");
b.Property<string>("Pass")
.HasColumnType("longtext")
.HasComment("ผลสมัครสอบ");
b.Property<Guid?>("PlacementId")
.HasColumnType("char(36)");
b.Property<Guid?>("PlacementStatusId")
.HasColumnType("char(36)");
b.Property<double?>("PointA")
.HasColumnType("double")
.HasComment("คะแนนภาค ก");
b.Property<double?>("PointB")
.HasColumnType("double")
.HasComment("คะแนนภาค ข");
b.Property<double?>("PointC")
.HasColumnType("double")
.HasComment("คะแนนภาค ค");
b.Property<double?>("PointTotalA")
.HasColumnType("double")
.HasComment("คะแนนเต็มภาค ก");
b.Property<double?>("PointTotalB")
.HasColumnType("double")
.HasComment("คะแนนเต็มภาค ข");
b.Property<double?>("PointTotalC")
.HasColumnType("double")
.HasComment("คะแนนเต็มภาค ค");
b.Property<Guid?>("PositionLevelId")
.HasColumnType("char(36)");
b.Property<Guid?>("PositionLineId")
.HasColumnType("char(36)");
b.Property<Guid?>("PositionNumberId")
.HasColumnType("char(36)");
b.Property<Guid?>("PositionPathId")
.HasColumnType("char(36)");
b.Property<Guid?>("PositionPathSideId")
.HasColumnType("char(36)");
b.Property<double?>("PositionSalaryAmount")
.HasColumnType("double")
.HasComment("เงินประจำตำแหน่ง");
b.Property<Guid?>("PositionTypeId")
.HasColumnType("char(36)");
b.Property<Guid?>("PrefixId")
.HasColumnType("char(36)");
b.Property<DateTime?>("RecruitDate")
.HasColumnType("datetime(6)")
.HasComment("วันที่บรรจุ");
b.Property<string>("RegistAddress")
.HasColumnType("longtext")
.HasComment("ที่อยู่ตามทะเบียนบ้าน");
b.Property<Guid?>("RegistDistrictId")
.HasColumnType("char(36)");
b.Property<Guid?>("RegistProvinceId")
.HasColumnType("char(36)");
b.Property<bool?>("RegistSame")
.HasColumnType("tinyint(1)")
.HasComment("ที่อยู่ปัจจุบันเหมือนที่อยู่ตามทะเบียนบ้าน");
b.Property<Guid?>("RegistSubDistrictId")
.HasColumnType("char(36)");
b.Property<string>("RegistZipCode")
.HasMaxLength(10)
.HasColumnType("varchar(10)")
.HasComment("รหัสไปรษณีย์ที่อยู่ตามทะเบียนบ้าน");
b.Property<string>("RejectReason")
.HasColumnType("longtext")
.HasComment("เหตุผลสละสิทธิ์");
b.Property<Guid?>("RelationshipId")
.HasColumnType("char(36)");
b.Property<Guid?>("ReliefDocId")
.HasColumnType("char(36)");
b.Property<string>("ReliefReason")
.HasColumnType("longtext")
.HasComment("เหตุผลผ่อนผัน");
b.Property<string>("SalaryClass")
.HasColumnType("longtext")
.HasComment("ตำแหน่ง (รายละเอียด)");
b.Property<string>("SalaryRef")
.HasColumnType("longtext")
.HasComment("เอกสารอ้างอิง");
b.Property<string>("Telephone")
.HasMaxLength(20)
.HasColumnType("varchar(20)")
.HasComment("โทรศัพท์");
b.HasKey("Id");
b.HasIndex("CitizenDistrictId");
b.HasIndex("CitizenProvinceId");
b.HasIndex("CurrentDistrictId");
b.HasIndex("CurrentProvinceId");
b.HasIndex("CurrentSubDistrictId");
b.HasIndex("FatherPrefixId");
b.HasIndex("MarryPrefixId");
b.HasIndex("MotherPrefixId");
b.HasIndex("OrganizationPositionId");
b.HasIndex("PlacementId");
b.HasIndex("PlacementStatusId");
b.HasIndex("PositionLevelId");
b.HasIndex("PositionLineId");
b.HasIndex("PositionNumberId");
b.HasIndex("PositionPathId");
b.HasIndex("PositionPathSideId");
b.HasIndex("PositionTypeId");
b.HasIndex("PrefixId");
b.HasIndex("RegistDistrictId");
b.HasIndex("RegistProvinceId");
b.HasIndex("RegistSubDistrictId");
b.HasIndex("RelationshipId");
b.HasIndex("ReliefDocId");
b.ToTable("PlacementProfiles");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementStatus", 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<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()
.HasColumnType("longtext")
.HasComment("ชื่อสถานะบรรจุ");
b.HasKey("Id");
b.ToTable("PlacementStatuses");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.HR.LimitTypeLeave", b =>
{
b.HasOne("BMA.EHR.Domain.Models.HR.LimitLeave", "LimitLeave")
@ -9047,6 +9833,175 @@ namespace BMA.EHR.Infrastructure.Migrations
b.Navigation("Report2DetailHistory");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementCareer", b =>
{
b.HasOne("BMA.EHR.Domain.Models.Placement.PlacementProfile", "PlacementProfile")
.WithMany()
.HasForeignKey("PlacementProfileId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("PlacementProfile");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementEducation", b =>
{
b.HasOne("BMA.EHR.Domain.Models.MetaData.EducationLevel", "EducationLevel")
.WithMany()
.HasForeignKey("EducationLevelId");
b.HasOne("BMA.EHR.Domain.Models.Placement.PlacementProfile", "PlacementProfile")
.WithMany()
.HasForeignKey("PlacementProfileId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("EducationLevel");
b.Navigation("PlacementProfile");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Placement.PlacementProfile", b =>
{
b.HasOne("BMA.EHR.Domain.Models.MetaData.District", "CitizenDistrict")
.WithMany()
.HasForeignKey("CitizenDistrictId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Province", "CitizenProvince")
.WithMany()
.HasForeignKey("CitizenProvinceId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.District", "CurrentDistrict")
.WithMany()
.HasForeignKey("CurrentDistrictId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Province", "CurrentProvince")
.WithMany()
.HasForeignKey("CurrentProvinceId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.SubDistrict", "CurrentSubDistrict")
.WithMany()
.HasForeignKey("CurrentSubDistrictId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Prefix", "FatherPrefix")
.WithMany()
.HasForeignKey("FatherPrefixId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Prefix", "MarryPrefix")
.WithMany()
.HasForeignKey("MarryPrefixId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Prefix", "MotherPrefix")
.WithMany()
.HasForeignKey("MotherPrefixId");
b.HasOne("BMA.EHR.Domain.Models.Organizations.OrganizationPositionEntity", "OrganizationPosition")
.WithMany()
.HasForeignKey("OrganizationPositionId");
b.HasOne("BMA.EHR.Domain.Models.Placement.Placement", "Placement")
.WithMany()
.HasForeignKey("PlacementId");
b.HasOne("BMA.EHR.Domain.Models.Placement.PlacementStatus", "PlacementStatus")
.WithMany()
.HasForeignKey("PlacementStatusId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.PositionLevel", "PositionLevel")
.WithMany()
.HasForeignKey("PositionLevelId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.PositionLine", "PositionLine")
.WithMany()
.HasForeignKey("PositionLineId");
b.HasOne("BMA.EHR.Domain.Models.Organizations.PositionNumberEntity", "PositionNumber")
.WithMany()
.HasForeignKey("PositionNumberId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.PositionPath", "PositionPath")
.WithMany()
.HasForeignKey("PositionPathId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.PositionPathSide", "PositionPathSide")
.WithMany()
.HasForeignKey("PositionPathSideId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.PositionType", "PositionType")
.WithMany()
.HasForeignKey("PositionTypeId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Prefix", "Prefix")
.WithMany()
.HasForeignKey("PrefixId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.District", "RegistDistrict")
.WithMany()
.HasForeignKey("RegistDistrictId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Province", "RegistProvince")
.WithMany()
.HasForeignKey("RegistProvinceId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.SubDistrict", "RegistSubDistrict")
.WithMany()
.HasForeignKey("RegistSubDistrictId");
b.HasOne("BMA.EHR.Domain.Models.MetaData.Relationship", "Relationship")
.WithMany()
.HasForeignKey("RelationshipId");
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "ReliefDoc")
.WithMany()
.HasForeignKey("ReliefDocId");
b.Navigation("CitizenDistrict");
b.Navigation("CitizenProvince");
b.Navigation("CurrentDistrict");
b.Navigation("CurrentProvince");
b.Navigation("CurrentSubDistrict");
b.Navigation("FatherPrefix");
b.Navigation("MarryPrefix");
b.Navigation("MotherPrefix");
b.Navigation("OrganizationPosition");
b.Navigation("Placement");
b.Navigation("PlacementStatus");
b.Navigation("PositionLevel");
b.Navigation("PositionLine");
b.Navigation("PositionNumber");
b.Navigation("PositionPath");
b.Navigation("PositionPathSide");
b.Navigation("PositionType");
b.Navigation("Prefix");
b.Navigation("RegistDistrict");
b.Navigation("RegistProvince");
b.Navigation("RegistSubDistrict");
b.Navigation("Relationship");
b.Navigation("ReliefDoc");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.HR.LimitLeave", b =>
{
b.Navigation("LimitTypeLeaves");

View file

@ -5,6 +5,7 @@ using BMA.EHR.Domain.Models.HR;
using BMA.EHR.Domain.Models.MetaData;
using BMA.EHR.Domain.Models.Organizations;
using BMA.EHR.Domain.Models.Organizations.Report2;
using BMA.EHR.Domain.Models.Placement;
using Microsoft.EntityFrameworkCore;
namespace BMA.EHR.Infrastructure.Persistence
@ -235,6 +236,17 @@ namespace BMA.EHR.Infrastructure.Persistence
#endregion
#region " Placements "
public DbSet<Placement> Placements { get; set; }
public DbSet<PlacementCareer> PlacementCareers { get; set; }
public DbSet<PlacementEducation> PlacementEducations { get; set; }
public DbSet<PlacementIsProperty> PlacementIsProperties { get; set; }
public DbSet<PlacementProfile> PlacementProfiles { get; set; }
public DbSet<PlacementStatus> PlacementStatuses { get; set; }
#endregion
#endregion
#region " Command "