[Add] MasterData Services.

This commit is contained in:
Thanakarn Klangkasame
2025-11-26 10:29:56 +07:00
parent d4ab1cb592
commit 1e636aa3d5
205 changed files with 7814 additions and 69 deletions

View File

@@ -2600,6 +2600,150 @@ namespace AMREZ.EOP.Infrastructures.Migrations
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.District", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(4)
.HasColumnType("character varying(4)");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<bool>("IsSystem")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false);
b.Property<string>("Meta")
.HasColumnType("jsonb");
b.Property<string>("Name")
.IsRequired()
.HasColumnType("text");
b.Property<string>("NameI18n")
.HasColumnType("jsonb");
b.Property<Guid?>("OverridesGlobalId")
.HasColumnType("uuid");
b.Property<Guid>("ProvinceId")
.HasColumnType("uuid");
b.Property<string>("Scope")
.IsRequired()
.ValueGeneratedOnAdd()
.HasColumnType("text")
.HasDefaultValue("global");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasIndex("Code");
b.HasIndex("TenantId");
b.HasIndex("TenantId", "ProvinceId");
b.HasIndex("Scope", "TenantId", "Code")
.IsUnique();
b.ToTable("districts", "master", t =>
{
t.HasCheckConstraint("ck_districts_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_districts_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.DistrictBlock", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<Guid>("GlobalId")
.HasColumnType("uuid");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasIndex("GlobalId");
b.HasIndex("TenantId");
b.HasIndex("TenantId", "GlobalId")
.IsUnique();
b.ToTable("district_blocks", "master", t =>
{
t.HasCheckConstraint("ck_district_blocks_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_district_blocks_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.DocControlStatus", b =>
{
b.Property<Guid>("Id")
@@ -3569,6 +3713,145 @@ namespace AMREZ.EOP.Infrastructures.Migrations
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.Province", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(2)
.HasColumnType("character varying(2)");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<bool>("IsSystem")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false);
b.Property<string>("Meta")
.HasColumnType("jsonb");
b.Property<string>("Name")
.IsRequired()
.HasColumnType("text");
b.Property<string>("NameI18n")
.HasColumnType("jsonb");
b.Property<Guid?>("OverridesGlobalId")
.HasColumnType("uuid");
b.Property<string>("Scope")
.IsRequired()
.ValueGeneratedOnAdd()
.HasColumnType("text")
.HasDefaultValue("global");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasIndex("Code");
b.HasIndex("TenantId");
b.HasIndex("Scope", "TenantId", "Code")
.IsUnique();
b.ToTable("provinces", "master", t =>
{
t.HasCheckConstraint("ck_provinces_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_provinces_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.ProvinceBlock", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<Guid>("GlobalId")
.HasColumnType("uuid");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasIndex("GlobalId");
b.HasIndex("TenantId");
b.HasIndex("TenantId", "GlobalId")
.IsUnique();
b.ToTable("province_blocks", "master", t =>
{
t.HasCheckConstraint("ck_province_blocks_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_province_blocks_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.QaStage", b =>
{
b.Property<Guid>("Id")
@@ -4811,6 +5094,158 @@ namespace AMREZ.EOP.Infrastructures.Migrations
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.Subdistrict", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(6)
.HasColumnType("character varying(6)");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<Guid>("DistrictId")
.HasColumnType("uuid");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<bool>("IsSystem")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false);
b.Property<string>("Meta")
.HasColumnType("jsonb");
b.Property<string>("Name")
.IsRequired()
.HasColumnType("text");
b.Property<string>("NameI18n")
.HasColumnType("jsonb");
b.Property<Guid?>("OverridesGlobalId")
.HasColumnType("uuid");
b.Property<string>("Postcode")
.HasMaxLength(10)
.HasColumnType("character varying(10)");
b.Property<string>("Scope")
.IsRequired()
.ValueGeneratedOnAdd()
.HasColumnType("text")
.HasDefaultValue("global");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasAlternateKey("TenantId", "Id");
b.HasIndex("Code");
b.HasIndex("Postcode");
b.HasIndex("TenantId");
b.HasIndex("TenantId", "DistrictId");
b.HasIndex("Scope", "TenantId", "Code")
.IsUnique();
b.ToTable("subdistricts", "master", t =>
{
t.HasCheckConstraint("ck_subdistricts_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_subdistricts_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.SubdistrictBlock", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property<DateTimeOffset>("CreatedAt")
.ValueGeneratedOnAdd()
.HasColumnType("timestamp with time zone")
.HasColumnName("created_at")
.HasDefaultValueSql("now() at time zone 'utc'");
b.Property<string>("CreatedBy")
.HasColumnType("text")
.HasColumnName("created_by");
b.Property<Guid>("GlobalId")
.HasColumnType("uuid");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("boolean")
.HasDefaultValue(false)
.HasColumnName("is_deleted");
b.Property<Guid>("TenantId")
.HasColumnType("uuid")
.HasColumnName("tenant_id");
b.Property<DateTimeOffset?>("UpdatedAt")
.HasColumnType("timestamp with time zone")
.HasColumnName("updated_at");
b.Property<string>("UpdatedBy")
.HasColumnType("text")
.HasColumnName("updated_by");
b.HasKey("Id");
b.HasIndex("GlobalId");
b.HasIndex("TenantId");
b.HasIndex("TenantId", "GlobalId")
.IsUnique();
b.ToTable("subdistrict_blocks", "master", t =>
{
t.HasCheckConstraint("ck_subdistrict_blocks_tenant_not_null", "tenant_id is not null");
t.HasCheckConstraint("ck_subdistrict_blocks_tenant_not_zero", "tenant_id <> '00000000-0000-0000-0000-000000000000'");
});
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.Uom", b =>
{
b.Property<Guid>("Id")
@@ -5538,6 +5973,27 @@ namespace AMREZ.EOP.Infrastructures.Migrations
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.District", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.Province", "Province")
.WithMany("Districts")
.HasForeignKey("TenantId", "ProvinceId")
.HasPrincipalKey("TenantId", "Id")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Province");
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.DistrictBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.District", null)
.WithMany()
.HasForeignKey("GlobalId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.DocControlStatusBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.DocControlStatus", null)
@@ -5601,6 +6057,15 @@ namespace AMREZ.EOP.Infrastructures.Migrations
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.ProvinceBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.Province", null)
.WithMany()
.HasForeignKey("GlobalId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.QaStageBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.QaStage", null)
@@ -5682,6 +6147,27 @@ namespace AMREZ.EOP.Infrastructures.Migrations
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.Subdistrict", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.District", "District")
.WithMany("Subdistricts")
.HasForeignKey("TenantId", "DistrictId")
.HasPrincipalKey("TenantId", "Id")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("District");
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.SubdistrictBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.Subdistrict", null)
.WithMany()
.HasForeignKey("GlobalId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.UomBlock", b =>
{
b.HasOne("AMREZ.EOP.Domain.Entities.MasterData.Uom", null)
@@ -5780,6 +6266,16 @@ namespace AMREZ.EOP.Infrastructures.Migrations
{
b.Navigation("Children");
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.District", b =>
{
b.Navigation("Subdistricts");
});
modelBuilder.Entity("AMREZ.EOP.Domain.Entities.MasterData.Province", b =>
{
b.Navigation("Districts");
});
#pragma warning restore 612, 618
}
}