chore: add industry crud

This commit is contained in:
Mahyargdz
2025-05-11 12:26:26 +03:30
parent 4e563c497d
commit 9a9f640622
25 changed files with 560 additions and 3 deletions
+15
View File
@@ -0,0 +1,15 @@
import { EntityManager } from "@mikro-orm/postgresql";
import { Seeder } from "@mikro-orm/seeder";
import { Logger } from "@nestjs/common";
import { RoleSeeder } from "./role.seeder";
export class IndexSeeder extends Seeder {
private readonly logger = new Logger(IndexSeeder.name);
async run(em: EntityManager): Promise<void> {
this.logger.log("Starting seeding process...");
await new RoleSeeder().run(em);
this.logger.log("Seeding process completed successfully.");
}
}
+36
View File
@@ -0,0 +1,36 @@
import { EntityManager, RequiredEntityData } from "@mikro-orm/postgresql";
import { Seeder } from "@mikro-orm/seeder";
import { Logger } from "@nestjs/common";
import { Role } from "../../src/modules/users/entities/role.entity";
import { RoleEnum } from "../../src/modules/users/enums/role.enum";
export class RoleSeeder extends Seeder {
private readonly logger = new Logger(RoleSeeder.name);
async run(em: EntityManager): Promise<void> {
const roles: RequiredEntityData<Role>[] = [
{
name: RoleEnum.ADMIN,
createdAt: new Date(),
updatedAt: new Date(),
},
{
name: RoleEnum.USER,
createdAt: new Date(),
updatedAt: new Date(),
},
];
for (const roleData of roles) {
const existingRole = await em.findOne(Role, { name: roleData.name });
if (!existingRole) {
const role = em.create(Role, roleData);
await em.persistAndFlush(role);
this.logger.log(`[RoleSeeder] Created role: ${roleData.name}`);
} else {
this.logger.log(`[RoleSeeder] Role already exists: ${roleData.name}`);
}
}
}
}