修改权限bug

This commit is contained in:
龙运模
2024-08-28 23:41:22 +08:00
parent e7a8185325
commit 3bb60109a3
7 changed files with 81 additions and 33 deletions
+25 -11
View File
@@ -4,16 +4,18 @@
<el-container>
<el-main class="nopadding">
<el-menu class="menu mainMenu" :default-active="page">
<el-menu-item-group v-for="group in menu" :key="group.groupName" :title="group.groupName">
<div v-for="item in group.list" :key="item.component">
<el-menu-item v-authSetup="item.actions" :index="item.component" @click="openPage">
<el-icon v-if="item.icon"><component :is="item.icon"/></el-icon>
<template #title>
<span>{{item.title}}</span>
</template>
</el-menu-item>
</div>
</el-menu-item-group>
<div v-for="group in menu" :key="group.groupName">
<el-menu-item-group v-if="group.show" :title="group.groupName">
<div v-for="item in group.list" :key="item.component">
<el-menu-item v-authSetup="item.actions" :index="item.component" @click="openPage">
<el-icon v-if="item.icon"><component :is="item.icon"/></el-icon>
<template #title>
<span>{{item.title}}</span>
</template>
</el-menu-item>
</div>
</el-menu-item-group>
</div>
</el-menu>
</el-main>
</el-container>
@@ -51,12 +53,13 @@ export default {
menu: [
{
groupName: "账号设置",
show:true,
list: [
{
icon: "sc-icon-MachineRoom",
title: "机房配置",
component: "account",
actions:'roomConfig'
actions:'roomConfig',
},
{
icon: "sc-icon-CostAllocation",
@@ -68,6 +71,7 @@ export default {
},
{
groupName: "数据管理",
show:true,
list: [
{
icon: "sc-icon-DataSource",
@@ -110,6 +114,16 @@ export default {
created() {
const userInfo = this.$TOOL.data.get('USER_INFO');
this.user.role = userInfo.user_roles && userInfo.user_roles.role_names.length>0?userInfo.user_roles.role_names[0]:'';
const permissions = this.$TOOL.data.get("PERMISSIONS");
this.menu.forEach(item=>{
item.show = false;
item.list.forEach(em=>{
if(permissions.auth.indexOf(em.actions)!=-1){
item.show = true;
this.page = item.list[0].component
}
})
})
},
methods: {
openPage(item){
@@ -227,6 +227,13 @@ export default {
obj.data_permission.push({[em.meta.code]:list})
}
}
if(em.children && em.children.length>0){
em.children.forEach(daList=>{
if(em.checked || em.isCheck && daList.meta.hidden){
obj.menu_permission.push(daList.meta.code);
}
})
}
})
}
})
+15 -2
View File
@@ -42,13 +42,13 @@
</div>
<el-tabs class="role_tabs" tab-position="top" @tab-change="activeClick">
<el-tab-pane label="功能权限">
<dataTree ref="dataTree" :data="menu.list"/>
<dataTree ref="dataTree" v-loading="dataTreeLoading" element-loading-text="加载中..." :data="menu.list"/>
</el-tab-pane>
<el-tab-pane label="数据权限">
</el-tab-pane>
<el-tab-pane label="角色成员">
<members ref="members" :data="roleUser.list" />
<members ref="members" v-loading="roleUserLoading" element-loading-text="加载中..." :data="roleUser.list" />
</el-tab-pane>
</el-tabs>
</el-main>
@@ -143,9 +143,11 @@
activeNum:0,
roleCheckList:[],
role_id:"",
dataTreeLoading:false,
menu: {
list: [],
},
roleUserLoading:false,
roleUser:{
list:[]
},
@@ -323,6 +325,13 @@
obj.data_permission.push({[em.meta.code]:list})
}
}
if(em.children && em.children.length>0){
em.children.forEach(daList=>{
if(em.checked || em.isCheck && daList.meta.hidden){
obj.menu_permission.push(daList.meta.code);
}
})
}
})
}
})
@@ -341,7 +350,9 @@
let params = {
role_id: this.role_id,
};
this.dataTreeLoading = true;
const res = await this.$API.system.role.roleMenu.post(params);
this.dataTreeLoading = false;
this.menu.list = res.data;
}
},
@@ -350,7 +361,9 @@
let params = {
role_id: this.role_id,
};
this.roleUserLoading = true;
const res = await this.$API.system.role.roleUser.post(params);
this.roleUserLoading = false;
this.roleUser.list = res.data;
this.userCheckList = res.data;
if(res.data && res.data.length>0){
+1 -1
View File
@@ -45,7 +45,7 @@ export default {
},
watch:{
data(val){
if(val && val.length>0){
if(val){
val.forEach(item=>{
item.checked = false;
})