修改bug
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m54s

This commit is contained in:
sexygoat
2026-04-09 13:48:11 +08:00
parent cc9d2a85a2
commit cb3ba06106
26 changed files with 987 additions and 1984 deletions

View File

@@ -830,19 +830,8 @@
}
}
// 检查节点是否有子节点(子菜单或按钮)
const hasChildren = (data: any): boolean => {
return data.children && data.children.length > 0
}
// 移除单个权限
const removeSinglePermission = async (data: any) => {
// 检查是否有子菜单或按钮
if (hasChildren(data)) {
ElMessage.warning('该权限下还有子菜单或按钮,请先移除子项后再移除此权限')
return
}
try {
// 保存右侧树的展开节点
const expandedKeys = rightTreeRef.value?.store?.nodesMap
@@ -851,10 +840,16 @@
.map((key) => Number(key))
: []
await RoleService.removePermission(currentRoleId.value, data.id)
// 获取要移除的所有权限ID包括当前节点和所有子节点
const idsToRemove = [data.id, ...getAllChildrenIds(data.id)]
// 更新已选权限列表
selectedPermissions.value = selectedPermissions.value.filter((id) => id !== data.id)
// 调用API批量移除权限传递所有需要移除的权限ID
await RoleService.removePermissions(currentRoleId.value, idsToRemove)
// 更新已选权限列表(移除当前节点及其所有子节点)
selectedPermissions.value = selectedPermissions.value.filter(
(id) => !idsToRemove.includes(id)
)
// 重新构建左右两侧树
const fullTreeData = buildTreeData(originalPermissionTree.value)