From ea65ac2badeb68a0da5c0d4a69d27a9ba630c3d0 Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期四, 29 八月 2024 21:45:21 +0800 Subject: [PATCH] fix: 修改bug --- src/views/authority/role/index.vue | 53 ++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 48 insertions(+), 5 deletions(-) diff --git a/src/views/authority/role/index.vue b/src/views/authority/role/index.vue index ab8fd8a..ea318ca 100644 --- a/src/views/authority/role/index.vue +++ b/src/views/authority/role/index.vue @@ -87,13 +87,16 @@ </template> <template #operations="{ record }"> <a-space> + <a-button type="outline" @click="operation(2, record)" + >缂栬緫</a-button + > <a-button type="dashed" status="warning" @click="operation(4, record)" >瑙掕壊鏉冮檺</a-button> <a-popconfirm - content="Are you sure you want to delete?" + content="璇风‘璁ゆ槸鍚﹀垹闄わ紵" type="success" @ok="operation(3, record)" > @@ -140,6 +143,7 @@ class="tree-demo" v-model:checked-keys="checkedKeysMenu" v-model:expanded-keys="expandKdysMenu" + :only-check-leaf=true :checkable="true" :data="treeDataMenu" @check="onCheckMenu" @@ -284,6 +288,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([]); @@ -335,6 +341,7 @@ let resourcevisible = ref(false); let selectRole = ref({}); + let u =JSON.parse(getUserInfo()); const eachChildrenAdd=(node)=>{ if (node.children?.length > 0) { @@ -577,6 +584,14 @@ editform.value.remark = ""; } + if (t == 2) { + visible.value = true; + formRef.value?.resetFields(); + save.value = '缂栬緫'; + editform.value.roleId=record.roleId + editform.value.roleName = record.roleName; + } + //鍒犻櫎 if (t == 3) { await RoleDelete(record.roleId).then((res) => { @@ -594,6 +609,7 @@ checkStrictlyKnowledge.value = []; checkedKeysKnowledge.value = []; checkStrictlyDialog.value = []; + checkStrictlyAgent.value = []; checkedKeysDialog.value = []; selectRole.value = record; if (record.resources) { @@ -666,18 +682,45 @@ }; + 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 = []; + if (u.role != "admin") { + removeChild(res.rows, newTree); + } treeDataMenu.value = [...res.rows]; }); }; - KnowledgeList().then((res) => { - knowledgeList.value = res.rows; + KnowledgeList(u.role).then((res) => { + knowledgeList.value = res.data; }); - DialogList().then((res) => { - DialogsList.value = res.rows; + DialogList(u.role).then((res) => { + DialogsList.value = res.data; }); queryCanvasList(null).then((canvas) => { AgentList= canvas.data -- Gitblit v1.8.0