Files
setrip/prisma/migrations/20260518190000_verification_enhancements/migration.sql
T

31 lines
1.4 KiB
SQL

-- AlterTable: tambah dukungan re-upload request, submission history,
-- dan manual override admin untuk OrganizerVerification.
--
-- Phase 2 (re-upload request): admin minta organizer upload ulang field
-- tertentu tanpa drop & recreate row.
ALTER TABLE "OrganizerVerification"
ADD COLUMN "reuploadRequested" BOOLEAN NOT NULL DEFAULT false,
ADD COLUMN "reuploadFields" TEXT[] DEFAULT ARRAY[]::TEXT[],
ADD COLUMN "reuploadNote" TEXT;
-- Phase 3 (submission history): track jumlah submission + arsip rejection
-- reason setiap kali REJECTED (sebelum di-overwrite saat submit ulang).
-- `previousRejections` = array string `[{"at": "...", "reason": "..."}]`
-- yang di-append manual oleh service saat reject baru terjadi.
ALTER TABLE "OrganizerVerification"
ADD COLUMN "submissionCount" INTEGER NOT NULL DEFAULT 1,
ADD COLUMN "previousRejections" JSONB;
-- Phase 4 (manual override): flag bahwa verifikasi dibuat admin tanpa
-- upload KYC (mis. referral dari partner trusted). Untuk audit transparansi.
ALTER TABLE "OrganizerVerification"
ADD COLUMN "isManualOverride" BOOLEAN NOT NULL DEFAULT false,
ADD COLUMN "manualOverrideById" TEXT,
ADD COLUMN "manualOverrideNote" TEXT;
-- FK admin yang manual-override — SET NULL kalau admin dihapus.
ALTER TABLE "OrganizerVerification" ADD CONSTRAINT
"OrganizerVerification_manualOverrideById_fkey"
FOREIGN KEY ("manualOverrideById") REFERENCES "User"("id")
ON DELETE SET NULL ON UPDATE CASCADE;