Primeiro commit
This commit is contained in:
84
scripts/fix-devolucoes.js
Executable file
84
scripts/fix-devolucoes.js
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/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);
|
||||
Reference in New Issue
Block a user