From 75512f4c0a93014e15c7d00f05cf6123bc4a7d3b Mon Sep 17 00:00:00 2001 From: RuoYi Date: Sat, 21 Mar 2026 12:42:45 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8F=9C=E5=8D=95=E7=AE=A1=E7=90=86=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=89=B9=E9=87=8F=E4=BF=9D=E5=AD=98=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/menu.ts | 11 ++++++- src/types/api/system/menu.ts | 8 +++++ src/views/system/menu/index.vue | 55 +++++++++++++++++++++++++++++++-- 3 files changed, 71 insertions(+), 3 deletions(-) diff --git a/src/api/system/menu.ts b/src/api/system/menu.ts index a6d0dc5..ad44cda 100644 --- a/src/api/system/menu.ts +++ b/src/api/system/menu.ts @@ -1,5 +1,5 @@ import request from '@/utils/request' -import type { MenuQueryParams, SysMenu, TreeSelect, AjaxResult, RoleMenuTreeselectResult } from '@/types' +import type { MenuQueryParams, SysMenu, MenuSortParams, TreeSelect, AjaxResult, RoleMenuTreeselectResult } from '@/types' // 查询菜单列表 export function listMenu(query?: MenuQueryParams): Promise> { @@ -52,6 +52,15 @@ export function updateMenu(data: SysMenu): Promise { }) } +// 保存菜单排序 +export function updateMenuSort(data: MenuSortParams): Promise { + return request({ + url: '/system/menu/updateSort', + method: 'put', + data: data + }) +} + // 删除菜单 export function delMenu(menuId: number): Promise { return request({ diff --git a/src/types/api/system/menu.ts b/src/types/api/system/menu.ts index 6a4cbb6..adba54f 100644 --- a/src/types/api/system/menu.ts +++ b/src/types/api/system/menu.ts @@ -40,6 +40,14 @@ export interface SysMenu extends BaseEntity { visible?: '0' | '1'; /** 状态(0正常 1停用) */ status?: '0' | '1'; + /** 子菜单 */ + children?: SysMenu[]; +} + +/** 保存菜单排序参数 */ +export interface MenuSortParams { + menuIds: string + orderNums: string } export interface RoleMenuTreeselectResult extends AjaxResult { diff --git a/src/views/system/menu/index.vue b/src/views/system/menu/index.vue index ef45a4d..d10d104 100644 --- a/src/views/system/menu/index.vue +++ b/src/views/system/menu/index.vue @@ -36,6 +36,15 @@ v-hasPermi="['system:menu:add']" >新增 + + 保存排序 + - + + + @@ -289,7 +302,7 @@