#!/usr/bin/env node const fetch = require('node-fetch'); async function limparDevolucoesDuplicadas() { try { console.log('🔧 Iniciando limpeza de devoluções duplicadas...'); const response = await fetch('http://localhost:5000/api/devolucoes/limpar-duplicadas', { method: 'POST', headers: { 'Content-Type': 'application/json' } }); const result = await response.json(); if (result.success) { console.log(`✅ ${result.message}`); console.log(`📊 Total removidas: ${result.removidas}`); } else { console.log('❌ Erro:', result.error); } } catch (error) { console.error('❌ Erro ao limpar devoluções:', error.message); } } async function verificarEstadoDevolucoes() { try { console.log('\n📋 Verificando estado atual das devoluções...'); const response = await fetch('http://localhost:5000/api/devolucoes'); const devolucoes = await response.json(); console.log(`📊 Total de devoluções: ${devolucoes.length}`); // Agrupar por venda para verificar duplicatas const porVenda = {}; devolucoes.forEach(dev => { const key = dev.venda_id; if (!porVenda[key]) { porVenda[key] = []; } porVenda[key].push(dev); }); console.log(`📊 Vendas com devoluções: ${Object.keys(porVenda).length}`); // Verificar vendas com múltiplas devoluções const vendasComMultiplas = Object.entries(porVenda) .filter(([_, devs]) => devs.length > 1); if (vendasComMultiplas.length > 0) { console.log(`⚠️ Vendas com múltiplas devoluções: ${vendasComMultiplas.length}`); vendasComMultiplas.forEach(([vendaId, devs]) => { console.log(` - Venda ${vendaId}: ${devs.length} devoluções`); }); } else { console.log('✅ Nenhuma venda com múltiplas devoluções encontrada'); } } catch (error) { console.error('❌ Erro ao verificar devoluções:', error.message); } } async function main() { console.log('🔧 Sistema de Correção de Devoluções/Trocas - Liberi Kids'); console.log('======================================================'); await verificarEstadoDevolucoes(); await limparDevolucoesDuplicadas(); await verificarEstadoDevolucoes(); console.log('\n✅ Processo concluído!'); console.log('\n📋 Próximos passos:'); console.log('1. Teste uma devolução simples'); console.log('2. Teste uma troca de produto'); console.log('3. Verifique se o estoque está sendo atualizado corretamente'); } main().catch(console.error);