curl --location --request GET 'http://127.0.0.1/admin/v1/menu/list' \
--header 'Authorization: Bearer <token>'{
"code": 0,
"msg": "OK",
"data": [
{
"id": 1,
"icon": "ep:menu",
"title": "首页",
"name": "Home",
"code": "",
"path": "",
"is_external_links": 0,
"is_auth": 0,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 2,
"type_name": "菜单",
"pid": 0,
"children_num": 0,
"description": "",
"component": "home/index.vue",
"redirect": "",
"full_path": "/",
"created_at": "2024-09-27 13:36:50",
"updated_at": "2025-11-15 14:36:40"
},
{
"id": 2,
"icon": "ant-design:lock-outlined",
"title": "权限管理",
"name": "Permission",
"code": "",
"path": "permission",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 99,
"type": 1,
"type_name": "目录",
"pid": 0,
"children_num": 0,
"description": "",
"component": "",
"redirect": "AdminUserList",
"full_path": "/permission",
"created_at": "2025-04-16 15:36:33",
"updated_at": "2025-04-22 18:16:25",
"children": [
{
"id": 7,
"icon": "ep:user",
"title": "管理员",
"name": "AdminUserList",
"code": "",
"path": "admin-user-list",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 120,
"type": 2,
"type_name": "菜单",
"pid": 2,
"children_num": 5,
"description": "",
"component": "permission/adminUser.vue",
"redirect": "",
"full_path": "/permission/admin-user-list",
"created_at": "2025-04-19 11:19:36",
"updated_at": "2025-11-25 17:20:23",
"children": [
{
"id": 34,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "adminUser:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 7,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:20:23",
"updated_at": "2025-11-25 17:20:23"
},
{
"id": 13,
"icon": "ant-design:delete-outlined",
"title": "删除",
"name": "",
"code": "adminUser:delete",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 7,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:24:34"
},
{
"id": 12,
"icon": "ant-design:user-switch-outlined",
"title": "绑定角色",
"name": "",
"code": "adminUser:bindRole",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 7,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:20:53"
},
{
"id": 11,
"icon": "ant-design:plus-outlined",
"title": "新增管理员",
"name": "",
"code": "adminUser:add",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 7,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:22:41"
},
{
"id": 10,
"icon": "ant-design:edit-filled",
"title": "编辑",
"name": "",
"code": "adminUser:update",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 7,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-13 16:45:19",
"updated_at": "2025-11-18 17:14:25"
}
]
},
{
"id": 9,
"icon": "tdesign:tree-square-dot",
"title": "部门",
"name": "DepartmentList",
"code": "",
"path": "department-list",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 115,
"type": 2,
"type_name": "菜单",
"pid": 2,
"children_num": 6,
"description": "",
"component": "permission/department.vue",
"redirect": "",
"full_path": "/permission/department-list",
"created_at": "2025-04-21 16:51:22",
"updated_at": "2025-11-25 17:21:30",
"children": [
{
"id": 35,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "department:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:21:22",
"updated_at": "2025-11-25 17:21:22"
},
{
"id": 25,
"icon": "ant-design:delete-outlined",
"title": "删除",
"name": "",
"code": "department:delete",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:26:52"
},
{
"id": 24,
"icon": "ant-design:user-switch-outlined",
"title": "绑定角色",
"name": "",
"code": "department:bindRole",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:27:57"
},
{
"id": 23,
"icon": "ant-design:edit-filled",
"title": "编辑",
"name": "",
"code": "department:update",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:33:40"
},
{
"id": 22,
"icon": "ant-design:plus-circle-outlined",
"title": "新增",
"name": "",
"code": "department:addChild",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:29:07"
},
{
"id": 21,
"icon": "ant-design:plus-outlined",
"title": "新增部门",
"name": "",
"code": "department:add",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 9,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:29:43"
}
]
},
{
"id": 8,
"icon": "ant-design:usergroup-add-outlined",
"title": "角色",
"name": "RoleList",
"code": "",
"path": "role-list",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 115,
"type": 2,
"type_name": "菜单",
"pid": 2,
"children_num": 5,
"description": "",
"component": "permission/role.vue",
"redirect": "",
"full_path": "/permission/role-list",
"created_at": "2025-04-21 16:51:22",
"updated_at": "2025-11-25 17:22:21",
"children": [
{
"id": 36,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "role:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 8,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:22:13",
"updated_at": "2025-11-25 17:22:13"
},
{
"id": 28,
"icon": "ant-design:plus-circle-outlined",
"title": "新增",
"name": "",
"code": "role:addChild",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 8,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-17 17:46:21",
"updated_at": "2025-11-18 17:41:45"
},
{
"id": 20,
"icon": "ant-design:delete-outlined",
"title": "删除",
"name": "",
"code": "role:delete",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 8,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:32:12"
},
{
"id": 19,
"icon": "ant-design:edit-filled",
"title": "编辑",
"name": "",
"code": "role:update",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 8,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:36:22"
},
{
"id": 18,
"icon": "ant-design:plus-outlined",
"title": "新增角色",
"name": "",
"code": "role:add",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 8,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:36:08"
}
]
},
{
"id": 4,
"icon": "ant-design:menu-outlined",
"title": "菜单",
"name": "MenuList",
"code": "",
"path": "menu-list",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 105,
"type": 2,
"type_name": "菜单",
"pid": 2,
"children_num": 5,
"description": "",
"component": "permission/menuList.vue",
"redirect": "",
"full_path": "/permission/menu-list",
"created_at": "2025-04-16 15:45:31",
"updated_at": "2025-11-25 17:23:44",
"children": [
{
"id": 37,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "menu:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 4,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:23:02",
"updated_at": "2025-11-25 17:23:02"
},
{
"id": 17,
"icon": "ant-design:delete-outlined",
"title": "删除",
"name": "",
"code": "menu:delete",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 4,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:37:02"
},
{
"id": 16,
"icon": "ant-design:edit-filled",
"title": "编辑",
"name": "",
"code": "menu:update",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 4,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:38:12"
},
{
"id": 15,
"icon": "ant-design:plus-circle-outlined",
"title": "新增下级",
"name": "",
"code": "menu:addChild",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 4,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:39:03"
},
{
"id": 14,
"icon": "ant-design:plus-outlined",
"title": "新增菜单",
"name": "",
"code": "menu:add",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 4,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:39:20"
}
]
},
{
"id": 3,
"icon": "ant-design:api-outlined",
"title": "接口",
"name": "PermissionList",
"code": "",
"path": "list",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 2,
"type_name": "菜单",
"pid": 2,
"children_num": 2,
"description": "",
"component": "permission/api.vue",
"redirect": "",
"full_path": "/permission/list",
"created_at": "2025-04-16 15:41:54",
"updated_at": "2025-11-25 17:23:53",
"children": [
{
"id": 38,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "api:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 3,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:23:35",
"updated_at": "2025-11-25 17:23:35"
},
{
"id": 26,
"icon": "ant-design:edit-filled",
"title": "编辑",
"name": "",
"code": "api:update",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 3,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-15 10:06:52",
"updated_at": "2025-11-18 17:39:39"
}
]
}
]
},
{
"id": 29,
"icon": "ep:tickets",
"title": "日志管理",
"name": "Log",
"code": "",
"path": "log",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 90,
"type": 1,
"type_name": "目录",
"pid": 0,
"children_num": 2,
"description": "",
"component": "",
"redirect": "RequestLog",
"full_path": "/log",
"created_at": "2025-11-20 16:16:47",
"updated_at": "2025-11-20 16:17:04",
"children": [
{
"id": 31,
"icon": "ep:document",
"title": "管理员登录日志",
"name": "AdminLoginLog",
"code": "",
"path": "admin-login-log",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 2,
"type_name": "菜单",
"pid": 29,
"children_num": 2,
"description": "",
"component": "log/adminLogin.vue",
"redirect": "",
"full_path": "/log/admin-login-log",
"created_at": "2025-11-20 16:16:47",
"updated_at": "2025-11-25 17:24:30",
"children": [
{
"id": 39,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "adminLoginLog:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 31,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:24:20",
"updated_at": "2025-11-25 17:24:20"
},
{
"id": 32,
"icon": "ep:document",
"title": "详情",
"name": "",
"code": "adminLoginLog:detail",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 31,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-22 11:48:10",
"updated_at": "2025-11-22 11:48:10"
}
]
},
{
"id": 30,
"icon": "ep:document",
"title": "请求日志",
"name": "RequestLog",
"code": "",
"path": "request-log",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 2,
"type_name": "菜单",
"pid": 29,
"children_num": 2,
"description": "",
"component": "log/request.vue",
"redirect": "",
"full_path": "/log/request-log",
"created_at": "2025-11-20 16:14:39",
"updated_at": "2025-11-25 17:25:13",
"children": [
{
"id": 40,
"icon": "ant-design:search-outlined",
"title": "列表",
"name": "",
"code": "requestLog:list",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 30,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-25 17:25:04",
"updated_at": "2025-11-25 17:25:04"
},
{
"id": 33,
"icon": "ep:document",
"title": "详情",
"name": "",
"code": "requestLog:detail",
"path": "",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 100,
"type": 3,
"type_name": "按钮",
"pid": 30,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "",
"created_at": "2025-11-22 11:48:44",
"updated_at": "2025-11-22 11:48:44"
}
]
}
]
},
{
"id": 5,
"icon": "ix:about",
"title": "关于",
"name": "About",
"code": "",
"path": "/about",
"is_external_links": 0,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 90,
"type": 2,
"type_name": "菜单",
"pid": 0,
"children_num": 0,
"description": "",
"component": "about/index.vue",
"redirect": "",
"full_path": "/about",
"created_at": "2025-04-16 16:47:58",
"updated_at": "2025-04-23 15:01:05"
},
{
"id": 6,
"icon": "ix:about",
"title": "CSDN",
"name": "CSDN",
"code": "",
"path": "https://blog.csdn.net/u010324331",
"is_external_links": 1,
"is_auth": 1,
"status": 1,
"is_show": 1,
"is_new_window": 0,
"sort": 80,
"type": 2,
"type_name": "菜单",
"pid": 0,
"children_num": 0,
"description": "",
"component": "",
"redirect": "",
"full_path": "https://blog.csdn.net/u010324331",
"created_at": "2025-04-16 16:51:17",
"updated_at": "2025-04-18 18:08:51"
}
],
"cost": "53.492084ms",
"request_id": "0d9a3d53-5360-4364-92d1-7a2a33a6bad1"
}