Add create-admin script to package.json and set up /api/users route in server.js for user management functionality.

This commit is contained in:
Alvin
2025-06-10 09:47:17 +02:00
parent ef07016a14
commit d44338aa95
39 changed files with 22271 additions and 1 deletions

42
scripts/createAdmin.js Normal file
View File

@@ -0,0 +1,42 @@
const mongoose = require('mongoose');
const bcrypt = require('bcryptjs');
const User = require('../models/User');
require('dotenv').config();
async function createAdminUser() {
try {
// Connect to MongoDB
await mongoose.connect(process.env.MONGODB_URI || 'mongodb://localhost:27017/car-tuning-crm');
console.log('Connected to MongoDB');
// Check if admin user already exists
const existingAdmin = await User.findOne({ username: 'admin' });
if (existingAdmin) {
console.log('Admin user already exists');
process.exit(0);
}
// Create admin user
const salt = await bcrypt.genSalt(10);
const hashedPassword = await bcrypt.hash('admin123', salt);
const adminUser = new User({
username: 'admin',
password: hashedPassword,
role: 'admin'
});
await adminUser.save();
console.log('Admin user created successfully');
console.log('Username: admin');
console.log('Password: admin123');
} catch (error) {
console.error('Error creating admin user:', error);
} finally {
await mongoose.disconnect();
process.exit(0);
}
}
createAdminUser();