forked from yoone/API
1
0
Fork 0
API/src/db/seeds/area.seeder.ts

35 lines
955 B
TypeScript

import { Seeder, SeederFactoryManager } from 'typeorm-extension';
import { DataSource } from 'typeorm';
import { Area } from '../../entity/area.entity';
export default class AreaSeeder implements Seeder {
public async run(
dataSource: DataSource,
factoryManager: SeederFactoryManager
): Promise<any> {
const areaRepository = dataSource.getRepository(Area);
const areas = [
{ name: 'Australia', code: 'AU' },
{ name: 'Canada', code: 'CA' },
{ name: 'United States', code: 'US' },
{ name: 'Germany', code: 'DE' },
{ name: 'Poland', code: 'PL' },
];
for (const areaData of areas) {
const existingArea = await areaRepository.findOne({
where: [
{ name: areaData.name },
{ code: areaData.code }
]
});
if (!existingArea) {
const newArea = areaRepository.create(areaData);
await areaRepository.save(newArea);
}
}
}
}