veza/veza-backend-api/migrations/933_reports.sql

18 lines
810 B
SQL

-- v0.803 ADM1-02: Moderation queue - reports table
CREATE TABLE IF NOT EXISTS reports (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
reporter_id UUID NOT NULL REFERENCES users(id),
reported_user_id UUID REFERENCES users(id),
content_type VARCHAR(50) NOT NULL,
content_id UUID,
reason TEXT NOT NULL,
status VARCHAR(20) NOT NULL DEFAULT 'pending',
resolved_by UUID REFERENCES users(id),
resolved_at TIMESTAMPTZ,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS idx_reports_status ON reports(status);
CREATE INDEX IF NOT EXISTS idx_reports_reporter_id ON reports(reporter_id);
CREATE INDEX IF NOT EXISTS idx_reports_reported_user_id ON reports(reported_user_id);
CREATE INDEX IF NOT EXISTS idx_reports_created_at ON reports(created_at DESC);