39 lines
1.0 KiB
TypeScript
39 lines
1.0 KiB
TypeScript
import { PrismaClient } from '@prisma/client';
|
||
import * as bcrypt from 'bcrypt';
|
||
|
||
const prisma = new PrismaClient();
|
||
|
||
async function main() {
|
||
try {
|
||
// Vérifier si l'administrateur existe déjà
|
||
const existingAdmin = await prisma.admin.findUnique({
|
||
where: { email: 'administrateur@ptitspas.fr' }
|
||
});
|
||
|
||
if (!existingAdmin) {
|
||
// Hasher le mot de passe
|
||
const hashedPassword = await bcrypt.hash('password', 10);
|
||
|
||
// Créer l'administrateur
|
||
await prisma.admin.create({
|
||
data: {
|
||
email: 'administrateur@ptitspas.fr',
|
||
password: hashedPassword,
|
||
firstName: 'Administrateur',
|
||
lastName: 'P\'titsPas',
|
||
passwordChanged: false
|
||
}
|
||
});
|
||
|
||
console.log('✅ Administrateur créé avec succès');
|
||
} else {
|
||
console.log('ℹ️ L\'administrateur existe déjà');
|
||
}
|
||
} catch (error) {
|
||
console.error('❌ Erreur lors de la création de l\'administrateur:', error);
|
||
} finally {
|
||
await prisma.$disconnect();
|
||
}
|
||
}
|
||
|
||
main();
|