角色管理

This commit is contained in:
2023-06-15 10:37:52 +08:00
parent 706ea1efe0
commit c9bccf8a40
2 changed files with 29 additions and 13 deletions

View File

@@ -89,9 +89,10 @@ export const sysRoleEdit = (roleId, name, remark) => post('api/sysRole/edit', {
// 1.4 删除角色 // 1.4 删除角色
export const sysRoleDelete = (roleId) => post('api/sysRole/delete', roleId) export const sysRoleDelete = (roleId) => post('api/sysRole/delete', roleId)
// 1.5 保存菜单 // 1.5 保存菜单
export const sysRoleMenu = (roleId, menus) => post('api/sysRole/menu', { export const sysRoleMenu = (roleId, menus, menus1) => post('api/sysRole/menu', {
roleId: roleId, roleId: roleId,
menus: menus menus: menus,
menus1: menus1
}) })
// 1.6 查询菜单树 // 1.6 查询菜单树
export const menuQuery = (roleId, menus) => post('api/sysRole/menuQuery', { export const menuQuery = (roleId, menus) => post('api/sysRole/menuQuery', {

View File

@@ -51,6 +51,17 @@
</div> </div>
</div> </div>
</div> </div>
<!-- <div class="row_2">
<div v-for="e in tree" :key="e.menuId">
<div>{{e.title+e.menuId}}</div>
<div v-for="el in e.children" :key="el.menuId">
<div>{{el.title+el.menuId}}</div>
<div v-for="ell in el.children" :key="ell.menuId">
<div>{{ell.title+ell.menuId}}</div>
</div>
</div>
</div>
</div> -->
<jxDialog <jxDialog
ref="child" ref="child"
:title="title" :title="title"
@@ -241,10 +252,10 @@ export default {
this.$refs.child.disabled = false this.$refs.child.disabled = false
} }
}, },
async _sysRoleMenu (arr) { async _sysRoleMenu (arr, arr1) {
this.disabled = true this.disabled = true
try { try {
let res = await sysRoleMenu(this.pkId, arr) let res = await sysRoleMenu(this.pkId, arr, arr1)
if (res.code === '1') { if (res.code === '1') {
this.toast(res.desc) this.toast(res.desc)
this.pkId = '' this.pkId = ''
@@ -265,15 +276,22 @@ export default {
if (!this.pkId) { if (!this.pkId) {
return return
} }
let arr = this.$refs.tree.getCheckedKeys() let arr1 = this.$refs.tree.getCheckedKeys()
if (arr.length === 0) { let arr2 = this.$refs.tree.getHalfCheckedKeys()
arr2.map((e, i) => {
if (e === this.tree[0].menuId) {
arr2.splice(i, 1)
}
})
if (arr1.length === 0) {
return return
} }
let arr1 = [] let arr3 = arr2.concat(arr1)
arr.map(el => { let arr4 = []
arr1.push({menuId: el}) arr3.map(el => {
arr4.push({menuId: el})
}) })
this._sysRoleMenu(arr1) this._sysRoleMenu(arr4, arr1)
}, },
toCheck (e) { toCheck (e) {
this.pkId = this.pkId === e.roleId ? '' : e.roleId this.pkId = this.pkId === e.roleId ? '' : e.roleId
@@ -283,12 +301,9 @@ export default {
}) })
if (this.pkId === e.roleId) { if (this.pkId === e.roleId) {
this.checkedKeys = e.menus this.checkedKeys = e.menus
console.log(99)
} else { } else {
this.checkedKeys = [] this.checkedKeys = []
console.log(100)
} }
console.log(this.checkedKeys)
} }
} }
} }