up seeder
This commit is contained in:
@@ -14,6 +14,7 @@ import { UsersSeeder } from './users.seeder';
|
||||
import { CouponsSeeder } from './coupons.seeder';
|
||||
import { NotificationPreferencesSeeder } from './notification-preferences.seeder';
|
||||
import { UserWalletsSeeder } from './user-wallets.seeder';
|
||||
import { InventorySeeder } from './inventory.seeder';
|
||||
|
||||
export class DatabaseSeeder extends Seeder {
|
||||
async run(em: EntityManager) {
|
||||
@@ -54,19 +55,23 @@ export class DatabaseSeeder extends Seeder {
|
||||
const foodsSeeder = new FoodsSeeder();
|
||||
await foodsSeeder.run(em, restaurantsMap, categoriesMap);
|
||||
|
||||
// 10. Create Coupons
|
||||
// 10. Create Inventory for all Foods
|
||||
const inventorySeeder = new InventorySeeder();
|
||||
await inventorySeeder.run(em);
|
||||
|
||||
// 11. Create Coupons
|
||||
const couponsSeeder = new CouponsSeeder();
|
||||
await couponsSeeder.run(em, restaurantsMap);
|
||||
|
||||
// 11. Create Admins
|
||||
// 12. Create Admins
|
||||
const adminsSeeder = new AdminsSeeder();
|
||||
await adminsSeeder.run(em, rolesMap, restaurantsMap);
|
||||
|
||||
// 12. Create Users
|
||||
// 13. Create Users
|
||||
const usersSeeder = new UsersSeeder();
|
||||
await usersSeeder.run(em);
|
||||
|
||||
// 13. Create User Wallets
|
||||
// 14. Create User Wallets
|
||||
const userWalletsSeeder = new UserWalletsSeeder();
|
||||
await userWalletsSeeder.run(em);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
import type { EntityManager } from '@mikro-orm/core';
|
||||
import { Food } from '../modules/foods/entities/food.entity';
|
||||
import { Inventory } from '../modules/inventory/entities/inventory.entity';
|
||||
|
||||
export class InventorySeeder {
|
||||
async run(em: EntityManager): Promise<void> {
|
||||
const foods = await em.find(Food, {});
|
||||
|
||||
for (const food of foods) {
|
||||
// Check if inventory already exists for this food
|
||||
const existingInventory = await em.findOne(Inventory, {
|
||||
food: { id: food.id },
|
||||
});
|
||||
|
||||
if (!existingInventory) {
|
||||
const inventory = em.create(Inventory, {
|
||||
food,
|
||||
totalStock: 50,
|
||||
availableStock: 50,
|
||||
});
|
||||
|
||||
em.persist(inventory);
|
||||
}
|
||||
}
|
||||
|
||||
await em.flush();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user