-- CreateTable CREATE TABLE "purchase_order_archives" ( "id" UUID NOT NULL, "purchase_request_id" UUID NOT NULL, "po_no" TEXT NOT NULL, "contract_no" TEXT, "archived_files" JSONB, "archived_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "archived_by" UUID NOT NULL, CONSTRAINT "purchase_order_archives_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "purchase_order_archives_purchase_request_id_key" ON "purchase_order_archives"("purchase_request_id"); -- CreateIndex CREATE INDEX "idx_purchase_order_archives_archived_by" ON "purchase_order_archives"("archived_by"); -- CreateIndex CREATE INDEX "idx_purchase_order_archives_archived_at" ON "purchase_order_archives"("archived_at"); -- AddForeignKey ALTER TABLE "purchase_order_archives" ADD CONSTRAINT "purchase_order_archives_purchase_request_id_fkey" FOREIGN KEY ("purchase_request_id") REFERENCES "purchase_requests"("id") ON DELETE CASCADE ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE "purchase_order_archives" ADD CONSTRAINT "purchase_order_archives_archived_by_fkey" FOREIGN KEY ("archived_by") REFERENCES "employees"("id") ON DELETE RESTRICT ON UPDATE CASCADE;