Spaces:
Sleeping
Sleeping
File size: 2,404 Bytes
bb9df9e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | package api
import (
"github.com/gin-gonic/gin"
)
type Meta struct {
Title string `json:"title"`
Icon string `json:"icon"`
Hidden bool `json:"hidden"`
Roles []string `json:"roles"`
KeepAlive bool `json:"keepAlive,omitempty"`
}
type Child struct {
Path string `json:"path"`
Component string `json:"component"`
Name string `json:"name"`
Meta Meta `json:"meta"`
}
type Menu struct {
Path string `json:"path"`
Component string `json:"component"`
Redirect string `json:"redirect"`
Name string `json:"name"`
Meta Meta `json:"meta"`
Children []Child `json:"children"`
}
func GetMenus(c *gin.Context) {
menus := []Menu{
{
Path: "/system",
Component: "Layout",
// Redirect: "/system/user",
Name: "system",
Meta: Meta{
Title: "system",
Icon: "system",
Hidden: true,
Roles: []string{"ADMIN"},
},
Children: []Child{
{
Path: "user/set",
Component: "system/user/set",
Name: "Userset",
Meta: Meta{
Title: "userset",
Icon: "role",
Hidden: true,
Roles: []string{"ADMIN"},
KeepAlive: true,
},
},
},
},
// 订阅管理
{
Path: "/subcription",
Component: "Layout",
Redirect: "/subcription/subs",
Name: "subcription",
Meta: Meta{
Title: "subcription",
Icon: "client",
Hidden: false,
Roles: []string{"ADMIN"},
},
Children: []Child{
{
Path: "subs",
Component: "subcription/subs",
Name: "Subs",
Meta: Meta{
Title: "sublist",
Icon: "link",
Hidden: false,
Roles: []string{"ADMIN"},
KeepAlive: true,
},
},
{
Path: "nodes",
Component: "subcription/nodes",
Name: "Nodes",
Meta: Meta{
Title: "nodelist",
Icon: "publish",
Hidden: false,
Roles: []string{"ADMIN"},
KeepAlive: true,
},
},
{
Path: "template",
Component: "subcription/template",
Name: "Template",
Meta: Meta{
Title: "templatelist",
Icon: "document",
Hidden: false,
Roles: []string{"ADMIN"},
KeepAlive: true,
},
},
},
},
}
c.JSON(200, gin.H{
"code": "00000",
"data": menus,
"msg": "获取成功",
})
}
|