fix: Extends workspace manager system permission

This commit is contained in:
zhangzhanwei 2025-07-04 13:56:42 +08:00 committed by zhanweizhang7
parent a7f55e6c00
commit ea085a3832
3 changed files with 13 additions and 8 deletions

View File

@ -10,7 +10,11 @@
<div class="flex align-center mr-8">
<TopAbout class="mt-4"></TopAbout>
<el-divider class="ml-8 mr-8" direction="vertical" />
<el-button link @click="router.push({ path: '/' })">
<el-button link @click="router.push({ path: '/' })"
v-if="hasPermission([RoleConst.USER.getWorkspaceRole,RoleConst.EXTENDS_USER.getWorkspaceRole,
RoleConst.EXTENDS_WORKSPACE_MANAGE.getWorkspaceRole, RoleConst.WORKSPACE_MANAGE.getWorkspaceRole
],'OR')"
>
<AppIcon class="mr-8" iconName="app-workspace" style="font-size: 16px"></AppIcon>
{{ $t('views.workspace.toWorkspace') }}</el-button
>
@ -20,9 +24,11 @@
</div>
</template>
<script setup lang="ts">
import { RoleConst } from '@/utils/permission/data'
import Avatar from './avatar/index.vue'
import TopAbout from './top-about/index.vue'
import { useRouter } from 'vue-router'
import { hasPermission } from '@/utils/permission'
const router = useRouter()
</script>

View File

@ -55,8 +55,8 @@ const PermissionConst = {
WORKSPACE_REMOVE_MEMBER: new Permission('WORKSPACE:READ+REMOVE_MEMBER'),
WORKSPACE_WORKSPACE_READ: new Permission('WORKSPACE_WORKSPACE:READ'),
WORKSPACE_WORKSPACE_ADD_MEMBER: new Permission('WORKSPACE:READ+ADD_MEMBER'),
WORKSPACE_WORKSPACE_REMOVE_MEMBER: new Permission('WORKSPACE:READ+REMOVE_MEMBER'),
WORKSPACE_WORKSPACE_ADD_MEMBER: new Permission('WORKSPACE_WORKSPACE:READ+ADD_MEMBER'),
WORKSPACE_WORKSPACE_REMOVE_MEMBER: new Permission('WORKSPACE_WORKSPACE:READ+REMOVE_MEMBER'),
WORKSPACE_CHAT_USER_READ: new Permission('WORKSPACE_CHAT_USER:READ'),
WORKSPACE_CHAT_USER_CREATE: new Permission('WORKSPACE_CHAT_USER:READ+CREATE'),

View File

@ -5,8 +5,8 @@
@click="handleAdd"
v-hasPermission="
new ComplexPermission(
[RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE],
[PermissionConst.WORKSPACE_ADD_MEMBER, PermissionConst.WORKSPACE_WORKSPACE_ADD_MEMBER],
[RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE.getWorkspaceRole],
[PermissionConst.WORKSPACE_ADD_MEMBER, PermissionConst.WORKSPACE_WORKSPACE_ADD_MEMBER.getWorkspacePermissionWorkspaceManageRole],
[],
'OR',)"
>
@ -51,8 +51,8 @@
@click.stop="handleDelete(row)"
v-hasPermission="
new ComplexPermission(
[RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE],
[PermissionConst.WORKSPACE_REMOVE_MEMBER, PermissionConst.WORKSPACE_WORKSPACE_REMOVE_MEMBER],
[RoleConst.ADMIN, RoleConst.WORKSPACE_MANAGE.getWorkspaceRole],
[PermissionConst.WORKSPACE_REMOVE_MEMBER, PermissionConst.WORKSPACE_WORKSPACE_REMOVE_MEMBER.getWorkspacePermissionWorkspaceManageRole],
[],
'OR',)"
>
@ -74,7 +74,6 @@ import { onMounted, ref, reactive, watch } from 'vue'
import { MsgSuccess, MsgConfirm } from '@/utils/message'
import { t } from '@/locales'
import AddMemberDrawer from './AddMemberDrawer.vue'
import WorkspaceApi from '@/api/workspace/workspace'
import type { WorkspaceMemberItem, WorkspaceItem } from '@/api/type/workspace'
import { PermissionConst, RoleConst } from '@/utils/permission/data'
import { ComplexPermission } from '@/utils/permission/type'