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