3.2 KiB
3.2 KiB
📥 Import Automatique d'Utilisateurs depuis Excel
Ce script permet d'importer automatiquement des utilisateurs dans MongoDB depuis un fichier Excel.
🚀 Utilisation
1. Préparer le fichier Excel
Placer votre fichier .xlsx dans le dossier public/list_users/
Format attendu :
Nom Etudiant | Prénom Etudiant | Matricule HE | EMail Etudiant 2
Exemple :
Albarran Perez | Tamara | 1240935 | tamara.albarran@student.ihecs.be
Amjahed | Kawtar | 1241004 | kawtar.amjahed@student.ihecs.be
Nom du fichier : Le nom doit être le nom du référent avec underscores.
- ✅
Emmanuel_WATHELE.xlsx - ✅
Sophie_MARTIN.xlsx - ❌
liste.xlsx
2. Configurer le script
Ouvrir scripts/import-users.js et modifier ces lignes :
const XLSX_FILENAME = "Emmanuel_WATHELE.xlsx"; // ⚠️ Nom du fichier
const DEFAULT_PASSWORD = "IHECS-2025"; // Mot de passe par défaut
const COURS = "Ouverture à l'esprit critique"; // Nom du cours
3. Lancer l'import
node scripts/import-users.js
📊 Ce que fait le script
- ✅ Lit le fichier Excel
- ✅ Extrait le référent depuis le nom du fichier (
Emmanuel_WATHELE→Emmanuel WATHELE) - ✅ Hash le mot de passe une seule fois (optimisation)
- ✅ Pour chaque étudiant :
- Vérifie que l'email est valide
- Vérifie que l'email n'existe pas déjà
- Crée l'utilisateur avec :
nom,prenom,emailreferent(extrait du nom du fichier)cours(défini dans le script)passwordhashérole: "USER"
- Crée une balance initiale (3 000 000 tokens)
- ✅ Affiche un résumé détaillé
📝 Exemple de résultat
🚀 Démarrage de l'import...
📋 Référent: Emmanuel WATHELE
📚 Cours: Ouverture à l'esprit critique
🔑 Password par défaut: IHECS-2025
📁 Lecture du fichier: C:\...\public\list_users\Emmanuel_WATHELE.xlsx
✅ 50 lignes détectées dans le fichier
🔐 Hash du mot de passe...
🔌 Connexion à MongoDB...
✅ Connecté à MongoDB
📥 Import en cours...
[1/50] ✅ Créé: Tamara Albarran Perez (tamara.albarran@student.ihecs.be)
[2/50] ✅ Créé: Kawtar Amjahed (kawtar.amjahed@student.ihecs.be)
[3/50] ⏭️ Ignoré (existe déjà): nezaket.arslan@student.ihecs.be
...
============================================================
📊 RÉSUMÉ DE L'IMPORT
============================================================
✅ Utilisateurs créés: 48
⏭️ Utilisateurs ignorés (déjà existants): 2
❌ Erreurs: 0
============================================================
✨ Import terminé !
⚠️ Important
- Le script ignore les utilisateurs déjà existants (même email)
- Le script ignore la colonne "Matricule HE" (non sauvegardée)
- Tous les utilisateurs auront le même mot de passe (ils pourront le changer après)
- Chaque utilisateur reçoit 3 000 000 tokens par défaut
🔧 Dépannage
Erreur : "Cannot find module 'xlsx'"
npm install xlsx
Erreur : "connect ECONNREFUSED"
- Vérifier que MongoDB est démarré
- Vérifier la connexion dans
.env.local
Erreur : "File not found"
- Vérifier que le fichier est bien dans
public/list_users/ - Vérifier le nom du fichier dans le script