feat: gate permission

This commit is contained in:
archer
2025-05-30 16:04:33 +08:00
parent e74ab643fe
commit 81202c53a8
6 changed files with 204 additions and 55 deletions

View File

@@ -1,9 +1,18 @@
import { NullPermission, PermissionKeyEnum, PermissionList } from '../constant';
import { type PermissionListType } from '../type';
import { i18nT } from '../../../../web/i18n/utils';
export enum AppPermissionKeyEnum {}
export enum AppPermissionKeyEnum {
log = 'log'
log = 'log',
quickGate = 'quickGate',
featuredGate = 'featuredGate'
}
export const AppLogPermission = 0b100000;
export const GateQuickAppPermission = 0b001100;
export const GateFeaturedAppPermission = 0b010100;
export const AppPermissionList: PermissionListType<AppPermissionKeyEnum> = {
[PermissionKeyEnum.read]: {
...PermissionList[PermissionKeyEnum.read],
@@ -15,14 +24,26 @@ export const AppPermissionList: PermissionListType<AppPermissionKeyEnum> = {
},
[PermissionKeyEnum.manage]: {
...PermissionList[PermissionKeyEnum.manage],
value: 0b1111,
value: 0b111111,
description: i18nT('app:permission.des.manage')
},
[AppPermissionKeyEnum.log]: {
name: i18nT('app:permission.name.log'),
value: 0b1000,
value: AppLogPermission,
checkBoxType: 'multiple',
description: i18nT('app:permission.des.log')
},
[AppPermissionKeyEnum.quickGate]: {
name: '门户快捷应用权限',
description: '',
value: GateQuickAppPermission,
checkBoxType: 'multiple' // TODO: 加个隐藏选项
},
[AppPermissionKeyEnum.featuredGate]: {
name: '门户推荐应用权限',
description: '',
value: GateFeaturedAppPermission,
checkBoxType: 'multiple' // TODO: 加个隐藏选项
}
};