新增core模块核心库

This commit is contained in:
TsMask
2023-08-26 17:01:49 +08:00
parent 9a6684b257
commit 26b55965da
10 changed files with 614 additions and 0 deletions

View File

@@ -0,0 +1,72 @@
package result
const CODE_ERROR = 0
const MSG_ERROR = "error"
const CODE_SUCCESS = 1
const MSG_SUCCESS = "success"
// CodeMsg 响应结果
func CodeMsg(code int, msg string) map[string]any {
args := make(map[string]any)
args["code"] = code
args["msg"] = msg
return args
}
// 响应成功结果 map[string]any{}
func Ok(v map[string]any) map[string]any {
args := make(map[string]any)
args["code"] = CODE_SUCCESS
args["msg"] = MSG_SUCCESS
// v合并到args
for key, value := range v {
args[key] = value
}
return args
}
// 响应成功结果信息
func OkMsg(msg string) map[string]any {
args := make(map[string]any)
args["code"] = CODE_SUCCESS
args["msg"] = msg
return args
}
// 响应成功结果数据
func OkData(data any) map[string]any {
args := make(map[string]any)
args["code"] = CODE_SUCCESS
args["msg"] = MSG_SUCCESS
args["data"] = data
return args
}
// 响应失败结果 map[string]any{}
func Err(v map[string]any) map[string]any {
args := make(map[string]any)
args["code"] = CODE_ERROR
args["msg"] = MSG_ERROR
// v合并到args
for key, value := range v {
args[key] = value
}
return args
}
// 响应失败结果信息
func ErrMsg(msg string) map[string]any {
args := make(map[string]any)
args["code"] = CODE_ERROR
args["msg"] = msg
return args
}
// 响应失败结果数据
func ErrData(data any) map[string]any {
args := make(map[string]any)
args["code"] = CODE_ERROR
args["msg"] = MSG_ERROR
args["data"] = data
return args
}

17
lib/core/vo/router.go Normal file
View File

@@ -0,0 +1,17 @@
package vo
// Router 路由信息对象
type Router struct {
// 路由名字 英文首字母大写
Name string `json:"name"`
// 路由地址
Path string `json:"path"`
// 其他元素
Meta RouterMeta `json:"meta"`
// 组件地址
Component string `json:"component"`
// 重定向地址
Redirect string `json:"redirect"`
// 子路由
Children []Router `json:"children,omitempty"`
}

View File

@@ -0,0 +1,17 @@
package vo
// RouterMeta 路由元信息对象
type RouterMeta struct {
// 设置该菜单在侧边栏和面包屑中展示的名字
Title string `json:"title"`
// 设置该菜单的图标
Icon string `json:"icon"`
// 设置为true则不会被 <keep-alive>缓存
Cache bool `json:"cache"`
// 内链地址http(s)://开头), 打开目标位置 '_blank' | '_self' | ''
Target string `json:"target"`
// 在菜单中隐藏子节点
HideChildInMenu bool `json:"hideChildInMenu"`
// 在菜单中隐藏自己和子节点
HideInMenu bool `json:"hideInMenu"`
}

33
lib/core/vo/treeselect.go Normal file
View File

@@ -0,0 +1,33 @@
package vo
// import sysmenu "ems.agt/features/sys_menu"
// TreeSelect 树结构实体类
type TreeSelect struct {
// ID 节点ID
ID string `json:"id"`
// Label 节点名称
Label string `json:"label"`
// Children 子节点
Children []TreeSelect `json:"children"`
}
// // SysMenuTreeSelect 使用给定的 SysMenu 对象解析为 TreeSelect 对象
// func SysMenuTreeSelect(sysMenu sysmenu.SysMenu) TreeSelect {
// t := TreeSelect{}
// t.ID = sysMenu.MenuID
// t.Label = sysMenu.MenuName
// if len(sysMenu.Children) > 0 {
// for _, menu := range sysMenu.Children {
// child := SysMenuTreeSelect(menu)
// t.Children = append(t.Children, child)
// }
// } else {
// t.Children = []TreeSelect{}
// }
// return t
// }