forked from yoone/API
35 lines
955 B
TypeScript
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);
|
|
}
|
|
}
|
|
}
|
|
}
|