const supabase = require('../config/supabase'); async function initializeSupabaseTables() { console.log('🚀 Inicializando tabelas no Supabase...'); try { // 1. Criar tabela de fornecedores console.log('📦 Criando tabela fornecedores...'); const { error: fornecedoresError } = await supabase.rpc('create_fornecedores_table'); if (fornecedoresError && !fornecedoresError.message.includes('already exists')) { console.error('Erro ao criar tabela fornecedores:', fornecedoresError); } else { console.log('✅ Tabela fornecedores criada/verificada'); } // 2. Criar tabela de produtos console.log('📦 Criando tabela produtos...'); const { error: produtosError } = await supabase.rpc('create_produtos_table'); if (produtosError && !produtosError.message.includes('already exists')) { console.error('Erro ao criar tabela produtos:', produtosError); } else { console.log('✅ Tabela produtos criada/verificada'); } // 3. Criar tabela de variações de produtos console.log('📦 Criando tabela produto_variacoes...'); const { error: variacoesError } = await supabase.rpc('create_produto_variacoes_table'); if (variacoesError && !variacoesError.message.includes('already exists')) { console.error('Erro ao criar tabela produto_variacoes:', variacoesError); } else { console.log('✅ Tabela produto_variacoes criada/verificada'); } // 4. Criar tabela de clientes console.log('📦 Criando tabela clientes...'); const { error: clientesError } = await supabase.rpc('create_clientes_table'); if (clientesError && !clientesError.message.includes('already exists')) { console.error('Erro ao criar tabela clientes:', clientesError); } else { console.log('✅ Tabela clientes criada/verificada'); } // 5. Criar tabela de tipos de despesas console.log('📦 Criando tabela tipos_despesas...'); const { error: tiposDespesasError } = await supabase.rpc('create_tipos_despesas_table'); if (tiposDespesasError && !tiposDespesasError.message.includes('already exists')) { console.error('Erro ao criar tabela tipos_despesas:', tiposDespesasError); } else { console.log('✅ Tabela tipos_despesas criada/verificada'); } // 6. Criar tabela de despesas console.log('📦 Criando tabela despesas...'); const { error: despesasError } = await supabase.rpc('create_despesas_table'); if (despesasError && !despesasError.message.includes('already exists')) { console.error('Erro ao criar tabela despesas:', despesasError); } else { console.log('✅ Tabela despesas criada/verificada'); } // 7. Criar tabela de vendas console.log('📦 Criando tabela vendas...'); const { error: vendasError } = await supabase.rpc('create_vendas_table'); if (vendasError && !vendasError.message.includes('already exists')) { console.error('Erro ao criar tabela vendas:', vendasError); } else { console.log('✅ Tabela vendas criada/verificada'); } // 8. Criar tabela de itens de venda console.log('📦 Criando tabela venda_itens...'); const { error: vendaItensError } = await supabase.rpc('create_venda_itens_table'); if (vendaItensError && !vendaItensError.message.includes('already exists')) { console.error('Erro ao criar tabela venda_itens:', vendaItensError); } else { console.log('✅ Tabela venda_itens criada/verificada'); } console.log('🎉 Inicialização do Supabase concluída!'); // Testar conexão const { data, error } = await supabase.from('fornecedores').select('count', { count: 'exact' }); if (error) { console.error('❌ Erro ao testar conexão:', error); } else { console.log('✅ Conexão com Supabase funcionando!'); } } catch (error) { console.error('❌ Erro geral na inicialização:', error); } } // Executar se chamado diretamente if (require.main === module) { initializeSupabaseTables(); } module.exports = initializeSupabaseTables;