Skip to content

Commit 50cbce0

Browse files
authored
Merge pull request #1702 from crazyrunsnail/fix-model-idtype
多文件: 菜单parentId由string改成uint
2 parents f9974a8 + baa48a1 commit 50cbce0

File tree

9 files changed

+343
-445
lines changed

9 files changed

+343
-445
lines changed

server/model/system/request/sys_menu.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ type AddMenuAuthorityInfo struct {
1414
func DefaultMenu() []system.SysBaseMenu {
1515
return []system.SysBaseMenu{{
1616
GVA_MODEL: global.GVA_MODEL{ID: 1},
17-
ParentId: "0",
17+
ParentId: 0,
1818
Path: "dashboard",
1919
Name: "dashboard",
2020
Component: "view/dashboard/index.vue",

server/model/system/sys_authority_menu.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package system
22

33
type SysMenu struct {
44
SysBaseMenu
5-
MenuId string `json:"menuId" gorm:"comment:菜单ID"`
5+
MenuId uint `json:"menuId" gorm:"comment:菜单ID"`
66
AuthorityId uint `json:"-" gorm:"comment:角色ID"`
77
Children []SysMenu `json:"children" gorm:"-"`
88
Parameters []SysBaseMenuParameter `json:"parameters" gorm:"foreignKey:SysBaseMenuID;references:MenuId"`

server/model/system/sys_base_menu.go

+17-17
Original file line numberDiff line numberDiff line change
@@ -6,34 +6,34 @@ import (
66

77
type SysBaseMenu struct {
88
global.GVA_MODEL
9-
MenuLevel uint `json:"-"`
10-
ParentId string `json:"parentId" gorm:"comment:父菜单ID"` // 父菜单ID
11-
Path string `json:"path" gorm:"comment:路由path"` // 路由path
12-
Name string `json:"name" gorm:"comment:路由name"` // 路由name
13-
Hidden bool `json:"hidden" gorm:"comment:是否在列表隐藏"` // 是否在列表隐藏
14-
Component string `json:"component" gorm:"comment:对应前端文件路径"` // 对应前端文件路径
15-
Sort int `json:"sort" gorm:"comment:排序标记"` // 排序标记
16-
Meta `json:"meta" gorm:"embedded;comment:附加属性"` // 附加属性
17-
SysAuthoritys []SysAuthority `json:"authoritys" gorm:"many2many:sys_authority_menus;"`
18-
Children []SysBaseMenu `json:"children" gorm:"-"`
19-
Parameters []SysBaseMenuParameter `json:"parameters"`
20-
MenuBtn []SysBaseMenuBtn `json:"menuBtn"`
9+
MenuLevel uint `json:"-"`
10+
ParentId uint `json:"parentId" gorm:"comment:父菜单ID"` // 父菜单ID
11+
Path string `json:"path" gorm:"comment:路由path"` // 路由path
12+
Name string `json:"name" gorm:"comment:路由name"` // 路由name
13+
Hidden bool `json:"hidden" gorm:"comment:是否在列表隐藏"` // 是否在列表隐藏
14+
Component string `json:"component" gorm:"comment:对应前端文件路径"` // 对应前端文件路径
15+
Sort int `json:"sort" gorm:"comment:排序标记"` // 排序标记
16+
Meta `json:"meta" gorm:"embedded;comment:附加属性"` // 附加属性
17+
SysAuthoritys []SysAuthority `json:"authoritys" gorm:"many2many:sys_authority_menus;"`
18+
Children []SysBaseMenu `json:"children" gorm:"-"`
19+
Parameters []SysBaseMenuParameter `json:"parameters"`
20+
MenuBtn []SysBaseMenuBtn `json:"menuBtn"`
2121
}
2222

2323
type Meta struct {
2424
ActiveName string `json:"activeName" gorm:"comment:高亮菜单"`
25-
KeepAlive bool `json:"keepAlive" gorm:"comment:是否缓存"` // 是否缓存
25+
KeepAlive bool `json:"keepAlive" gorm:"comment:是否缓存"` // 是否缓存
2626
DefaultMenu bool `json:"defaultMenu" gorm:"comment:是否是基础路由(开发中)"` // 是否是基础路由(开发中)
27-
Title string `json:"title" gorm:"comment:菜单名"` // 菜单名
28-
Icon string `json:"icon" gorm:"comment:菜单图标"` // 菜单图标
29-
CloseTab bool `json:"closeTab" gorm:"comment:自动关闭tab"` // 自动关闭tab
27+
Title string `json:"title" gorm:"comment:菜单名"` // 菜单名
28+
Icon string `json:"icon" gorm:"comment:菜单图标"` // 菜单图标
29+
CloseTab bool `json:"closeTab" gorm:"comment:自动关闭tab"` // 自动关闭tab
3030
}
3131

3232
type SysBaseMenuParameter struct {
3333
global.GVA_MODEL
3434
SysBaseMenuID uint
3535
Type string `json:"type" gorm:"comment:地址栏携带参数为params还是query"` // 地址栏携带参数为params还是query
36-
Key string `json:"key" gorm:"comment:地址栏携带参数的key"` // 地址栏携带参数的key
36+
Key string `json:"key" gorm:"comment:地址栏携带参数的key"` // 地址栏携带参数的key
3737
Value string `json:"value" gorm:"comment:地址栏携带参数的值"` // 地址栏携带参数的值
3838
}
3939

server/plugin/plugin-tool/utils/check.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package utils
22

33
import (
44
"fmt"
5+
56
"github.com/flipped-aurora/gin-vue-admin/server/global"
67
"github.com/flipped-aurora/gin-vue-admin/server/model/system"
7-
"strconv"
88
)
99

1010
func RegisterApis(apis ...system.SysApi) {
@@ -37,13 +37,13 @@ func RegisterMenus(menus ...system.SysBaseMenu) {
3737
fmt.Println("插件已安装或存在同名菜单")
3838
return
3939
}
40-
parentMenu.ParentId = "0"
40+
parentMenu.ParentId = 0
4141
err := global.GVA_DB.Create(&parentMenu).Error
4242
if err != nil {
4343
fmt.Println(err)
4444
}
4545
for i := range otherMenus {
46-
pid := strconv.Itoa(int(parentMenu.ID))
46+
pid := parentMenu.ID
4747
otherMenus[i].ParentId = pid
4848
}
4949
err = global.GVA_DB.Create(&otherMenus).Error

server/service/system/sys_authority.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ func (authorityService *AuthorityService) CopyAuthority(copyInfo response.SysAut
7070
}
7171
var baseMenu []system.SysBaseMenu
7272
for _, v := range menus {
73-
intNum, _ := strconv.Atoi(v.MenuId)
73+
intNum := v.MenuId
7474
v.SysBaseMenu.ID = uint(intNum)
7575
baseMenu = append(baseMenu, v.SysBaseMenu)
7676
}

server/service/system/sys_auto_code.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -578,7 +578,7 @@ func (autoCodeService *AutoCodeService) AutoCreateMenu(a *system.AutoCodeStruct)
578578
if err == nil {
579579
return 0, errors.New("存在相同的菜单路由,请关闭自动创建菜单功能")
580580
}
581-
menu.ParentId = "0"
581+
menu.ParentId = 0
582582
menu.Name = a.Abbreviation
583583
menu.Path = a.Abbreviation
584584
menu.Meta.Title = a.Description

server/service/system/sys_menu.go

+13-13
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package system
22

33
import (
44
"errors"
5-
"strconv"
65

76
"github.com/flipped-aurora/gin-vue-admin/server/global"
87
"github.com/flipped-aurora/gin-vue-admin/server/model/common/request"
@@ -20,11 +19,11 @@ type MenuService struct{}
2019

2120
var MenuServiceApp = new(MenuService)
2221

23-
func (menuService *MenuService) getMenuTreeMap(authorityId uint) (treeMap map[string][]system.SysMenu, err error) {
22+
func (menuService *MenuService) getMenuTreeMap(authorityId uint) (treeMap map[uint][]system.SysMenu, err error) {
2423
var allMenus []system.SysMenu
2524
var baseMenu []system.SysBaseMenu
2625
var btns []system.SysAuthorityBtn
27-
treeMap = make(map[string][]system.SysMenu)
26+
treeMap = make(map[uint][]system.SysMenu)
2827

2928
var SysAuthorityMenus []system.SysAuthorityMenu
3029
err = global.GVA_DB.Where("sys_authority_authority_id = ?", authorityId).Find(&SysAuthorityMenus).Error
@@ -47,7 +46,7 @@ func (menuService *MenuService) getMenuTreeMap(authorityId uint) (treeMap map[st
4746
allMenus = append(allMenus, system.SysMenu{
4847
SysBaseMenu: baseMenu[i],
4948
AuthorityId: authorityId,
50-
MenuId: strconv.Itoa(int(baseMenu[i].ID)),
49+
MenuId: baseMenu[i].ID,
5150
Parameters: baseMenu[i].Parameters,
5251
})
5352
}
@@ -78,7 +77,7 @@ func (menuService *MenuService) getMenuTreeMap(authorityId uint) (treeMap map[st
7877

7978
func (menuService *MenuService) GetMenuTree(authorityId uint) (menus []system.SysMenu, err error) {
8079
menuTree, err := menuService.getMenuTreeMap(authorityId)
81-
menus = menuTree["0"]
80+
menus = menuTree[0]
8281
for i := 0; i < len(menus); i++ {
8382
err = menuService.getChildrenList(&menus[i], menuTree)
8483
}
@@ -91,7 +90,7 @@ func (menuService *MenuService) GetMenuTree(authorityId uint) (menus []system.Sy
9190
//@param: menu *model.SysMenu, treeMap map[string][]model.SysMenu
9291
//@return: err error
9392

94-
func (menuService *MenuService) getChildrenList(menu *system.SysMenu, treeMap map[string][]system.SysMenu) (err error) {
93+
func (menuService *MenuService) getChildrenList(menu *system.SysMenu, treeMap map[uint][]system.SysMenu) (err error) {
9594
menu.Children = treeMap[menu.MenuId]
9695
for i := 0; i < len(menu.Children); i++ {
9796
err = menuService.getChildrenList(&menu.Children[i], treeMap)
@@ -107,7 +106,7 @@ func (menuService *MenuService) getChildrenList(menu *system.SysMenu, treeMap ma
107106
func (menuService *MenuService) GetInfoList() (list interface{}, total int64, err error) {
108107
var menuList []system.SysBaseMenu
109108
treeMap, err := menuService.getBaseMenuTreeMap()
110-
menuList = treeMap["0"]
109+
menuList = treeMap[0]
111110
for i := 0; i < len(menuList); i++ {
112111
err = menuService.getBaseChildrenList(&menuList[i], treeMap)
113112
}
@@ -120,8 +119,8 @@ func (menuService *MenuService) GetInfoList() (list interface{}, total int64, er
120119
//@param: menu *model.SysBaseMenu, treeMap map[string][]model.SysBaseMenu
121120
//@return: err error
122121

123-
func (menuService *MenuService) getBaseChildrenList(menu *system.SysBaseMenu, treeMap map[string][]system.SysBaseMenu) (err error) {
124-
menu.Children = treeMap[strconv.Itoa(int(menu.ID))]
122+
func (menuService *MenuService) getBaseChildrenList(menu *system.SysBaseMenu, treeMap map[uint][]system.SysBaseMenu) (err error) {
123+
menu.Children = treeMap[menu.ID]
125124
for i := 0; i < len(menu.Children); i++ {
126125
err = menuService.getBaseChildrenList(&menu.Children[i], treeMap)
127126
}
@@ -146,9 +145,9 @@ func (menuService *MenuService) AddBaseMenu(menu system.SysBaseMenu) error {
146145
//@description: 获取路由总树map
147146
//@return: treeMap map[string][]system.SysBaseMenu, err error
148147

149-
func (menuService *MenuService) getBaseMenuTreeMap() (treeMap map[string][]system.SysBaseMenu, err error) {
148+
func (menuService *MenuService) getBaseMenuTreeMap() (treeMap map[uint][]system.SysBaseMenu, err error) {
150149
var allMenus []system.SysBaseMenu
151-
treeMap = make(map[string][]system.SysBaseMenu)
150+
treeMap = make(map[uint][]system.SysBaseMenu)
152151
err = global.GVA_DB.Order("sort").Preload("MenuBtn").Preload("Parameters").Find(&allMenus).Error
153152
for _, v := range allMenus {
154153
treeMap[v.ParentId] = append(treeMap[v.ParentId], v)
@@ -163,7 +162,7 @@ func (menuService *MenuService) getBaseMenuTreeMap() (treeMap map[string][]syste
163162

164163
func (menuService *MenuService) GetBaseMenuTree() (menus []system.SysBaseMenu, err error) {
165164
treeMap, err := menuService.getBaseMenuTreeMap()
166-
menus = treeMap["0"]
165+
menus = treeMap[0]
167166
for i := 0; i < len(menus); i++ {
168167
err = menuService.getBaseChildrenList(&menus[i], treeMap)
169168
}
@@ -210,14 +209,15 @@ func (menuService *MenuService) GetMenuAuthority(info *request.GetAuthorityId) (
210209
menus = append(menus, system.SysMenu{
211210
SysBaseMenu: baseMenu[i],
212211
AuthorityId: info.AuthorityId,
213-
MenuId: strconv.Itoa(int(baseMenu[i].ID)),
212+
MenuId: baseMenu[i].ID,
214213
Parameters: baseMenu[i].Parameters,
215214
})
216215
}
217216
return menus, err
218217
}
219218

220219
// UserAuthorityDefaultRouter 用户角色默认路由检查
220+
//
221221
// Author [SliverHorn](https://github.com/SliverHorn)
222222
func (menuService *MenuService) UserAuthorityDefaultRouter(user *system.SysUser) {
223223
var menuIds []string

0 commit comments

Comments
 (0)