feat: employment office (#5)

* feat: add table employment office

* feat: add tag

* feat: add employment office

* chore: migrations

* feat: order employment office

* feat: delete old employment office when special got added
This commit is contained in:
Methapon Metanipat 2024-11-14 15:10:58 +07:00 committed by GitHub
parent 22b3981aa7
commit 401d376a63
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 171 additions and 1 deletions

View file

@ -0,0 +1,26 @@
-- CreateTable
CREATE TABLE "EmploymentOffice" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"nameEN" TEXT NOT NULL,
"provinceId" TEXT NOT NULL,
CONSTRAINT "EmploymentOffice_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "EmploymentOfficeDistrict" (
"areaId" TEXT NOT NULL,
"districtId" TEXT NOT NULL,
CONSTRAINT "EmploymentOfficeDistrict_pkey" PRIMARY KEY ("areaId","districtId")
);
-- AddForeignKey
ALTER TABLE "EmploymentOffice" ADD CONSTRAINT "EmploymentOffice_provinceId_fkey" FOREIGN KEY ("provinceId") REFERENCES "Province"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "EmploymentOfficeDistrict" ADD CONSTRAINT "EmploymentOfficeDistrict_areaId_fkey" FOREIGN KEY ("areaId") REFERENCES "EmploymentOffice"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "EmploymentOfficeDistrict" ADD CONSTRAINT "EmploymentOfficeDistrict_districtId_fkey" FOREIGN KEY ("districtId") REFERENCES "District"("id") ON DELETE RESTRICT ON UPDATE CASCADE;

View file

@ -164,6 +164,7 @@ model Province {
customerBranchCitizen CustomerBranchCitizen[]
customerBranchHouseRegis CustomerBranchHouseRegis[]
institution Institution[]
employmentOffice EmploymentOffice[]
}
model District {
@ -187,6 +188,7 @@ model District {
customerBranchCitizen CustomerBranchCitizen[]
customerBranchHouseRegis CustomerBranchHouseRegis[]
institution Institution[]
employmentOffice EmploymentOfficeDistrict[]
}
model SubDistrict {
@ -212,6 +214,28 @@ model SubDistrict {
institution Institution[]
}
model EmploymentOffice {
id String @id @default(cuid())
name String
nameEN String
provinceId String
province Province @relation(fields: [provinceId], references: [id])
district EmploymentOfficeDistrict[]
}
model EmploymentOfficeDistrict {
areaId String
area EmploymentOffice @relation(fields: [areaId], references: [id])
districtId String
district District @relation(fields: [districtId], references: [id])
@@id([areaId, districtId])
}
enum Status {
CREATED
ACTIVE