diff --git a/ui/src/utils/permission/data.ts b/ui/src/utils/permission/data.ts index 44a1d755e..45b1fdfcc 100644 --- a/ui/src/utils/permission/data.ts +++ b/ui/src/utils/permission/data.ts @@ -72,6 +72,11 @@ const PermissionConst = { CHAT_USER_GROUP: new Permission('CHAT_USER:READ+USER_GROUP'), USER_GROUP_READ: new Permission('USER_GROUP:READ'), + USER_GROUP_CREATE: new Permission('USER_GROUP:READ+CREATE'), + USER_GROUP_EDIT: new Permission('USER_GROUP:READ+EDIT'), + USER_GROUP_DELETE: new Permission('USER_GROUP:READ+DELETE'), + USER_GROUP_ADD_MEMBER: new Permission('USER_GROUP:READ+ADD_MEMBER'), + USER_GROUP_REMOVE_MEMBER: new Permission('USER_GROUP:READ+REMOVE_MEMBER'), ROLE_READ: new Permission('ROLE:READ'), diff --git a/ui/src/views/system-chat-user/chat-user/index.vue b/ui/src/views/system-chat-user/chat-user/index.vue index b060ed588..002412317 100644 --- a/ui/src/views/system-chat-user/chat-user/index.vue +++ b/ui/src/views/system-chat-user/chat-user/index.vue @@ -14,20 +14,19 @@ @click="createUser()" v-hasPermission=" new ComplexPermission( - [ - RoleConst.ADMIN, - RoleConst.WORKSPACE_MANAGE.getWorkspaceRole, - RoleConst.USER.getWorkspaceRole, - ], - [PermissionConst.WORKSPACE_CHAT_USER_CREATE.getWorkspacePermission], - [], - 'OR', - ) - " + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.CHAT_USER_CREATE, PermissionConst.WORKSPACE_CHAT_USER_CREATE], + [],'OR',)" > {{ t('views.userManage.createUser') }} - + {{ $t('views.chatUser.syncUsers') }} {{ $t('views.chatUser.setUserGroups') }} @@ -53,16 +45,9 @@ @click="handleBatchDelete" v-hasPermission=" new ComplexPermission( - [ - RoleConst.ADMIN, - RoleConst.WORKSPACE_MANAGE.getWorkspaceRole, - RoleConst.USER.getWorkspaceRole, - ], - [PermissionConst.WORKSPACE_CHAT_USER_DELETE.getWorkspacePermission], - [], - 'OR', - ) - " + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.WORKSPACE_CHAT_USER_DELETE, PermissionConst.CHAT_USER_DELETE], + [],'OR',)" > {{ $t('common.delete') }} @@ -186,6 +171,10 @@ size="small" v-model="row.is_active" :before-change="() => changeState(row)" + v-if="hasPermission(new ComplexPermission( + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.CHAT_USER_EDIT, PermissionConst.WORKSPACE_CHAT_USER_EDIT], + [],'OR'),'OR')" /> @@ -195,18 +184,10 @@ text @click.stop="editUser(row)" :title="$t('common.edit')" - v-hasPermission=" - new ComplexPermission( - [ - RoleConst.ADMIN, - RoleConst.WORKSPACE_MANAGE.getWorkspaceRole, - RoleConst.USER.getWorkspaceRole, - ], - [PermissionConst.WORKSPACE_CHAT_USER_EDIT.getWorkspacePermission], - [], - 'OR', - ) - " + v-if="hasPermission(new ComplexPermission( + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.CHAT_USER_EDIT, PermissionConst.WORKSPACE_CHAT_USER_EDIT], + [],'OR'),'OR')" > @@ -220,18 +201,10 @@ text @click.stop="editPwdUser(row)" :title="$t('views.userManage.setting.updatePwd')" - v-hasPermission=" - new ComplexPermission( - [ - RoleConst.ADMIN, - RoleConst.WORKSPACE_MANAGE.getWorkspaceRole, - RoleConst.USER.getWorkspaceRole, - ], - [PermissionConst.WORKSPACE_CHAT_USER_EDIT.getWorkspacePermission], - [], - 'OR', - ) - " + v-if="hasPermission(new ComplexPermission( + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.CHAT_USER_EDIT, PermissionConst.WORKSPACE_CHAT_USER_EDIT], + [],'OR'),'OR')" > @@ -245,18 +218,10 @@ text @click.stop="deleteUserManage(row)" :title="$t('common.delete')" - v-hasPermission=" - new ComplexPermission( - [ - RoleConst.ADMIN, - RoleConst.WORKSPACE_MANAGE.getWorkspaceRole, - RoleConst.USER.getWorkspaceRole, - ], - [PermissionConst.WORKSPACE_CHAT_USER_DELETE.getWorkspacePermission], - [], - 'OR', - ) - " + v-if="hasPermission(new ComplexPermission( + [RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE], + [PermissionConst.CHAT_USER_DELETE, PermissionConst.WORKSPACE_CHAT_USER_DELETE], + [],'OR'),'OR')" > @@ -301,6 +266,7 @@ import SystemGroupApi from '@/api/system/user-group' import type { ListItem } from '@/api/type/common' import { PermissionConst, RoleConst } from '@/utils/permission/data' import { ComplexPermission } from '@/utils/permission/type' +import { hasPermission } from '@/utils/permission' const search_type = ref('username') const search_form = ref<{