add table RetirementRawProfile

This commit is contained in:
Bright 2025-01-28 13:11:20 +07:00
parent 9f0c03921d
commit 204a1abc4d
6 changed files with 19918 additions and 0 deletions

View file

@ -23,5 +23,7 @@ namespace BMA.EHR.Domain.Models.Retirement
public string Detail { get; set; } = "มาตรา ๑๖ และมาตรา ๒๑ แห่งพระราชบัญญัติบำเหน็จบำนาญข้าราชการส่วนท้องถิ่น พ.ศ.๒๕๗๗ มาตรา ๘ แห่งพระราชบัญญัติบำเหน็จบำนาญข้าราชการกรุงเทพมหานคร พ.ศ.๒๕๕๔ ประกอบกับมติ ก.ก. ครั้งที่๑๑/๒๕๕๕ เมื่อวันที่ ๑๕ พฤศจิกายน ๒๕๕๕และมติ อ.ก.ก. สามัญข้ารายการสามัญครั้งที่ ๑/๒๕๖๕ เมื่อวันที่ ๒๑ กุมภาพันธ์ ๒๕๖๕";
public virtual List<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; } = new List<RetirementPeriodHistory>();
public virtual List<RetirementProfile> RetirementProfiles { get; set; } = new List<RetirementProfile>();
public virtual List<RetirementRawProfile> RetirementRawProfiles { get; set; } = new List<RetirementRawProfile>();
}
}

View file

