diff --git a/supabase/migrations/20250920124005_aae941df-8198-49d8-90ad-94f034ab5ef5.sql b/supabase/migrations/20250920124005_aae941df-8198-49d8-90ad-94f034ab5ef5.sql new file mode 100644 index 00000000..f6ecfb51 --- /dev/null +++ b/supabase/migrations/20250920124005_aae941df-8198-49d8-90ad-94f034ab5ef5.sql @@ -0,0 +1,22 @@ +-- Add ride_sub_type field to rides table for sub-categories like "Flying Coaster", "Inverted Coaster", etc. +-- This is separate from ride_type in ride_models to allow flexibility for rides without models +ALTER TABLE public.rides +ADD COLUMN ride_sub_type TEXT; + +-- Update companies table to better handle both companies and individuals +-- Add a person_type field to distinguish between companies, individuals, and firms +ALTER TABLE public.companies +ADD COLUMN person_type TEXT DEFAULT 'company' CHECK (person_type IN ('company', 'individual', 'firm', 'organization')); + +-- Add index for better performance on ride sub-type queries +CREATE INDEX idx_rides_ride_sub_type ON public.rides(ride_sub_type); + +-- Add index for better performance on company person_type queries +CREATE INDEX idx_companies_person_type ON public.companies(person_type); + +-- Add some example ride sub-types as comments for reference +COMMENT ON COLUMN public.rides.ride_sub_type IS 'Sub-category of ride type, e.g., "Flying Coaster", "Inverted Coaster", "Log Flume", "Shoot the Chutes"'; +COMMENT ON COLUMN public.companies.person_type IS 'Type of entity: company, individual, firm, or organization'; + +-- Update existing companies to have proper person_type (defaulting to company) +UPDATE public.companies SET person_type = 'company' WHERE person_type IS NULL; \ No newline at end of file