const { createClient } = require('@supabase/supabase-js'); require('dotenv').config(); const supabase = createClient( process.env.SUPABASE_URL, process.env.SUPABASE_ANON_KEY ); async function migratePIXFields() { console.log('šŸ¦ Iniciando migração dos campos PIX...'); try { // Executar as alteraƧƵes na tabela vendas const queries = [ "ALTER TABLE vendas ADD COLUMN IF NOT EXISTS status_pagamento VARCHAR(20) DEFAULT 'pendente'", "ALTER TABLE vendas ADD COLUMN IF NOT EXISTS data_pagamento TIMESTAMP", "ALTER TABLE vendas ADD COLUMN IF NOT EXISTS pix_payment_id VARCHAR(100)", "ALTER TABLE vendas ADD COLUMN IF NOT EXISTS pix_qr_code TEXT", "ALTER TABLE vendas ADD COLUMN IF NOT EXISTS metodo_pagamento VARCHAR(20) DEFAULT 'dinheiro'" ]; for (const query of queries) { console.log(`Executando: ${query}`); const { error } = await supabase.rpc('exec_sql', { sql: query }); if (error) { console.error(`Erro ao executar query: ${error.message}`); // Continuar mesmo com erro (campo pode jĆ” existir) } else { console.log('āœ… Query executada com sucesso'); } } // Criar Ć­ndices const indexes = [ "CREATE INDEX IF NOT EXISTS idx_vendas_status_pagamento ON vendas(status_pagamento)", "CREATE INDEX IF NOT EXISTS idx_vendas_pix_payment_id ON vendas(pix_payment_id)" ]; for (const index of indexes) { console.log(`Criando Ć­ndice: ${index}`); const { error } = await supabase.rpc('exec_sql', { sql: index }); if (error) { console.error(`Erro ao criar Ć­ndice: ${error.message}`); } else { console.log('āœ… ƍndice criado com sucesso'); } } console.log('šŸŽ‰ Migração PIX concluĆ­da com sucesso!'); } catch (error) { console.error('āŒ Erro na migração:', error); process.exit(1); } } // Executar migração migratePIXFields();