116 lines
4.3 KiB
JavaScript
116 lines
4.3 KiB
JavaScript
/**
|
|
* Script pour mettre à jour les noms des lots selon les bonnes probabilités
|
|
*/
|
|
import { pool } from '../db.js';
|
|
|
|
async function updatePrizeNames() {
|
|
try {
|
|
console.log('🔄 Mise à jour des noms des lots...\n');
|
|
|
|
// 60% - Infuseur à thé
|
|
await pool.query(`
|
|
UPDATE prizes
|
|
SET
|
|
name = 'Infuseur à thé',
|
|
description = 'Un infuseur à thé de qualité supérieure en inox',
|
|
value = 39.00
|
|
WHERE type = 'INFUSEUR'
|
|
`);
|
|
console.log('✅ Infuseur à thé (60%) - Mis à jour');
|
|
|
|
// 20% - Boîte de 100g thé détox ou infusion
|
|
await pool.query(`
|
|
UPDATE prizes
|
|
SET
|
|
name = 'Boîte de 100g thé détox ou infusion',
|
|
description = 'Une boîte de 100g d''un thé détox ou d''infusion au choix',
|
|
value = 0.00,
|
|
stock = 100000,
|
|
probability = 0.20
|
|
WHERE type = 'THE_GRATUIT'
|
|
`);
|
|
console.log('✅ Boîte de 100g thé détox ou infusion (20%) - Mis à jour');
|
|
|
|
// 10% - Boîte de 100g thé signature
|
|
await pool.query(`
|
|
UPDATE prizes
|
|
SET
|
|
name = 'Boîte de 100g thé signature',
|
|
description = 'Une boîte de 100g d''un thé signature - Mélange exclusif',
|
|
value = 49.00,
|
|
stock = 50000,
|
|
probability = 0.10
|
|
WHERE type = 'THE_SIGNATURE'
|
|
`);
|
|
console.log('✅ Boîte de 100g thé signature (10%) - Mis à jour');
|
|
|
|
// 6% - Coffret découverte 39€
|
|
await pool.query(`
|
|
UPDATE prizes
|
|
SET
|
|
name = 'Coffret découverte 39€',
|
|
description = 'Coffret découverte avec assortiment de thés d''une valeur de 39€',
|
|
value = 39.00,
|
|
stock = 30000,
|
|
probability = 0.06
|
|
WHERE type = 'COFFRET_DECOUVERTE'
|
|
`);
|
|
console.log('✅ Coffret découverte 39€ (6%) - Mis à jour');
|
|
|
|
// 4% - Coffret découverte 69€
|
|
await pool.query(`
|
|
UPDATE prizes
|
|
SET
|
|
name = 'Coffret découverte 69€',
|
|
description = 'Coffret découverte premium avec sélection de thés rares d''une valeur de 69€',
|
|
value = 69.00,
|
|
stock = 20000,
|
|
probability = 0.04
|
|
WHERE type = 'COFFRET_PRESTIGE'
|
|
`);
|
|
console.log('✅ Coffret découverte 69€ (4%) - Mis à jour');
|
|
|
|
// Afficher le résultat
|
|
console.log('\n📊 Vérification des lots mis à jour:\n');
|
|
const result = await pool.query(`
|
|
SELECT
|
|
type,
|
|
name,
|
|
description,
|
|
value,
|
|
stock,
|
|
probability,
|
|
(probability * 100) || '%' as percentage
|
|
FROM prizes
|
|
ORDER BY probability DESC
|
|
`);
|
|
|
|
console.log('┌─────────────────────────┬──────────────────────────────────────┬────────┬──────────┬──────────────┐');
|
|
console.log('│ TYPE │ NOM │ VALEUR │ STOCK │ PROBABILITÉ │');
|
|
console.log('├─────────────────────────┼──────────────────────────────────────┼────────┼──────────┼──────────────┤');
|
|
|
|
result.rows.forEach(row => {
|
|
const type = row.type.padEnd(23);
|
|
const name = row.name.substring(0, 36).padEnd(36);
|
|
const value = (row.value + '€').padStart(6);
|
|
const stock = row.stock.toString().padStart(8);
|
|
const prob = row.percentage.padStart(12);
|
|
|
|
console.log(`│ ${type} │ ${name} │ ${value} │ ${stock} │ ${prob} │`);
|
|
});
|
|
|
|
console.log('└─────────────────────────┴──────────────────────────────────────┴────────┴──────────┴──────────────┘');
|
|
|
|
console.log('\n✅ Mise à jour terminée avec succès!');
|
|
|
|
} catch (error) {
|
|
console.error('❌ Erreur lors de la mise à jour:', error);
|
|
throw error;
|
|
} finally {
|
|
await pool.end();
|
|
}
|
|
}
|
|
|
|
// Exécuter la mise à jour
|
|
updatePrizeNames();
|