64 lines
1.6 KiB
JavaScript
64 lines
1.6 KiB
JavaScript
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:changePwd', 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
|
|
}
|