Initial commit: SecourIT Gestion
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
const { PrismaClient } = require('@prisma/client')
|
||||
const bcrypt = require('bcryptjs')
|
||||
|
||||
const prisma = new PrismaClient()
|
||||
|
||||
async function main() {
|
||||
const passwordHash = await bcrypt.hash('admin123', 12)
|
||||
|
||||
const user = await prisma.user.upsert({
|
||||
where: { email: 'pierre@secourit.fr' },
|
||||
update: {},
|
||||
create: {
|
||||
email: 'pierre@secourit.fr',
|
||||
name: 'Pierre',
|
||||
passwordHash,
|
||||
role: 'admin',
|
||||
},
|
||||
})
|
||||
|
||||
console.log('User created:', user.email)
|
||||
|
||||
const defaultProducts = [
|
||||
{ key: 'maintenance-poste', label: 'Maintenance Poste (Windows/Mac)', costPrice: 1.40, sellPrice: 9.60, unit: 'mois', category: 'maintenance' },
|
||||
{ key: 'maintenance-serveur', label: 'Maintenance Serveur', costPrice: 4.20, sellPrice: 25.20, unit: 'mois', category: 'maintenance' },
|
||||
{ key: 'ksuite-business', label: 'KSuite Business / utilisateur', costPrice: 6.58, sellPrice: 15.80, unit: 'mois', category: 'ksuite' },
|
||||
{ key: 'ksuite-standard', label: 'KSuite Standard / utilisateur', costPrice: 1.58, sellPrice: 0, unit: 'mois', category: 'ksuite' },
|
||||
{ key: 'ksuite-entreprise', label: 'KSuite Entreprise / utilisateur', costPrice: 12.41, sellPrice: 0, unit: 'mois', category: 'ksuite' },
|
||||
{ key: 'intervention-horaire', label: 'Intervention (Taux horaire)', costPrice: 0, sellPrice: 50, unit: 'heure', category: 'hourly' },
|
||||
{ key: 'deplacement-km', label: 'Déplacement (par km)', costPrice: 0.30, sellPrice: 0.50, unit: 'km', category: 'travel' },
|
||||
]
|
||||
|
||||
for (const product of defaultProducts) {
|
||||
await prisma.productCost.upsert({
|
||||
where: { key: product.key },
|
||||
update: product,
|
||||
create: product,
|
||||
})
|
||||
}
|
||||
|
||||
console.log('Default products created')
|
||||
}
|
||||
|
||||
main()
|
||||
.catch((e) => {
|
||||
console.error(e)
|
||||
process.exit(1)
|
||||
})
|
||||
.finally(async () => {
|
||||
await prisma.$disconnect()
|
||||
})
|
||||
Reference in New Issue
Block a user