chore: sincroniza projeto para gitea

This commit is contained in:
Tiago
2025-11-29 21:31:52 -03:00
parent 33d8645eb4
commit 7e7a0f8867
129 changed files with 24999 additions and 6757 deletions

View File

@@ -0,0 +1,65 @@
-- =====================================================
-- SCRIPT CORRIGIDO: CRIAR TABELA DE PARCELAS
-- Execute este script no Supabase SQL Editor
-- =====================================================
-- Criar tabela de parcelas (se não existir)
CREATE TABLE IF NOT EXISTS venda_parcelas (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
venda_id UUID NOT NULL REFERENCES vendas(id) ON DELETE CASCADE,
numero_parcela INTEGER NOT NULL,
valor DECIMAL(10,2) NOT NULL,
data_vencimento DATE NOT NULL,
status TEXT DEFAULT 'pendente' CHECK (status IN ('pendente', 'pago', 'vencida', 'cancelada')),
data_pagamento TIMESTAMP WITH TIME ZONE,
pix_payment_id TEXT,
pix_qr_code TEXT,
pix_qr_code_base64 TEXT,
observacoes TEXT,
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
UNIQUE(venda_id, numero_parcela)
);
-- Criar índices (se não existirem)
CREATE INDEX IF NOT EXISTS idx_venda_parcelas_venda ON venda_parcelas(venda_id);
CREATE INDEX IF NOT EXISTS idx_venda_parcelas_status ON venda_parcelas(status);
CREATE INDEX IF NOT EXISTS idx_venda_parcelas_vencimento ON venda_parcelas(data_vencimento);
-- Remover trigger antiga se existir e criar nova
DROP TRIGGER IF EXISTS update_venda_parcelas_updated_at ON venda_parcelas;
CREATE TRIGGER update_venda_parcelas_updated_at
BEFORE UPDATE ON venda_parcelas
FOR EACH ROW
EXECUTE FUNCTION update_updated_at_column();
-- Habilitar RLS
ALTER TABLE venda_parcelas ENABLE ROW LEVEL SECURITY;
-- Remover política antiga se existir
DROP POLICY IF EXISTS "Enable all operations for authenticated users" ON venda_parcelas;
-- Criar política de acesso
CREATE POLICY "Enable all operations for authenticated users"
ON venda_parcelas
FOR ALL
USING (true);
-- Verificar se foi criado com sucesso
DO $$
DECLARE
table_exists BOOLEAN;
BEGIN
SELECT EXISTS (
SELECT FROM information_schema.tables
WHERE table_name = 'venda_parcelas'
) INTO table_exists;
IF table_exists THEN
RAISE NOTICE '✅ Tabela venda_parcelas criada/verificada com sucesso!';
RAISE NOTICE '📝 Próximo passo: Reinicie o servidor Node.js';
RAISE NOTICE '🚀 Depois: Crie uma nova venda parcelada para testar';
ELSE
RAISE NOTICE '❌ Erro: Tabela não foi criada';
END IF;
END $$;