first commit
This commit is contained in:
		
							
								
								
									
										149
									
								
								app/main/api/desc/admin/menu.api
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										149
									
								
								app/main/api/desc/admin/menu.api
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,149 @@ | ||||
| syntax = "v1" | ||||
|  | ||||
| info ( | ||||
| 	title:   "菜单中心服务" | ||||
| 	desc:    "菜单中心服务" | ||||
| 	author:  "Liangzai" | ||||
| 	email:   "2440983361@qq.com" | ||||
| 	version: "v1" | ||||
| ) | ||||
|  | ||||
| @server ( | ||||
| 	prefix: api/v1/admin/menu | ||||
| 	group:  admin_menu | ||||
| 	jwt:    JwtAuth | ||||
| ) | ||||
| service main { | ||||
| 	@doc "获取菜单列表" | ||||
| 	@handler GetMenuList | ||||
| 	get /list (GetMenuListReq) returns ([]MenuListItem) | ||||
|  | ||||
| 	@doc "获取菜单详情" | ||||
| 	@handler GetMenuDetail | ||||
| 	get /detail/:id (GetMenuDetailReq) returns (GetMenuDetailResp) | ||||
|  | ||||
| 	@doc "创建菜单" | ||||
| 	@handler CreateMenu | ||||
| 	post /create (CreateMenuReq) returns (CreateMenuResp) | ||||
|  | ||||
| 	@doc "更新菜单" | ||||
| 	@handler UpdateMenu | ||||
| 	put /update/:id (UpdateMenuReq) returns (UpdateMenuResp) | ||||
|  | ||||
| 	@doc "删除菜单" | ||||
| 	@handler DeleteMenu | ||||
| 	delete /delete/:id (DeleteMenuReq) returns (DeleteMenuResp) | ||||
|  | ||||
| 	@doc "获取所有菜单(树形结构)" | ||||
| 	@handler GetMenuAll | ||||
| 	get /all (GetMenuAllReq) returns ([]GetMenuAllResp) | ||||
| } | ||||
|  | ||||
| type ( | ||||
| 	// 列表请求 | ||||
| 	GetMenuListReq { | ||||
| 		Name   string `form:"name,optional"`              // 菜单名称 | ||||
| 		Path   string `form:"path,optional"`              // 路由路径 | ||||
| 		Status int64  `form:"status,optional,default=-1"` // 状态:0-禁用,1-启用 | ||||
| 		Type   string `form:"type,optional"`              // 类型 | ||||
| 	} | ||||
|  | ||||
| 	// 列表项 | ||||
| 	MenuListItem { | ||||
| 		Id         int64                  `json:"id"`         // 菜单ID | ||||
| 		Pid        int64                  `json:"pid"`        // 父菜单ID | ||||
| 		Name       string                 `json:"name"`       // 路由名称 | ||||
| 		Path       string                 `json:"path"`       // 路由路径 | ||||
| 		Component  string                 `json:"component"`  // 组件路径 | ||||
| 		Redirect   string                 `json:"redirect"`   // 重定向路径 | ||||
| 		Meta       map[string]interface{} `json:"meta"`       // 路由元数据 | ||||
| 		Status     int64                  `json:"status"`     // 状态:0-禁用,1-启用 | ||||
| 		Type       string                 `json:"type"`       // 类型 | ||||
| 		Sort       int64                  `json:"sort"`       // 排序 | ||||
| 		CreateTime string                 `json:"createTime"` // 创建时间 | ||||
| 		Children   []MenuListItem         `json:"children"`   // 子菜单 | ||||
| 	} | ||||
|  | ||||
| 	// 详情请求 | ||||
| 	GetMenuDetailReq { | ||||
| 		Id int64 `path:"id"` // 菜单ID | ||||
| 	} | ||||
|  | ||||
| 	// 详情响应 | ||||
| 	GetMenuDetailResp { | ||||
| 		Id         int64                  `json:"id"`         // 菜单ID | ||||
| 		Pid        int64                  `json:"pid"`        // 父菜单ID | ||||
| 		Name       string                 `json:"name"`       // 路由名称 | ||||
| 		Path       string                 `json:"path"`       // 路由路径 | ||||
| 		Component  string                 `json:"component"`  // 组件路径 | ||||
| 		Redirect   string                 `json:"redirect"`   // 重定向路径 | ||||
| 		Meta       map[string]interface{} `json:"meta"`       // 路由元数据 | ||||
| 		Status     int64                  `json:"status"`     // 状态:0-禁用,1-启用 | ||||
| 		Type       string                 `json:"type"`       // 类型 | ||||
| 		Sort       int64                  `json:"sort"`       // 排序 | ||||
| 		CreateTime string                 `json:"createTime"` // 创建时间 | ||||
| 		UpdateTime string                 `json:"updateTime"` // 更新时间 | ||||
| 	} | ||||
|  | ||||
| 	// 创建请求 | ||||
| 	CreateMenuReq { | ||||
| 		Pid       int64                  `json:"pid,optional"`              // 父菜单ID | ||||
| 		Name      string                 `json:"name"`                      // 路由名称 | ||||
| 		Path      string                 `json:"path,optional"`             // 路由路径 | ||||
| 		Component string                 `json:"component,optional"`        // 组件路径 | ||||
| 		Redirect  string                 `json:"redirect,optional"`         // 重定向路径 | ||||
| 		Meta      map[string]interface{} `json:"meta"`                      // 路由元数据 | ||||
| 		Status    int64                  `json:"status,optional,default=1"` // 状态:0-禁用,1-启用 | ||||
| 		Type      string                 `json:"type"`                      // 类型 | ||||
| 		Sort      int64                  `json:"sort,optional"`             // 排序 | ||||
| 	} | ||||
|  | ||||
| 	// 创建响应 | ||||
| 	CreateMenuResp { | ||||
| 		Id int64 `json:"id"` // 菜单ID | ||||
| 	} | ||||
|  | ||||
| 	// 更新请求 | ||||
| 	UpdateMenuReq { | ||||
| 		Id        int64                  `path:"id"`                 // 菜单ID | ||||
| 		Pid       int64                  `json:"pid,optional"`       // 父菜单ID | ||||
| 		Name      string                 `json:"name"`               // 路由名称 | ||||
| 		Path      string                 `json:"path,optional"`      // 路由路径 | ||||
| 		Component string                 `json:"component,optional"` // 组件路径 | ||||
| 		Redirect  string                 `json:"redirect,optional"`  // 重定向路径 | ||||
| 		Meta      map[string]interface{} `json:"meta"`               // 路由元数据 | ||||
| 		Status    int64                  `json:"status,optional"`    // 状态:0-禁用,1-启用 | ||||
| 		Type      string                 `json:"type"`               // 类型 | ||||
| 		Sort      int64                  `json:"sort,optional"`      // 排序 | ||||
| 	} | ||||
|  | ||||
| 	// 更新响应 | ||||
| 	UpdateMenuResp { | ||||
| 		Success bool `json:"success"` // 是否成功 | ||||
| 	} | ||||
|  | ||||
| 	// 删除请求 | ||||
| 	DeleteMenuReq { | ||||
| 		Id int64 `path:"id"` // 菜单ID | ||||
| 	} | ||||
|  | ||||
| 	// 删除响应 | ||||
| 	DeleteMenuResp { | ||||
| 		Success bool `json:"success"` // 是否成功 | ||||
| 	} | ||||
|  | ||||
| 	// 获取所有菜单请求 | ||||
| 	GetMenuAllReq { | ||||
| 	} | ||||
|  | ||||
| 	// 获取所有菜单响应 | ||||
| 	GetMenuAllResp { | ||||
| 		Name      string                 `json:"name"` | ||||
| 		Path      string                 `json:"path"` | ||||
| 		Redirect  string                 `json:"redirect,omitempty"` | ||||
| 		Component string                 `json:"component,omitempty"` | ||||
| 		Sort      int64                  `json:"sort"` | ||||
| 		Meta      map[string]interface{} `json:"meta"` | ||||
| 		Children  []GetMenuAllResp       `json:"children"` | ||||
| 	} | ||||
| ) | ||||
		Reference in New Issue
	
	Block a user