From 8d7bb4ac830444afde480a588e99952105ea8ede Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期四, 22 二月 2024 09:19:58 +0800 Subject: [PATCH] mrshi --- platform/src/components/system/role/MenuConfigWindow.vue | 29 ++++++++++++++++++++++++++--- 1 files changed, 26 insertions(+), 3 deletions(-) diff --git a/platform/src/components/system/role/MenuConfigWindow.vue b/platform/src/components/system/role/MenuConfigWindow.vue index ea3f39f..536f92e 100644 --- a/platform/src/components/system/role/MenuConfigWindow.vue +++ b/platform/src/components/system/role/MenuConfigWindow.vue @@ -25,7 +25,8 @@ <script> import GlobalWindow from '@/components/common/GlobalWindow' import { createRoleMenu } from '@/api/system/role' -import { fetchTree as fetchMenuList } from '@/api/system/menu' +import { fetchTree as fetchMenuList, fetchTree1 } from '@/api/system/menu' +import { mapState } from 'vuex' export default { name: 'MenuConfigWindow', components: { GlobalWindow }, @@ -41,12 +42,16 @@ selectedIds: [] } }, + computed: { + ...mapState(['userInfo']) + }, methods: { /** * @role 瑙掕壊瀵硅薄 */ - open (role, type=0) { - fetchMenuList({}, type) + open (role) { + if (this.userInfo.type === 1) { + fetchTree1({}) .then(records => { this.role = role this.menus = records @@ -61,6 +66,24 @@ .catch(e => { this.$tip.apiFailed(e) }) + } else { + fetchMenuList({}) + .then(records => { + this.role = role + this.menus = records + // 濡傛灉涓哄浐瀹氳鑹诧紝鍒欏浐瀹氳彍鍗曚笉鍙洿鏀� + this.__resetDisabled(this.menus, this.role) + // 鎵惧嚭鍙惰妭鐐� + role.menus = role.menus.filter(menu => role.menus.findIndex(m => m.parentId === menu.id) === -1) + // 鍒濆鍖栭�変腑 + this.selectedIds = role.menus.map(r => r.id) + this.visible = true + }) + .catch(e => { + this.$tip.apiFailed(e) + }) + } + }, // 纭閫夋嫨鑿滃崟 confirm () { -- Gitblit v1.9.3