export const menuTree = [ { id: 'system', name: '系统管理', path: '/system', icon: 'SettingOutlined', type: 'menu', children: [ { id: 'sys_user', name: '用户管理', path: '/system/user', component: 'system/user/UserList', type: 'menu', buttons: [ { code: 'user:add', name: '新增' }, { code: 'user:edit', name: '修改' }, { code: 'user:delete', name: '删除' }, { code: 'user:lock', name: '锁定' }, { code: 'user:unlock', name: '解锁' }, { code: 'user:resetPwd', name: '密码重置' } ] }, { id: 'sys_role', name: '角色管理', path: '/system/role', component: 'system/role/RoleList', type: 'menu', buttons: [ { code: 'role:add', name: '新增' }, { code: 'role:edit', name: '修改' }, { code: 'role:delete', name: '删除' } ] }, { id: 'sys_org', name: '机构管理', path: '/system/org', component: 'system/org/OrgList', type: 'menu', buttons: [ { code: 'org:add', name: '新增' }, { code: 'org:edit', name: '修改' }, { code: 'org:delete', name: '删除' } ] } ] } ] export function flattenButtons(tree) { const codes = [] function walk(nodes) { for (const n of nodes) { if (n.buttons) codes.push(...n.buttons.map((b) => b.code)) if (n.children) walk(n.children) } } walk(tree) return codes }