git init
This commit is contained in:
100
server/prisma/seed.ts
Normal file
100
server/prisma/seed.ts
Normal file
@@ -0,0 +1,100 @@
|
||||
import { PrismaClient } from '@prisma/client';
|
||||
|
||||
const prisma = new PrismaClient();
|
||||
|
||||
async function main() {
|
||||
const equipmentType = await prisma.equipmentType.upsert({
|
||||
where: { code: 'pump' },
|
||||
update: {},
|
||||
create: {
|
||||
code: 'pump',
|
||||
name: 'Насосный агрегат',
|
||||
manufacturer: 'АО НасосПром',
|
||||
maintenanceIntervalHours: 2000,
|
||||
overhaulIntervalHours: 16000,
|
||||
},
|
||||
});
|
||||
|
||||
const equipmentType2 = await prisma.equipmentType.upsert({
|
||||
where: { code: 'compressor' },
|
||||
update: {},
|
||||
create: {
|
||||
code: 'compressor',
|
||||
name: 'Компрессорная установка',
|
||||
manufacturer: 'ОАО Компрессормаш',
|
||||
maintenanceIntervalHours: 1500,
|
||||
overhaulIntervalHours: 12000,
|
||||
},
|
||||
});
|
||||
|
||||
const equipment = await prisma.equipment.upsert({
|
||||
where: { inventoryNumber: 'INV-001' },
|
||||
update: {},
|
||||
create: {
|
||||
inventoryNumber: 'INV-001',
|
||||
serialNumber: 'SN-2024-0001',
|
||||
name: 'Насос ЦНС 180-212',
|
||||
equipmentTypeCode: 'pump',
|
||||
status: 'Active',
|
||||
location: 'Куст №5, скважина 42',
|
||||
commissionedAt: new Date('2023-06-15'),
|
||||
totalEngineHours: 4500,
|
||||
engineHoursSinceLastRepair: 1200,
|
||||
},
|
||||
});
|
||||
|
||||
const equipment2 = await prisma.equipment.upsert({
|
||||
where: { inventoryNumber: 'INV-002' },
|
||||
update: {},
|
||||
create: {
|
||||
inventoryNumber: 'INV-002',
|
||||
serialNumber: 'SN-2024-0002',
|
||||
name: 'Компрессор 4ВМ10-120/9',
|
||||
equipmentTypeCode: 'compressor',
|
||||
status: 'Active',
|
||||
location: 'ГКС-3',
|
||||
commissionedAt: new Date('2022-03-10'),
|
||||
totalEngineHours: 8200,
|
||||
engineHoursSinceLastRepair: 800,
|
||||
},
|
||||
});
|
||||
|
||||
await prisma.repairOrder.upsert({
|
||||
where: { number: 'RO-2026-001' },
|
||||
update: {},
|
||||
create: {
|
||||
number: 'RO-2026-001',
|
||||
equipmentId: equipment.id,
|
||||
repairKind: 'TO',
|
||||
status: 'Approved',
|
||||
plannedAt: new Date('2026-04-01'),
|
||||
contractor: 'ООО СервисРемонт',
|
||||
engineHoursAtRepair: 4500,
|
||||
description: 'Плановое техническое обслуживание насосного агрегата',
|
||||
},
|
||||
});
|
||||
|
||||
await prisma.repairOrder.upsert({
|
||||
where: { number: 'RO-2026-002' },
|
||||
update: {},
|
||||
create: {
|
||||
number: 'RO-2026-002',
|
||||
equipmentId: equipment2.id,
|
||||
repairKind: 'TR',
|
||||
status: 'Draft',
|
||||
plannedAt: new Date('2026-05-15'),
|
||||
description: 'Текущий ремонт компрессорной установки',
|
||||
},
|
||||
});
|
||||
|
||||
console.log('Seed data created successfully');
|
||||
}
|
||||
|
||||
main()
|
||||
.catch((e) => {
|
||||
console.error(e);
|
||||
process.exit(1);
|
||||
})
|
||||
.finally(async () => {
|
||||
await prisma.$disconnect();
|
||||
});
|
||||
Reference in New Issue
Block a user