menu.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. import request from '@/utils/request'
  2. /**
  3. * 菜单管理 API
  4. * 全部使用 POST 方法,路径前缀 /api/admin/menu
  5. */
  6. // 获取全量菜单树
  7. export function getMenuTree() {
  8. return request({
  9. url: '/api/admin/menu/tree',
  10. method: 'post'
  11. })
  12. }
  13. // 获取指定角色的已授权菜单 ID 数组
  14. export function getRoleMenus(params) {
  15. return request({
  16. url: '/api/admin/menu/role-menus',
  17. method: 'post',
  18. data: params // { role }
  19. })
  20. }
  21. // 保存角色授权菜单(覆盖式)
  22. export function saveRoleMenus(data) {
  23. return request({
  24. url: '/api/admin/menu/save-role-menus',
  25. method: 'post',
  26. data // { role, menuIds: [...] }
  27. })
  28. }
  29. // 获取当前用户可见菜单树
  30. export function getUserMenus() {
  31. return request({
  32. url: '/api/admin/menu/user-menus',
  33. method: 'post'
  34. })
  35. }
  36. // 创建菜单
  37. export function createMenu(data) {
  38. return request({
  39. url: '/api/admin/menu/create',
  40. method: 'post',
  41. data // { parentId, title, label, path, icon, perm, sort, visible }
  42. })
  43. }
  44. // 更新菜单
  45. export function updateMenu(data) {
  46. return request({
  47. url: '/api/admin/menu/update',
  48. method: 'post',
  49. data // 含 id
  50. })
  51. }
  52. // 删除菜单
  53. export function deleteMenu(data) {
  54. return request({
  55. url: '/api/admin/menu/delete',
  56. method: 'post',
  57. data // { id }
  58. })
  59. }
  60. // 调整菜单排序 (up/down)
  61. export function moveMenu(data) {
  62. return request({
  63. url: '/api/admin/menu/move',
  64. method: 'post',
  65. data // { id, direction }
  66. })
  67. }