系统管理角色管理联调

master
wangmeng 3 months ago
parent f0cec44ed8
commit 389abd636f
  1. 5
      src/api/system/menu.js
  2. 4
      src/store/modules/user.js
  3. 186
      src/views/authority/role.vue

@ -97,10 +97,11 @@ export const getTopMenu = () => request({
method: 'get' method: 'get'
}); });
export const getRoutes = (topMenuId) => request({ export const getRoutes = (roleId) => request({
url: '/smartpark/menu/routes', url: '/smartpark/menu/routes',
method: 'get', method: 'get',
params: { params: {
topMenuId, roleId,
} }
}); });

@ -254,9 +254,8 @@ const user = {
}, },
//获取系统菜单 //获取系统菜单
GetMenu({ commit, dispatch }, topMenuId) { GetMenu({ commit, dispatch }, topMenuId) {
console.log("")
return new Promise(resolve => { return new Promise(resolve => {
getRoutes(topMenuId).then((res) => { getRoutes().then((res) => {
const data = res.data.result const data = res.data.result
let menu = deepClone(data); let menu = deepClone(data);
menu.forEach(ele => { menu.forEach(ele => {
@ -267,6 +266,7 @@ const user = {
dispatch('GetButtons'); dispatch('GetButtons');
resolve(menu) resolve(menu)
}) })
}) })
}, },
//获取系统按钮 //获取系统按钮

@ -20,7 +20,7 @@
@on-load="onLoad" @on-load="onLoad"
> >
<template slot="menuLeft"> <template slot="menuLeft">
<el-button <!-- <el-button
type="danger" type="danger"
size="small" size="small"
icon="el-icon-delete" icon="el-icon-delete"
@ -28,7 +28,7 @@
plain plain
@click="handleDelete" @click="handleDelete"
> >
</el-button> </el-button> -->
<el-button <el-button
size="small" size="small"
icon="el-icon-setting" icon="el-icon-setting"
@ -152,36 +152,39 @@ export default {
border: true, border: true,
index: true, index: true,
selection: true, selection: true,
viewBtn: true, viewBtn: false,
addBtn: false,
editBtn: false, //
delBtn: false, //
labelWidth: 120, labelWidth: 120,
searchLabelWidth: 120, searchLabelWidth: 120,
menuWidth: 350, menuWidth: 350,
dialogWidth: 600, dialogWidth: 600,
dialogClickModal: false, dialogClickModal: false,
column: [ column: [
{ // {
label: "上级角色", // label: "",
prop: "parentId", // prop: "parentId",
dicData: [], // dicData: [],
type: "tree", // type: "tree",
hide: true, // hide: true,
span: 24, // span: 24,
headerAlign: "center", // headerAlign: "center",
align: "center", // align: "center",
props: { // props: {
label: "title", // label: "title",
}, // },
rules: [ // rules: [
{ // {
required: false, // required: false,
message: "请选择上级角色", // message: "",
trigger: "click", // trigger: "click",
}, // },
], // ],
}, // },
{ {
label: "角色名称", label: "角色名称",
prop: "roleName", prop: "name",
search: true, search: true,
headerAlign: "center", headerAlign: "center",
align: "center", align: "center",
@ -194,36 +197,81 @@ export default {
}, },
], ],
}, },
// {
// label: "",
// prop: "tenantId",
// type: "tree",
// dicUrl: "/api/blade-system/tenant/select",
// addDisplay: false,
// editDisplay: false,
// headerAlign: "center",
// align: "center",
// viewDisplay: website.tenantMode,
// span: 24,
// props: {
// label: "tenantName",
// value: "tenantId",
// },
// hide: !website.tenantMode,
// search: website.tenantMode,
// rules: [
// {
// required: true,
// message: "",
// trigger: "click",
// },
// ],
// },
// {
// label: "",
// labelTip:
// ",",
// prop: "roleAlias",
// search: true,
// span: 24,
// headerAlign: "center",
// align: "center",
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
// {
// label: "",
// labelTip: ",",
// prop: "currentAlias",
// type: "radio",
// dicData: [],
// headerAlign: "center",
// align: "center",
// props: {
// label: "roleName",
// value: "roleAlias",
// },
// hide: true,
// span: 24,
// },
// {
// label: "",
// prop: "sort",
// type: "number",
// headerAlign: "center",
// align: "center",
// span: 24,
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
{ {
label: "所属租户", label: "角色编码",
prop: "tenantId", prop: "code",
type: "tree",
dicUrl: "/api/blade-system/tenant/select",
addDisplay: false,
editDisplay: false,
headerAlign: "center",
align: "center",
viewDisplay: website.tenantMode,
span: 24,
props: {
label: "tenantName",
value: "tenantId",
},
hide: !website.tenantMode,
search: website.tenantMode,
rules: [
{
required: true,
message: "请输入所属租户",
trigger: "click",
},
],
},
{
label: "角色别名",
labelTip:
"用于权限校验与标注的属性,可手动录入也可点击现有别名快速录入",
prop: "roleAlias",
search: true, search: true,
span: 24, span: 24,
headerAlign: "center", headerAlign: "center",
@ -231,37 +279,7 @@ export default {
rules: [ rules: [
{ {
required: true, required: true,
message: "请输入角色别名", message: "请输入角色编码",
trigger: "blur",
},
],
},
{
label: "现有别名",
labelTip: "当前系统已存在的角色别名,点击可快速录入",
prop: "currentAlias",
type: "radio",
dicData: [],
headerAlign: "center",
align: "center",
props: {
label: "roleName",
value: "roleAlias",
},
hide: true,
span: 24,
},
{
label: "角色排序",
prop: "sort",
type: "number",
headerAlign: "center",
align: "center",
span: 24,
rules: [
{
required: true,
message: "请输入角色排序",
trigger: "blur", trigger: "blur",
}, },
], ],

Loading…
Cancel
Save