refactor(projects): 页面布局调整为rdms风格
This commit is contained in:
@@ -37,6 +37,11 @@ const treeProps = {
|
||||
label: 'name'
|
||||
} as const;
|
||||
|
||||
function applyCheckedKeys(keys: number[]) {
|
||||
checkedKeys.value = [...keys];
|
||||
treeRef.value?.setCheckedKeys(keys);
|
||||
}
|
||||
|
||||
function getTagType(type: Api.SystemManage.MenuType): UI.ThemeColor {
|
||||
const tagMap: Record<Api.SystemManage.MenuType, UI.ThemeColor> = {
|
||||
1: 'info',
|
||||
@@ -83,8 +88,7 @@ function collectExpandableNodeIds(nodes: Api.SystemManage.MenuSimple[]) {
|
||||
|
||||
async function loadRoleMenus() {
|
||||
if (!props.role) {
|
||||
checkedKeys.value = [];
|
||||
treeRef.value?.setCheckedKeys([]);
|
||||
applyCheckedKeys([]);
|
||||
treeRef.value?.filter(filterKeyword.value);
|
||||
return;
|
||||
}
|
||||
@@ -96,14 +100,14 @@ async function loadRoleMenus() {
|
||||
permissionLoading.value = false;
|
||||
|
||||
if (error) {
|
||||
checkedKeys.value = [];
|
||||
treeRef.value?.setCheckedKeys([]);
|
||||
applyCheckedKeys([]);
|
||||
treeRef.value?.filter(filterKeyword.value);
|
||||
return;
|
||||
}
|
||||
|
||||
checkedKeys.value = data;
|
||||
treeRef.value?.setCheckedKeys(data);
|
||||
// Role-menu bindings are exact IDs from the backend, so tree echo must not
|
||||
// cascade parent checks down to unrelated descendants.
|
||||
applyCheckedKeys(data);
|
||||
treeRef.value?.filter(filterKeyword.value);
|
||||
}
|
||||
|
||||
@@ -131,7 +135,7 @@ async function handleSave() {
|
||||
return;
|
||||
}
|
||||
|
||||
checkedKeys.value = menuIds;
|
||||
checkedKeys.value = [...menuIds];
|
||||
|
||||
window.$message?.success($t('common.modifySuccess'));
|
||||
emit('saved');
|
||||
@@ -153,7 +157,7 @@ watch(
|
||||
() => props.menuTree.length,
|
||||
value => {
|
||||
if (value && props.role) {
|
||||
treeRef.value?.setCheckedKeys(checkedKeys.value);
|
||||
applyCheckedKeys(checkedKeys.value);
|
||||
treeRef.value?.filter(filterKeyword.value);
|
||||
}
|
||||
}
|
||||
@@ -203,6 +207,7 @@ watch(
|
||||
ref="treeRef"
|
||||
node-key="id"
|
||||
show-checkbox
|
||||
check-strictly
|
||||
:default-expanded-keys="defaultExpandedKeys"
|
||||
:data="menuTree"
|
||||
:props="treeProps"
|
||||
|
||||
Reference in New Issue
Block a user