25 lines
812 B
SQL
25 lines
812 B
SQL
-- CreateEnum
|
|
CREATE TYPE "ReportType" AS ENUM ('MII', 'USER');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "ReportReason" AS ENUM ('INAPPROPRIATE', 'SPAM', 'COPYRIGHT', 'OTHER');
|
|
|
|
-- CreateEnum
|
|
CREATE TYPE "ReportStatus" AS ENUM ('OPEN', 'RESOLVED', 'DISMISSED');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "reports" (
|
|
"id" SERIAL NOT NULL,
|
|
"reportType" "ReportType" NOT NULL,
|
|
"status" "ReportStatus" NOT NULL DEFAULT 'OPEN',
|
|
"targetId" INTEGER NOT NULL,
|
|
"reason" "ReportReason" NOT NULL,
|
|
"reasonNotes" TEXT,
|
|
"authorId" INTEGER,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "reports_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "reports" ADD CONSTRAINT "reports_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES "users"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|