文件
hyb-oa/server/prisma/migrations/20260528113000_policy_acknowledgements/migration.sql
T

44 行
1.9 KiB
SQL

ALTER TABLE "portal_announcements"
ADD COLUMN "category" TEXT NOT NULL DEFAULT 'general',
ADD COLUMN "requires_acknowledgement" BOOLEAN NOT NULL DEFAULT false,
ADD COLUMN "acknowledgement_statement" TEXT,
ADD COLUMN "acknowledgement_due_at" TIMESTAMP(3);
CREATE TABLE "portal_announcement_acknowledgements" (
"id" UUID NOT NULL,
"announcement_id" UUID NOT NULL,
"employee_id" UUID NOT NULL,
"acknowledged_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"statement_snapshot" TEXT NOT NULL,
"title_snapshot" TEXT NOT NULL,
"summary_snapshot" TEXT NOT NULL,
"actor_id" UUID NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "portal_announcement_acknowledgements_pkey" PRIMARY KEY ("id")
);
CREATE UNIQUE INDEX "portal_announcement_acknowledgements_announcement_id_employee_id_key"
ON "portal_announcement_acknowledgements"("announcement_id", "employee_id");
CREATE INDEX "portal_announcement_acknowledgements_employee_id_acknowledged_at_idx"
ON "portal_announcement_acknowledgements"("employee_id", "acknowledged_at");
CREATE INDEX "portal_announcement_acknowledgements_announcement_id_acknowledged_at_idx"
ON "portal_announcement_acknowledgements"("announcement_id", "acknowledged_at");
ALTER TABLE "portal_announcement_acknowledgements"
ADD CONSTRAINT "portal_announcement_acknowledgements_announcement_id_fkey"
FOREIGN KEY ("announcement_id") REFERENCES "portal_announcements"("id")
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE "portal_announcement_acknowledgements"
ADD CONSTRAINT "portal_announcement_acknowledgements_employee_id_fkey"
FOREIGN KEY ("employee_id") REFERENCES "employees"("id")
ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE "portal_announcement_acknowledgements"
ADD CONSTRAINT "portal_announcement_acknowledgements_actor_id_fkey"
FOREIGN KEY ("actor_id") REFERENCES "employees"("id")
ON DELETE RESTRICT ON UPDATE CASCADE;