From 63c8c3a2920cc88f465e3139fe8bce19c412dfa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=AF=BB=E6=AC=A2?= Date: Fri, 2 Feb 2024 11:45:19 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E4=BC=98=E5=8C=96=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=BF=94=E5=9B=9E=E7=BB=93=E6=9E=9C=EF=BC=8C?= =?UTF-8?q?=E5=8F=AA=E8=BF=94=E5=9B=9E=E9=A1=B6=E7=BA=A7=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E7=9A=84rank=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- model/vo/menu/menu.go | 10 +++++----- service/menu/utils.go | 5 ++++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/model/vo/menu/menu.go b/model/vo/menu/menu.go index a3c80c7..e6f0b45 100644 --- a/model/vo/menu/menu.go +++ b/model/vo/menu/menu.go @@ -13,9 +13,9 @@ type Item struct { // ItemMeta // @description: 菜单元数据 type ItemMeta struct { - Title string `json:"title"` // 标题 - Icon string `json:"icon"` // 图标 - Rank int `json:"rank"` // 排序 - Roles []string `json:"roles"` // 当前菜单所属的角色代码 - Auths []string `json:"auths"` // 当前菜单包含的按钮,如果传入了用户Id,返回的将会是权限内所有的按钮 + Title string `json:"title"` // 标题 + Icon string `json:"icon"` // 图标 + Rank int `json:"rank,omitempty"` // 排序 + Roles []string `json:"roles"` // 当前菜单所属的角色代码 + Auths []string `json:"auths"` // 当前菜单包含的按钮,如果传入了用户Id,返回的将会是权限内所有的按钮 } diff --git a/service/menu/utils.go b/service/menu/utils.go index c5e82a9..f07c444 100644 --- a/service/menu/utils.go +++ b/service/menu/utils.go @@ -30,7 +30,10 @@ func toTree(records []menuRecordItem, pid string) (tree []menu.Item) { var meta menu.ItemMeta meta.Title = record.Title meta.Icon = record.Icon - meta.Rank = record.Sort + // rank只有顶级菜单才返回rank值 + if record.ParentId == nil || *record.ParentId == "" { + meta.Rank = record.Sort + } if record.RoleCode != "" { meta.Roles = strings.Split(record.RoleCode, ",") }