|
|
@@ -96,7 +96,10 @@ export function getRoleMenusMethod(data?: Partial<RoleModel>) {
|
|
|
hitSource: 'edit-role',
|
|
|
meta: { unconvert: true },
|
|
|
transform(data) {
|
|
|
- return { menus: data.menus, selected: Array.isArray(data.checkedKeys) ? data.checkedKeys : [] };
|
|
|
+ const flat = (menus?: RoleMenu[]): RoleMenu[] => Array.isArray(menus) ? menus.flatMap(item => [item, ...flat(item.children)]) : [];
|
|
|
+ const menus = flat(data.menus);
|
|
|
+ const selected = Array.isArray(data.checkedKeys) ? data.checkedKeys.filter(key => !menus.find(menu => menu.id === key)?.children) : [];
|
|
|
+ return { menus: data.menus, selected };
|
|
|
},
|
|
|
},
|
|
|
) : request.Get<{ selected: string[], menus: RoleMenu[] }, RoleMenu[]>(`/system/menu/treeselect`, {
|