the-tip-top-backend/scripts/reset-employee-password.js
2025-11-17 23:47:54 +01:00

59 lines
1.7 KiB
JavaScript

import { pool } from '../db.js';
import bcrypt from 'bcrypt';
const resetPassword = async () => {
try {
const email = 'employee1@thetiptop.com';
const newPassword = 'Employee123!';
console.log('\n🔐 RÉINITIALISATION DU MOT DE PASSE EMPLOYÉ\n');
// Vérifier si l'utilisateur existe
const userCheck = await pool.query(
'SELECT id, email, role FROM users WHERE email = $1',
[email]
);
if (userCheck.rows.length === 0) {
console.log('❌ Utilisateur non trouvé:', email);
process.exit(1);
}
const user = userCheck.rows[0];
console.log('👤 Utilisateur trouvé:');
console.log(' Email:', user.email);
console.log(' Rôle:', user.role);
console.log(' ID:', user.id);
console.log('');
// Hasher le nouveau mot de passe
console.log('🔒 Hashage du nouveau mot de passe...');
const hashedPassword = await bcrypt.hash(newPassword, 10);
// Mettre à jour le mot de passe
await pool.query(
'UPDATE users SET password = $1 WHERE id = $2',
[hashedPassword, user.id]
);
console.log('✅ Mot de passe mis à jour avec succès!\n');
console.log('📝 INFORMATIONS DE CONNEXION:');
console.log(' Email:', email);
console.log(' Mot de passe:', newPassword);
console.log('');
console.log('🌐 Pour vous connecter:');
console.log(' 1. Allez sur http://localhost:3004/login');
console.log(' 2. Utilisez les identifiants ci-dessus');
console.log(' 3. Accédez à /employe/verification');
console.log('');
await pool.end();
process.exit(0);
} catch (error) {
console.error('❌ Erreur:', error.message);
process.exit(1);
}
};
resetPassword();