优化多角色数据权限匹配规则
This commit is contained in:
@ -25,22 +25,6 @@ export function getDept(deptId) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询部门下拉树结构
|
|
||||||
export function treeselect() {
|
|
||||||
return request({
|
|
||||||
url: '/system/dept/treeselect',
|
|
||||||
method: 'get'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 根据角色ID查询部门树结构
|
|
||||||
export function roleDeptTreeselect(roleId) {
|
|
||||||
return request({
|
|
||||||
url: '/system/dept/roleDeptTreeselect/' + roleId,
|
|
||||||
method: 'get'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增部门
|
// 新增部门
|
||||||
export function addDept(data) {
|
export function addDept(data) {
|
||||||
return request({
|
return request({
|
||||||
|
@ -109,3 +109,11 @@ export function authUserSelectAll(data) {
|
|||||||
params: data
|
params: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 根据角色ID查询部门树结构
|
||||||
|
export function deptTreeSelect(roleId) {
|
||||||
|
return request({
|
||||||
|
url: '/system/role/deptTree/' + roleId,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
@ -125,3 +125,11 @@ export function updateAuthRole(data) {
|
|||||||
params: data
|
params: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 查询部门下拉树结构
|
||||||
|
export function deptTreeSelect() {
|
||||||
|
return request({
|
||||||
|
url: '/system/user/deptTree',
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
@ -262,9 +262,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup name="Role">
|
<script setup name="Role">
|
||||||
import { addRole, changeRoleStatus, dataScope, delRole, getRole, listRole, updateRole } from "@/api/system/role";
|
import { addRole, changeRoleStatus, dataScope, delRole, getRole, listRole, updateRole, deptTreeSelect } from "@/api/system/role";
|
||||||
import { roleMenuTreeselect, treeselect as menuTreeselect } from "@/api/system/menu";
|
import { roleMenuTreeselect, treeselect as menuTreeselect } from "@/api/system/menu";
|
||||||
import { treeselect as deptTreeselect, roleDeptTreeselect } from "@/api/system/dept";
|
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
@ -462,8 +461,8 @@ function getRoleMenuTreeselect(roleId) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
/** 根据角色ID查询部门树结构 */
|
/** 根据角色ID查询部门树结构 */
|
||||||
function getRoleDeptTreeselect(roleId) {
|
function getDeptTree(roleId) {
|
||||||
return roleDeptTreeselect(roleId).then(response => {
|
return deptTreeSelect(roleId).then(response => {
|
||||||
deptOptions.value = response.depts;
|
deptOptions.value = response.depts;
|
||||||
return response;
|
return response;
|
||||||
});
|
});
|
||||||
@ -543,12 +542,12 @@ function dataScopeSelectChange(value) {
|
|||||||
/** 分配数据权限操作 */
|
/** 分配数据权限操作 */
|
||||||
function handleDataScope(row) {
|
function handleDataScope(row) {
|
||||||
reset();
|
reset();
|
||||||
const roleDeptTreeselect = getRoleDeptTreeselect(row.roleId);
|
const deptTreeSelect = getDeptTree(row.roleId);
|
||||||
getRole(row.roleId).then(response => {
|
getRole(row.roleId).then(response => {
|
||||||
form.value = response.data;
|
form.value = response.data;
|
||||||
openDataScope.value = true;
|
openDataScope.value = true;
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
roleDeptTreeselect.then(res => {
|
deptTreeSelect.then(res => {
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
if (deptRef.value) {
|
if (deptRef.value) {
|
||||||
deptRef.value.setCheckedKeys(res.checkedKeys);
|
deptRef.value.setCheckedKeys(res.checkedKeys);
|
||||||
|
@ -350,8 +350,7 @@
|
|||||||
|
|
||||||
<script setup name="User">
|
<script setup name="User">
|
||||||
import { getToken } from "@/utils/auth";
|
import { getToken } from "@/utils/auth";
|
||||||
import { treeselect } from "@/api/system/dept";
|
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser, deptTreeSelect } from "@/api/system/user";
|
||||||
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser } from "@/api/system/user";
|
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
@ -429,8 +428,8 @@ watch(deptName, val => {
|
|||||||
proxy.$refs["deptTreeRef"].filter(val);
|
proxy.$refs["deptTreeRef"].filter(val);
|
||||||
});
|
});
|
||||||
/** 查询部门下拉树结构 */
|
/** 查询部门下拉树结构 */
|
||||||
function getTreeselect() {
|
function getDeptTree() {
|
||||||
treeselect().then(response => {
|
deptTreeSelect().then(response => {
|
||||||
deptOptions.value = response.data;
|
deptOptions.value = response.data;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@ -550,15 +549,6 @@ const handleFileSuccess = (response, file, fileList) => {
|
|||||||
function submitFileForm() {
|
function submitFileForm() {
|
||||||
proxy.$refs["uploadRef"].submit();
|
proxy.$refs["uploadRef"].submit();
|
||||||
};
|
};
|
||||||
/** 初始化部门数据 */
|
|
||||||
function initTreeData() {
|
|
||||||
// 判断部门的数据是否存在,存在不获取,不存在则获取
|
|
||||||
if (deptOptions.value === undefined) {
|
|
||||||
treeselect().then(response => {
|
|
||||||
deptOptions.value = response.data;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
||||||
/** 重置操作表单 */
|
/** 重置操作表单 */
|
||||||
function reset() {
|
function reset() {
|
||||||
form.value = {
|
form.value = {
|
||||||
@ -585,7 +575,6 @@ function cancel() {
|
|||||||
/** 新增按钮操作 */
|
/** 新增按钮操作 */
|
||||||
function handleAdd() {
|
function handleAdd() {
|
||||||
reset();
|
reset();
|
||||||
initTreeData();
|
|
||||||
getUser().then(response => {
|
getUser().then(response => {
|
||||||
postOptions.value = response.posts;
|
postOptions.value = response.posts;
|
||||||
roleOptions.value = response.roles;
|
roleOptions.value = response.roles;
|
||||||
@ -597,7 +586,6 @@ function handleAdd() {
|
|||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
function handleUpdate(row) {
|
function handleUpdate(row) {
|
||||||
reset();
|
reset();
|
||||||
initTreeData();
|
|
||||||
const userId = row.userId || ids.value;
|
const userId = row.userId || ids.value;
|
||||||
getUser(userId).then(response => {
|
getUser(userId).then(response => {
|
||||||
form.value = response.data;
|
form.value = response.data;
|
||||||
@ -631,6 +619,6 @@ function submitForm() {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
getTreeselect();
|
getDeptTree();
|
||||||
getList();
|
getList();
|
||||||
</script>
|
</script>
|
||||||
|
Reference in New Issue
Block a user