From a4ca216c5b215f323b3c439b2f445dad72bbfce1 Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期一, 26 八月 2024 16:44:31 +0800 Subject: [PATCH] fix: 修改bug --- src/views/authority/role/index.vue | 35 +++++++++++++++++++++++++++++++++-- 1 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/views/authority/role/index.vue b/src/views/authority/role/index.vue index 300fc72..9f38faf 100644 --- a/src/views/authority/role/index.vue +++ b/src/views/authority/role/index.vue @@ -285,6 +285,8 @@ import Authheader from '@/views/authority/components/authheader.vue'; import router from "@/router"; import { queryCanvasList } from "@/api/Agent"; + import { getUserInfo, getUserResources } from "@/utils/auth"; + import { forEach } from "lodash"; let treeDataMenu = ref([]); let checkedKeysMenu = ref([]); @@ -595,6 +597,7 @@ checkStrictlyKnowledge.value = []; checkedKeysKnowledge.value = []; checkStrictlyDialog.value = []; + checkStrictlyAgent.value = []; checkedKeysDialog.value = []; selectRole.value = record; if (record.resources) { @@ -667,18 +670,46 @@ }; + let userResources = JSON.parse(getUserResources()); + const isExist = (val): boolean => { + let isok = false; + userResources.forEach((r) => { + if (val == r.menuId) { + isok = true; + } + }); + return isok; + }; + const removeChild = (nodes,newT) => { + nodes.forEach((child) => { + if (isExist(child.menuId)){ + newT.push(child); + let nt = []; + if (child.children?.length > 0) { + removeChild(child.children, nt); + child.children = nt; + } + } + }); + }; + const MenuData = async (key) => { await ResourceList(key).then((res) => { + let newTree = []; + let u =JSON.parse(getUserInfo()); + if (u.role != "admin") { + removeChild(res.rows, newTree); + } treeDataMenu.value = [...res.rows]; }); }; KnowledgeList().then((res) => { - knowledgeList.value = res.rows; + knowledgeList.value = res.data; }); DialogList().then((res) => { - DialogsList.value = res.rows; + DialogsList.value = res.data; }); queryCanvasList(null).then((canvas) => { AgentList= canvas.data -- Gitblit v1.8.0