@ -0,0 +1,80 @@
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Domain.Models.Base;
using BMA.EHR.Domain.Models.HR;
namespace BMA.EHR.Domain.Models.Retirement
{
public class RetirementRawProfile : EntityBase
{
[Comment("ลำดับที่")]
public int Order { get; set; }
[Required, Comment("เหตุผล")]
public string Reason { get; set; } = string.Empty;
[Comment("ลบออกจากเกษียญ")]
public string Remove { get; set; } = "pending";
public RetirementPeriod RetirementPeriod { get; set; }
[Comment("profile Id")]
public string? profileId { get; set; }
[Comment("คำนำหน้า")]
public string? prefix { get; set; }
[Comment("ชื่อ")]
public string? firstName { get; set; }
[Comment("นามสกุล")]
public string? lastName { get; set; }
[Comment("เลขบัตรประชาชน")]
public string? citizenId { get; set; }
[Comment("ชื่อหน่วยงาน root ")]
public string? root { get; set; }
[Comment("id หน่วยงาน root ")]
public string? rootId { get; set; }
[Comment("ชื่อย่อหน่วยงาน root ")]
public string? rootShortName { get; set; }
[Comment("ชื่อหน่วยงาน child1 ")]
public string? child1 { get; set; }
[Comment("id หน่วยงาน child1 ")]
public string? child1Id { get; set; }
[Comment("ชื่อย่อหน่วยงาน child1 ")]
public string? child1ShortName { get; set; }
[Comment("ชื่อหน่วยงาน child2 ")]
public string? child2 { get; set; }
[Comment("id หน่วยงาน child2 ")]
public string? child2Id { get; set; }
[Comment("ชื่อย่อหน่วยงาน child2 ")]
public string? child2ShortName { get; set; }
[Comment("ชื่อหน่วยงาน child3 ")]
public string? child3 { get; set; }
[Comment("id หน่วยงาน child3 ")]
public string? child3Id { get; set; }
[Comment("ชื่อย่อหน่วยงาน child3 ")]
public string? child3ShortName { get; set; }
[Comment("ชื่อหน่วยงาน child4 ")]
public string? child4 { get; set; }
[Comment("id หน่วยงาน child4 ")]
public string? child4Id { get; set; }
[Comment("ชื่อย่อหน่วยงาน child4 ")]
public string? child4ShortName { get; set; }
[Comment("เลขที่ตำแหน่ง ")]
public int? posMasterNo { get; set; }
[Comment("ชื่อตำแหน่งในสายงาน ")]
public string? position { get; set; }
[Comment("id ประเภทตำแหน่ง ")]
public string? posTypeId { get; set; }
[Comment("ชื่อประเภทตำแหน่ง ")]
public string? posTypeName { get; set; }
[Comment("ลำดับประเภทตำแหน่ง ")]
public int? posTypeRank { get; set; }
[Comment("id ระดับตำแหน่ง ")]
public string? posLevelId { get; set; }
[Comment("ชื่อระดับตำแหน่ง ")]
public string? posLevelName { get; set; }
[Comment("ลำดับระดับตำแหน่ง ")]
public int? posLevelRank { get; set; }
[Comment("id ตำแหน่งทางการบริหาร ")]
public string? posExecutiveId { get; set; }
[Comment("ชื่อตำแหน่งทางการบริหาร ")]
public string? posExecutiveName { get; set; }
[Comment("เลขที่ตำแหน่ง ")]
public string? posNo { get; set; }
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,120 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Infrastructure.Migrations
{
/// <inheritdoc />
public partial class addtableRetirementRawProfile : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "RetirementRawProfiles",
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"),
Order = table.Column<int>(type: "int", nullable: false, comment: "ลำดับที่"),
Reason = table.Column<string>(type: "longtext", nullable: false, comment: "เหตุผล")
.Annotation("MySql:CharSet", "utf8mb4"),
Remove = table.Column<string>(type: "longtext", nullable: false, comment: "ลบออกจากเกษียญ")
.Annotation("MySql:CharSet", "utf8mb4"),
RetirementPeriodId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
profileId = table.Column<string>(type: "longtext", nullable: true, comment: "profile Id")
.Annotation("MySql:CharSet", "utf8mb4"),
prefix = table.Column<string>(type: "longtext", nullable: true, comment: "คำนำหน้า")
.Annotation("MySql:CharSet", "utf8mb4"),
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"),
citizenId = table.Column<string>(type: "longtext", nullable: true, comment: "เลขบัตรประชาชน")
.Annotation("MySql:CharSet", "utf8mb4"),
root = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อหน่วยงาน root ")
.Annotation("MySql:CharSet", "utf8mb4"),
rootId = table.Column<string>(type: "longtext", nullable: true, comment: "id หน่วยงาน root ")
.Annotation("MySql:CharSet", "utf8mb4"),
rootShortName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อย่อหน่วยงาน root ")
.Annotation("MySql:CharSet", "utf8mb4"),
child1 = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อหน่วยงาน child1 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child1Id = table.Column<string>(type: "longtext", nullable: true, comment: "id หน่วยงาน child1 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child1ShortName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อย่อหน่วยงาน child1 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child2 = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อหน่วยงาน child2 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child2Id = table.Column<string>(type: "longtext", nullable: true, comment: "id หน่วยงาน child2 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child2ShortName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อย่อหน่วยงาน child2 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child3 = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อหน่วยงาน child3 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child3Id = table.Column<string>(type: "longtext", nullable: true, comment: "id หน่วยงาน child3 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child3ShortName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อย่อหน่วยงาน child3 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child4 = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อหน่วยงาน child4 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child4Id = table.Column<string>(type: "longtext", nullable: true, comment: "id หน่วยงาน child4 ")
.Annotation("MySql:CharSet", "utf8mb4"),
child4ShortName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อย่อหน่วยงาน child4 ")
.Annotation("MySql:CharSet", "utf8mb4"),
posMasterNo = table.Column<int>(type: "int", nullable: true, comment: "เลขที่ตำแหน่ง "),
position = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อตำแหน่งในสายงาน ")
.Annotation("MySql:CharSet", "utf8mb4"),
posTypeId = table.Column<string>(type: "longtext", nullable: true, comment: "id ประเภทตำแหน่ง ")
.Annotation("MySql:CharSet", "utf8mb4"),
posTypeName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อประเภทตำแหน่ง ")
.Annotation("MySql:CharSet", "utf8mb4"),
posTypeRank = table.Column<int>(type: "int", nullable: true, comment: "ลำดับประเภทตำแหน่ง "),
posLevelId = table.Column<string>(type: "longtext", nullable: true, comment: "id ระดับตำแหน่ง ")
.Annotation("MySql:CharSet", "utf8mb4"),
posLevelName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อระดับตำแหน่ง ")
.Annotation("MySql:CharSet", "utf8mb4"),
posLevelRank = table.Column<int>(type: "int", nullable: true, comment: "ลำดับระดับตำแหน่ง "),
posExecutiveId = table.Column<string>(type: "longtext", nullable: true, comment: "id ตำแหน่งทางการบริหาร ")
.Annotation("MySql:CharSet", "utf8mb4"),
posExecutiveName = table.Column<string>(type: "longtext", nullable: true, comment: "ชื่อตำแหน่งทางการบริหาร ")
.Annotation("MySql:CharSet", "utf8mb4"),
posNo = table.Column<string>(type: "longtext", nullable: true, comment: "เลขที่ตำแหน่ง ")
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_RetirementRawProfiles", x => x.Id);
table.ForeignKey(
name: "FK_RetirementRawProfiles_RetirementPeriods_RetirementPeriodId",
column: x => x.RetirementPeriodId,
principalTable: "RetirementPeriods",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateIndex(
name: "IX_RetirementRawProfiles_RetirementPeriodId",
table: "RetirementRawProfiles",
column: "RetirementPeriodId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "RetirementRawProfiles");
}
}
}

View file

@ -15957,6 +15957,201 @@ namespace BMA.EHR.Infrastructure.Migrations
b.ToTable("RetirementQuestionnaireQuestions");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementRawProfile", 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>("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<int>("Order")
.HasColumnType("int")
.HasComment("ลำดับที่");
b.Property<string>("Reason")
.IsRequired()
.HasColumnType("longtext")
.HasComment("เหตุผล");
b.Property<string>("Remove")
.IsRequired()
.HasColumnType("longtext")
.HasComment("ลบออกจากเกษียญ");
b.Property<Guid>("RetirementPeriodId")
.HasColumnType("char(36)");
b.Property<string>("child1")
.HasColumnType("longtext")
.HasComment("ชื่อหน่วยงาน child1 ");
b.Property<string>("child1Id")
.HasColumnType("longtext")
.HasComment("id หน่วยงาน child1 ");
b.Property<string>("child1ShortName")
.HasColumnType("longtext")
.HasComment("ชื่อย่อหน่วยงาน child1 ");
b.Property<string>("child2")
.HasColumnType("longtext")
.HasComment("ชื่อหน่วยงาน child2 ");
b.Property<string>("child2Id")
.HasColumnType("longtext")
.HasComment("id หน่วยงาน child2 ");
b.Property<string>("child2ShortName")
.HasColumnType("longtext")
.HasComment("ชื่อย่อหน่วยงาน child2 ");
b.Property<string>("child3")
.HasColumnType("longtext")
.HasComment("ชื่อหน่วยงาน child3 ");
b.Property<string>("child3Id")
.HasColumnType("longtext")
.HasComment("id หน่วยงาน child3 ");
b.Property<string>("child3ShortName")
.HasColumnType("longtext")
.HasComment("ชื่อย่อหน่วยงาน child3 ");
b.Property<string>("child4")
.HasColumnType("longtext")
.HasComment("ชื่อหน่วยงาน child4 ");
b.Property<string>("child4Id")
.HasColumnType("longtext")
.HasComment("id หน่วยงาน child4 ");
b.Property<string>("child4ShortName")
.HasColumnType("longtext")
.HasComment("ชื่อย่อหน่วยงาน child4 ");
b.Property<string>("citizenId")
.HasColumnType("longtext")
.HasComment("เลขบัตรประชาชน");
b.Property<string>("firstName")
.HasColumnType("longtext")
.HasComment("ชื่อ");
b.Property<string>("lastName")
.HasColumnType("longtext")
.HasComment("นามสกุล");
b.Property<string>("posExecutiveId")
.HasColumnType("longtext")
.HasComment("id ตำแหน่งทางการบริหาร ");
b.Property<string>("posExecutiveName")
.HasColumnType("longtext")
.HasComment("ชื่อตำแหน่งทางการบริหาร ");
b.Property<string>("posLevelId")
.HasColumnType("longtext")
.HasComment("id ระดับตำแหน่ง ");
b.Property<string>("posLevelName")
.HasColumnType("longtext")
.HasComment("ชื่อระดับตำแหน่ง ");
b.Property<int?>("posLevelRank")
.HasColumnType("int")
.HasComment("ลำดับระดับตำแหน่ง ");
b.Property<int?>("posMasterNo")
.HasColumnType("int")
.HasComment("เลขที่ตำแหน่ง ");
b.Property<string>("posNo")
.HasColumnType("longtext")
.HasComment("เลขที่ตำแหน่ง ");
b.Property<string>("posTypeId")
.HasColumnType("longtext")
.HasComment("id ประเภทตำแหน่ง ");
b.Property<string>("posTypeName")
.HasColumnType("longtext")
.HasComment("ชื่อประเภทตำแหน่ง ");
b.Property<int?>("posTypeRank")
.HasColumnType("int")
.HasComment("ลำดับประเภทตำแหน่ง ");
b.Property<string>("position")
.HasColumnType("longtext")
.HasComment("ชื่อตำแหน่งในสายงาน ");
b.Property<string>("prefix")
.HasColumnType("longtext")
.HasComment("คำนำหน้า");
b.Property<string>("profileId")
.HasColumnType("longtext")
.HasComment("profile Id");
b.Property<string>("root")
.HasColumnType("longtext")
.HasComment("ชื่อหน่วยงาน root ");
b.Property<string>("rootId")
.HasColumnType("longtext")
.HasComment("id หน่วยงาน root ");
b.Property<string>("rootShortName")
.HasColumnType("longtext")
.HasComment("ชื่อย่อหน่วยงาน root ");
b.HasKey("Id");
b.HasIndex("RetirementPeriodId");
b.ToTable("RetirementRawProfiles");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
{
b.Property<Guid>("Id")
@ -18906,6 +19101,17 @@ namespace BMA.EHR.Infrastructure.Migrations
b.Navigation("RetirementResign");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementRawProfile", b =>
{
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementPeriod", "RetirementPeriod")
.WithMany("RetirementRawProfiles")
.HasForeignKey("RetirementPeriodId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("RetirementPeriod");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResignCancel", b =>
{
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementResign", "RetirementResign")
@ -19271,6 +19477,8 @@ namespace BMA.EHR.Infrastructure.Migrations
b.Navigation("RetirementPeriodHistorys");
b.Navigation("RetirementProfiles");
b.Navigation("RetirementRawProfiles");
});
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>

View file

@ -328,6 +328,7 @@ namespace BMA.EHR.Infrastructure.Persistence
public DbSet<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; }
public DbSet<RetirementPeriod> RetirementPeriods { get; set; }
public DbSet<RetirementProfile> RetirementProfiles { get; set; }
public DbSet<RetirementRawProfile> RetirementRawProfiles { get; set; }
public DbSet<RetirementDeceased> RetirementDeceaseds { get; set; }
public DbSet<RetirementDeceasedNoti> RetirementDeceasedNotis { get; set; }
public DbSet<RetirementResign> RetirementResigns { get; set; }