Add AdminId decorator for extracting adminId from requests; refactor AdminController to utilize new decorator for fetching admin details and restaurant-specific admins; update AdminService to handle admin creation and retrieval by restaurant; remove unused role and permission entities for cleaner architecture.
This commit is contained in:
@@ -13,7 +13,7 @@ import { JwtService } from '@nestjs/jwt';
|
||||
import { ConfigService } from '@nestjs/config';
|
||||
import { IAdminTokenPayload } from '../interfaces/IToken-payload';
|
||||
import { PERMISSIONS_KEY } from '../decorators/permissions.decorator';
|
||||
import { AdminService } from 'src/modules/admin/providers/admin.service';
|
||||
import { PermissionsService } from 'src/modules/roles/providers/permissions.service';
|
||||
|
||||
export interface AdminAuthRequest extends Request {
|
||||
adminId: string;
|
||||
@@ -31,7 +31,7 @@ export class AdminAuthGuard implements CanActivate {
|
||||
private readonly configService: ConfigService,
|
||||
@Inject(ConfigService)
|
||||
|
||||
private readonly adminService: AdminService,
|
||||
private readonly permissionsService: PermissionsService,
|
||||
private readonly reflector: Reflector,
|
||||
) {}
|
||||
|
||||
@@ -62,7 +62,7 @@ export class AdminAuthGuard implements CanActivate {
|
||||
|
||||
if (!requiredPermissions || requiredPermissions.length === 0) return true;
|
||||
|
||||
const adminPermission = await this.adminService.getAdminPermissions(payload.adminId, payload.restId);
|
||||
const adminPermission = await this.permissionsService.getAdminPermissions(payload.adminId, payload.restId);
|
||||
if (!adminPermission || !Array.isArray(adminPermission)) {
|
||||
this.logger.error('No permissions found');
|
||||
throw new ForbiddenException('No permissions found');
|
||||
|
||||
Reference in New Issue
Block a user