import bcrypt from 'bcrypt'; import mysql from 'mysql2/promise'; import dotenv from 'dotenv'; dotenv.config(); async function createAdmin() { const connection = await mysql.createConnection({ host: process.env.DB_HOST || 'localhost', port: process.env.DB_PORT || 3306, user: process.env.DB_USER || 'pfandsystem', password: process.env.DB_PASSWORD || 'pfandsystem_secure_password', database: process.env.DB_NAME || 'pfandsystem' }); console.log('✅ Verbindung zur Datenbank hergestellt'); // Admin-Daten const email = 'admin@pfandsystem.de'; const password = 'admin123'; // BITTE ÄNDERN! const name = 'Administrator'; const rolle = 'admin'; // Prüfe ob Admin bereits existiert const [existing] = await connection.query( 'SELECT id FROM mitarbeiter WHERE email = ?', [email] ); if (existing.length > 0) { console.log('⚠️ Admin-Benutzer existiert bereits!'); await connection.end(); return; } // Passwort hashen const passwordHash = await bcrypt.hash(password, 10); // Admin anlegen await connection.query( 'INSERT INTO mitarbeiter (email, password_hash, name, rolle) VALUES (?, ?, ?, ?)', [email, passwordHash, name, rolle] ); console.log('✅ Admin-Benutzer erfolgreich angelegt!'); console.log('📧 Email:', email); console.log('🔑 Passwort:', password); console.log('⚠️ BITTE PASSWORT NACH DEM ERSTEN LOGIN ÄNDERN!'); await connection.end(); } createAdmin().catch(err => { console.error('❌ Fehler:', err); process.exit(1); });