⚠️ Tablas no encontradas. Ejecuta este SQL una vez en Supabase para activar el módulo de costos. -- 1. Gastos operacionales
CREATE TABLE IF NOT EXISTS gastos_operacionales (
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
fecha DATE NOT NULL DEFAULT CURRENT_DATE,
temporada INTEGER NOT NULL DEFAULT EXTRACT(YEAR FROM CURRENT_DATE)::INTEGER,
categoria TEXT NOT NULL CHECK (categoria IN (
'personal_fijo','personal_esporadico','combustible',
'materiales','luz_agua','administrativos',
'locomocion_colacion','otros'
)),
descripcion TEXT,
cantidad NUMERIC(10,3),
precio_unitario NUMERIC(12,2),
monto_total NUMERIC(12,2) NOT NULL,
n_factura TEXT,
proveedor_ref TEXT,
producto TEXT NOT NULL DEFAULT 'general',
created_at TIMESTAMPTZ DEFAULT NOW()
);
ALTER TABLE gastos_operacionales ENABLE ROW LEVEL SECURITY;
DROP POLICY IF EXISTS allow_all_gastos ON gastos_operacionales;
CREATE POLICY allow_all_gastos ON gastos_operacionales
FOR ALL USING (true) WITH CHECK (true);
-- 2. Agregar temporada a recepciones (si no existe)
ALTER TABLE recepciones
ADD COLUMN IF NOT EXISTS temporada INTEGER
DEFAULT EXTRACT(YEAR FROM CURRENT_DATE)::INTEGER;
UPDATE recepciones
SET temporada = EXTRACT(YEAR FROM fecha)::INTEGER
WHERE temporada IS NULL;