fix: Aplicar fallbacks en servicio de analíticas y actualizar esquema de base de datos

This commit is contained in:
2026-03-04 20:47:02 -05:00
parent 4e17613d49
commit 5a220310af
2 changed files with 19 additions and 2 deletions

View File

@ -19,8 +19,8 @@ export const analyticsService = {
const payload = {
event_name: event.event_name,
entity_type: event.entity_type,
entity_id: event.entity_id,
entity_type: event.entity_type || 'system',
entity_id: event.entity_id || 'none',
entity_name: event.entity_name,
properties: event.properties || {},
user_id: userData?.user ? userData.user.id : null

View File

@ -297,3 +297,20 @@ CREATE POLICY "Users can manage own favorites" ON public.favorites FOR ALL USING
CREATE POLICY "Users can view own coupons" ON public.user_coupons FOR SELECT USING (auth.uid() = user_id);
CREATE POLICY "Users can manage own coupons" ON public.user_coupons FOR ALL USING (auth.uid() = user_id);
-- 13. Analytics Events
CREATE TABLE IF NOT EXISTS public.analytics_events (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
event_name TEXT NOT NULL,
entity_type TEXT NOT NULL,
entity_id TEXT NOT NULL,
entity_name TEXT,
user_id UUID REFERENCES public.users(id) ON DELETE SET NULL,
properties JSONB DEFAULT '{}'::jsonb,
created_at TIMESTAMPTZ DEFAULT NOW()
);
-- Analytics events RLS
ALTER TABLE public.analytics_events ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Public can insert analytics events" ON public.analytics_events FOR INSERT WITH CHECK (true);
CREATE POLICY "Admins can view all analytics events" ON public.analytics_events FOR SELECT USING (is_admin());