Primeiro commit

This commit is contained in:
2025-10-14 14:04:17 -03:00
commit 33d8645eb4
109 changed files with 55424 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
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();