migrations/008_add_user_equipment.sql
Rama main · réplica de lectura del repositorio original.
BEGIN;
CREATE TABLE user_equipment (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
equipment_type TEXT NOT NULL
CHECK (equipment_type IN ('cushion', 'headgear', 'tubing', 'humidifier_chamber', 'filter')),
start_date DATE NOT NULL,
replacement_days INTEGER,
-- Mask-specific fields (NULL for other equipment types)
mask_category TEXT,
brand TEXT,
model TEXT,
notes TEXT,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW()
);
CREATE INDEX idx_user_equipment_user_id ON user_equipment (user_id);
CREATE INDEX idx_user_equipment_user_date ON user_equipment (user_id, equipment_type, start_date DESC);
COMMIT;