Add permissions handling to AdminAuthGuard and RoleController; refactor DatabaseSeeder to utilize enums for permissions
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* Permission names enum
|
||||
* All permission names used in the system should be defined here
|
||||
*/
|
||||
export enum Permission {
|
||||
// Food Management
|
||||
MANAGE_FOODS = 'manage_foods',
|
||||
MANAGE_CATEGORIES = 'manage_categories',
|
||||
|
||||
// Order Management
|
||||
MANAGE_ORDERS = 'manage_orders',
|
||||
|
||||
// User & Admin Management
|
||||
MANAGE_ADMINS = 'manage_admins',
|
||||
MANAGE_USERS = 'manage_users',
|
||||
|
||||
// Reports & Finances
|
||||
VIEW_REPORTS = 'view_reports',
|
||||
MANAGE_FINANCES = 'manage_finances',
|
||||
|
||||
// Restaurant Management
|
||||
GET_OWN_RESTAURANT = 'get_own_restaurant',
|
||||
GET_ALL_RESTAURANTS = 'get_all_restaurants',
|
||||
CREATE_RESTAURANT = 'create_restaurant',
|
||||
DELETE_RESTAURANT = 'delete_restaurant',
|
||||
UPDATE_RESTAURANT = 'update_restaurant',
|
||||
}
|
||||
|
||||
/**
|
||||
* Permission titles mapping (Farsi)
|
||||
* Maps permission names to their Farsi titles
|
||||
*/
|
||||
export const PermissionTitles: Record<Permission, string> = {
|
||||
[Permission.MANAGE_FOODS]: 'مدیریت غذاها',
|
||||
[Permission.MANAGE_CATEGORIES]: 'مدیریت دستهبندیها',
|
||||
[Permission.MANAGE_ORDERS]: 'مدیریت سفارشات',
|
||||
[Permission.MANAGE_ADMINS]: 'مدیریت مدیران',
|
||||
[Permission.MANAGE_USERS]: 'مدیریت کاربران',
|
||||
[Permission.VIEW_REPORTS]: 'مشاهده گزارشات',
|
||||
[Permission.MANAGE_FINANCES]: 'مدیریت مالی',
|
||||
[Permission.GET_OWN_RESTAURANT]: 'مشاهده رستوران خود',
|
||||
[Permission.GET_ALL_RESTAURANTS]: 'مشاهده همه رستورانها',
|
||||
[Permission.CREATE_RESTAURANT]: 'ایجاد رستوران',
|
||||
[Permission.DELETE_RESTAURANT]: 'حذف رستوران',
|
||||
[Permission.UPDATE_RESTAURANT]: 'ویرایش رستوران',
|
||||
};
|
||||
Reference in New Issue
Block a user