-- Create the lead_requests table for professional responses to leads CREATE TABLE IF NOT EXISTS lead_requests ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), lead_id UUID NOT NULL REFERENCES leads(id) ON DELETE CASCADE, user_role_profile_id UUID NOT NULL, customer_user_id UUID NOT NULL, status VARCHAR(50) NOT NULL DEFAULT 'PENDING', tracecoins_reserved INT NOT NULL DEFAULT 0, message TEXT, expires_at TIMESTAMPTZ NOT NULL, accepted_at TIMESTAMPTZ, rejected_at TIMESTAMPTZ, rejected_reason TEXT, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); CREATE INDEX IF NOT EXISTS idx_lead_requests_lead_id ON lead_requests(lead_id); CREATE INDEX IF NOT EXISTS idx_lead_requests_user_role_profile_id ON lead_requests(user_role_profile_id); CREATE INDEX IF NOT EXISTS idx_lead_requests_customer_user_id ON lead_requests(customer_user_id); CREATE INDEX IF NOT EXISTS idx_lead_requests_status ON lead_requests(status);