chore: add danak services and admin login

This commit is contained in:
mahyargdz
2025-01-25 16:52:54 +03:30
parent 8af72264e7
commit 6da4b5114c
35 changed files with 505 additions and 34 deletions
+33
View File
@@ -0,0 +1,33 @@
import { Logger } from "@nestjs/common";
import { DataSource, DeepPartial } from "typeorm";
import { Role } from "../../src/modules/users/entities/role.entity";
import { User } from "../../src/modules/users/entities/user.entity";
import { RoleEnum } from "../../src/modules/users/enums/role.enum";
const defaultAdmin: DeepPartial<User> = {
email: "admin-dsc@gmail.com",
phone: "09922320740",
userName: "admin-default",
password: "admin123",
firstName: "DSC",
lastName: "Admin",
nationalCode: "1234567890",
};
export const seedAdmin = async (dataSource: DataSource, logger: Logger) => {
try {
const roleRepo = dataSource.getRepository(Role);
const userRepo = dataSource.getRepository(User);
const adminRole = await roleRepo.findOneBy({ name: RoleEnum.ADMIN });
if (!adminRole) throw new Error("Role not found");
const admin = userRepo.create({ ...defaultAdmin, role: adminRole });
await userRepo.save(admin);
logger.log("admin created successfully");
} catch (error) {
logger.error("Error in seeding admin", error);
process.exit(1);
}
};
+19 -1
View File
@@ -1,3 +1,21 @@
import { Logger } from "@nestjs/common";
import { DataSource } from "typeorm";
import { Role } from "../../src/modules/users/entities/role.entity";
import { RoleEnum } from "../../src/modules/users/enums/role.enum";
export const roles = [{ name: RoleEnum.SUPER_ADMIN }, { name: RoleEnum.ADMIN }, { name: RoleEnum.VISITOR }, { name: RoleEnum.USER }];
const roles = [{ name: RoleEnum.SUPER_ADMIN }, { name: RoleEnum.ADMIN }, { name: RoleEnum.VISITOR }, { name: RoleEnum.USER }];
export const seedRole = async (dataSource: DataSource, logger: Logger) => {
try {
const roleRepo = dataSource.getRepository(Role);
for (const role of roles) {
const newRole = roleRepo.create(role);
await roleRepo.save(newRole);
}
logger.log("Role seeded successfully");
} catch (error) {
logger.error("Error in seeding role", error);
process.exit(1);
}
};