fix(dashboard): 添加快速操作权限控制

- 为每个快速操作项添加 permission 属性
- 实现根据用户权限动态显示快速操作项
- 当用户无任何快速操作权限时,添加空状态显示
This commit is contained in:
2025-03-08 18:16:15 +08:00
parent 30821b551c
commit 6e9884eabc

View File

@@ -6,8 +6,11 @@
:body-style="{ padding: '24px 20px 16px 20px' }"
>
<a-row :gutter="8">
<a-empty v-if="!has.hasPermOr(links.map((item) => item.permission))" />
<a-col
v-for="link in links"
v-else
v-show="has.hasPerm(link.permission)"
:key="link.text"
:span="8"
class="wrapper"
@@ -25,15 +28,17 @@
</template>
<script setup lang="ts">
import has from '@/utils/has'
const router = useRouter()
const links = [
{ text: '用户管理', icon: 'user', path: '/system/user' },
{ text: '角色管理', icon: 'user-group', path: '/system/role' },
{ text: '菜单管理', icon: 'menu', path: '/system/menu' },
{ text: '文件管理', icon: 'file', path: '/system/file' },
{ text: '代码生成', icon: 'code', path: '/code/generator' },
{ text: '系统日志', icon: 'history', path: '/monitor/log' },
{ text: '用户管理', icon: 'user', path: '/system/user', permission: 'system:user:list' },
{ text: '角色管理', icon: 'user-group', path: '/system/role', permission: 'system:role:list' },
{ text: '菜单管理', icon: 'menu', path: '/system/menu', permission: 'system:menu:list' },
{ text: '文件管理', icon: 'file', path: '/system/file', permission: 'system:file:list' },
{ text: '代码生成', icon: 'code', path: '/code/generator', permission: 'code:generator:list' },
{ text: '系统日志', icon: 'history', path: '/monitor/log', permission: 'monitor:log:list' },
]
</script>