tasq/supabase/migrations/20260228180000_add_cancelled_status_and_reason.sql

25 lines
772 B
SQL

-- Add 'cancelled' to task_status enum (if it exists) and add cancellation_reason column
DO $$
BEGIN
-- Add enum value if task_status enum exists
IF EXISTS (SELECT 1 FROM pg_type WHERE typname = 'task_status') THEN
IF NOT EXISTS (
SELECT 1
FROM pg_enum
JOIN pg_type ON pg_enum.enumtypid = pg_type.oid
WHERE pg_type.typname = 'task_status' AND pg_enum.enumlabel = 'cancelled'
) THEN
ALTER TYPE task_status ADD VALUE 'cancelled';
END IF;
END IF;
-- Add cancellation_reason column if it doesn't exist
IF NOT EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_name='tasks' AND column_name='cancellation_reason'
) THEN
ALTER TABLE public.tasks ADD COLUMN cancellation_reason text;
END IF;
END
$$;