feat: add swagger docs

This commit is contained in:
chris 2025-03-27 15:05:17 +08:00
parent e2ee2aa0e7
commit 1b96ebdf65
1 changed files with 245 additions and 261 deletions

View File

@ -31,7 +31,6 @@ const docTemplate = `{
"Bearer": [] "Bearer": []
} }
], ],
"description"
"description": "更新API信息", "description": "更新API信息",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -63,13 +62,12 @@ const docTemplate = `{
} }
} }
}, },
"post": {
"security": [ "security": [
{ {
"Bearer": [] "Bearer": []
} }
], ],
"description"
"post": {
"description": "创建新的API", "description": "创建新的API",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -100,14 +98,13 @@ const docTemplate = `{
} }
} }
} }
},
"delete": {
"security": [ "security": [
{ {
"Bearer": [] "Bearer": []
} }
], ],
"description": "
},
"delete": {
"description": "删除指定API", "description": "删除指定API",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -137,15 +134,14 @@ const docTemplate = `{
} }
} }
} }
},
"/v1/admin/apis": {
"get": {
"security": [ "security": [
{ {
"Bearer": [] "Bearer": []
} }
], ],
},
"/v1/admin/apis": {
"get": {
"description": "获取API列表", "description": "获取API列表",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -205,15 +201,15 @@ const docTemplate = `{
} }
} }
} }
"security": [
{
"Bearer": []
}
} }
}, },
"/v1/admin/menu": { "/v1/admin/menu": {
"put": { "put": {
"security": [
{
"Bearer": []
}
],
"description": "更新菜单信息", "description": "更新菜单信息",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -242,15 +238,15 @@ const docTemplate = `{
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
} }
"post": {
"security": [
{
"Bearer": []
} }
} }
}, },
"post": { "post": {
"security": [
{
"Bearer": []
}
],
"description": "创建新的菜单", "description": "创建新的菜单",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -279,15 +275,15 @@ const docTemplate = `{
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
} }
}
}
}, },
"delete": { "delete": {
"security": [ "security": [
{ {
"Bearer": [ "Bearer": []
} }
} ],
},
"delete": {
"description": "删除指定菜单", "description": "删除指定菜单",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -344,23 +340,23 @@ const docTemplate = `{
} }
} }
} }
/admin/role": {
"put": {
"security": [
{
"
} }
}, },
"/v1/admin/role": { "/v1/admin/role": {
"put": { "put": {
"security": [
{
"Bearer": []
}
],
"description": "更新角色信息", "description": "更新角色信息",
"consumes": [ "consumes": [
"application/json" "application/json"
], ],
"produces": [
"application/json" "application/json"
], ],
"tags": [ "tags": [
"角色模块" "角色模块"
], ],
"summary": "更新角色", "summary": "更新角色",
@ -369,29 +365,27 @@ const docTemplate = `{
"description": "参数", "description": "参数",
"name": "request", "name": "request",
"in": "body", "in": "body",
body", "required": true,
"required"
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.RoleUpdateRequest" "$ref": "#/definitions/nunu-layout-admin_api_v1.RoleUpdateRequest"
} }
}
], ],
"用户模块"
"responses": { "responses": {
"200": { "200": {
"description": "OK", "description": "OK",
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
"
}
}
}
},
"post":
} }
} }
} }
}, },
"post": { "post": {
"security": [
{
"Bearer": []
}
],
"description": "创建新的角色", "description": "创建新的角色",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -418,17 +412,17 @@ body",
"200": { "200": {
"description": "OK", "description": "OK",
"schema": { "schema": {
"schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
}
}
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
} }
} }
} }
}, },
"delete": { "delete": {
"security": [
{
"Bearer": []
}
],
"description": "删除指定角色", "description": "删除指定角色",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -442,31 +436,30 @@ body",
"summary": "删除角色", "summary": "删除角色",
"parameters": [ "parameters": [
{ {
], "type": "integer",
"description": "角色ID", "description": "角色ID",
"name": "id", "name": "id",
"description": "OK", "in": "query",
"schema": { "required": true
"summary": "获取用户信息", }
],
"responses": { "responses": {
"200": { "200": {
"description": "OK",
"description": "OK", "description": "OK",
"schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
} }
} }
} }
} }
}
},
"/v1/admin/role/permi
}
}
}
}, },
"/v1/admin/role/permissions": { "/v1/admin/role/permissions": {
"get": { "get": {
"security": [
{
"Bearer": []
}
],
"description": "获取指定角色的权限列表", "description": "获取指定角色的权限列表",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -483,30 +476,27 @@ body",
"type": "string", "type": "string",
"description": "角色名称", "description": "角色名称",
"name": "role", "name": "role",
"name": "role", "in": "query",
"required": true "required": true
} }
uired": true
}
], ],
"responses": { "responses": {
"200": { "200": {
"description": "OK", "description": "OK",
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Ge
],
"responses": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.GetRolePermissionsData" "$ref": "#/definitions/nunu-layout-admin_api_v1.GetRolePermissionsData"
"$ref": "#/definitions/github_com_go-nunu_nunu-layout-advanced_api_v1.GetProfileResponse"
} }
} }
}
},
"put": { "put": {
"security": [
{
"Bearer": []
}
],
"description": "更新指定角色的权限列表", "description": "更新指定角色的权限列表",
"consumes": [ "consumes": [
"application/json"
},
"application/json" "application/json"
], ],
"produces": [ "produces": [
@ -529,15 +519,6 @@ uired": true
], ],
"responses": { "responses": {
"200": { "200": {
finitions/nunu-layout-admin_api_v1.Response"
}
}
}
}
},
"/v1/admin/roles": {
"get": {
"security":
"description": "OK", "description": "OK",
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response" "$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
@ -548,6 +529,11 @@ finitions/nunu-layout-admin_api_v1.Response"
}, },
"/v1/admin/roles": { "/v1/admin/roles": {
"get": { "get": {
"security": [
{
"Bearer": []
}
],
"description": "获取角色列表", "description": "获取角色列表",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -584,7 +570,7 @@ finitions/nunu-layout-admin_api_v1.Response"
"type": "string", "type": "string",
"description": "角色名称", "description": "角色名称",
"name": "name", "name": "name",
"get": { "in": "query"
} }
], ],
"responses": { "responses": {
@ -598,7 +584,7 @@ finitions/nunu-layout-admin_api_v1.Response"
} }
}, },
"/v1/admin/user": { "/v1/admin/user": {
"put": { "get": {
"security": [ "security": [
{ {
"Bearer": [] "Bearer": []
@ -610,9 +596,6 @@ finitions/nunu-layout-admin_api_v1.Response"
"produces": [ "produces": [
"application/json" "application/json"
], ],
"description": "OK",
"schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.Get
"tags": [ "tags": [
"用户模块" "用户模块"
], ],
@ -627,6 +610,11 @@ finitions/nunu-layout-admin_api_v1.Response"
} }
}, },
"put": { "put": {
"security": [
{
"Bearer": []
}
],
"description": "更新管理员用户信息", "description": "更新管理员用户信息",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -647,11 +635,6 @@ finitions/nunu-layout-admin_api_v1.Response"
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.AdminUserUpdateRequest" "$ref": "#/definitions/nunu-layout-admin_api_v1.AdminUserUpdateRequest"
} }
"$ref": "#/definitions/nunu-layout-admin_api_v1.Response"
}
}
}
}
} }
], ],
"responses": { "responses": {
@ -664,6 +647,11 @@ finitions/nunu-layout-admin_api_v1.Response"
} }
}, },
"post": { "post": {
"security": [
{
"Bearer": []
}
],
"description": "创建新的管理员用户", "description": "创建新的管理员用户",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -684,12 +672,6 @@ finitions/nunu-layout-admin_api_v1.Response"
"schema": { "schema": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.AdminUserCreateRequest" "$ref": "#/definitions/nunu-layout-admin_api_v1.AdminUserCreateRequest"
} }
"#/definitions/nunu-layout-admin_api_v1.Response"
}
}
}
},
"d
} }
], ],
"responses": { "responses": {
@ -702,6 +684,11 @@ finitions/nunu-layout-admin_api_v1.Response"
} }
}, },
"delete": { "delete": {
"security": [
{
"Bearer": []
}
],
"description": "删除指定管理员用户", "description": "删除指定管理员用户",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -749,14 +736,6 @@ finitions/nunu-layout-admin_api_v1.Response"
"tags": [ "tags": [
"权限模块" "权限模块"
], ],
layout-admin_api_v1.GetUserPermissionsData"
}
}
}
}
},
"/v1/admin/users": {
"
"summary": "获取用户权限", "summary": "获取用户权限",
"responses": { "responses": {
"200": { "200": {
@ -770,6 +749,11 @@ layout-admin_api_v1.GetUserPermissionsData"
}, },
"/v1/admin/users": { "/v1/admin/users": {
"get": { "get": {
"security": [
{
"Bearer": []
}
],
"description": "获取管理员用户列表", "description": "获取管理员用户列表",
"consumes": [ "consumes": [
"application/json" "application/json"
@ -813,12 +797,7 @@ layout-admin_api_v1.GetUserPermissionsData"
"description": "手机号", "description": "手机号",
"name": "phone", "name": "phone",
"in": "query" "in": "query"
}
}, },
"/v1/login": {
"post": {
"consumes": [
"application/json"
{ {
"type": "string", "type": "string",
"description": "邮箱", "description": "邮箱",
@ -834,7 +813,12 @@ layout-admin_api_v1.GetUserPermissionsData"
} }
} }
} }
"application/json" }
},
"/v1/login": {
"post": {
"consumes": [
"application/json"
], ],
"produces": [ "produces": [
"application/json" "application/json"
@ -845,7 +829,7 @@ layout-admin_api_v1.GetUserPermissionsData"
"summary": "账号登录", "summary": "账号登录",
"parameters": [ "parameters": [
{ {
} "description": "params",
"name": "request", "name": "request",
"in": "body", "in": "body",
"required": true, "required": true,
@ -861,7 +845,7 @@ layout-admin_api_v1.GetUserPermissionsData"
"$ref": "#/definitions/nunu-layout-admin_api_v1.LoginResponse" "$ref": "#/definitions/nunu-layout-admin_api_v1.LoginResponse"
} }
} }
}
} }
}, },
"/v1/menus": { "/v1/menus": {
@ -880,15 +864,15 @@ layout-admin_api_v1.GetUserPermissionsData"
], ],
"tags": [ "tags": [
"菜单模块" "菜单模块"
],
"summary": "获取用户菜单",
"responses": {
"200": { "200": {
"description": "OK", "description": "OK",
"username" "schema": {
],
"properties": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.GetMenuResponse" "$ref": "#/definitions/nunu-layout-admin_api_v1.GetMenuResponse"
} }
} }
"
} }
} }
} }
@ -896,15 +880,15 @@ layout-admin_api_v1.GetUserPermissionsData"
"definitions": { "definitions": {
"nunu-layout-admin_api_v1.AdminUserCreateRequest": { "nunu-layout-admin_api_v1.AdminUserCreateRequest": {
"type": "object", "type": "object",
",
"username"
],
"required": [ "required": [
"password", "password",
"email": { "username"
],
"properties": {
"email": { "email": {
"type": "string", "type": "string",
"example": "1234@gmail.com" "example": "1234@gmail.com"
},
"nickname": { "nickname": {
"type": "string", "type": "string",
"example": "小Baby" "example": "小Baby"
@ -933,11 +917,11 @@ layout-admin_api_v1.GetUserPermissionsData"
} }
}, },
"nunu-layout-admin_api_v1.AdminUserDataItem": { "nunu-layout-admin_api_v1.AdminUserDataItem": {
"type": "object",
"required": [
"email",
"nickname", "nickname",
"password", "password",
"type": "string"
},
"em
"username" "username"
], ],
"properties": { "properties": {
@ -949,69 +933,66 @@ layout-admin_api_v1.GetUserPermissionsData"
"example": "1234@gmail.com" "example": "1234@gmail.com"
}, },
"id": { "id": {
"properties": {
"code": {
"nickname": {
"type": "integer"
},
},
"password": {
"type": "string",
"roles": {
},
"roles": {
"type": "array",
"items": {
}
}
},
"nunu-layout-admin_api_v1.AdminUserUpdateRequest": {
},
"example": [
},
"updatedAt": {
"type": "st
""
]
},
"updatedAt": {
},
},
"username": {
"type": "string"
"type": "string",
"message": {
"type": "string"
"password": {
"required": [
},
"nunu-layout-admin_api_v1.
"username"
"type": "object",
"required": [
},
"type": "string",
"example": "1234@gmail.com"
"items": {
"id": {
"type": "integer" "type": "integer"
}, },
"nickname": { "nickname": {
"type": "string",
"example": "小Baby" "example": "小Baby"
}, },
"password": {
"type": "string", "type": "string",
"example": "123456"
},
"phone": {
"type": "string", "type": "string",
e": "string",
"example": "1858888888" "example": "1858888888"
}, },
"roles": { "roles": {
"type": "array", "type": "array",
"items "items": {
"type": "string"
},
"example": [
""
]
},
"updatedAt": {
"type": "string"
},
"username": {
"type": "string",
"example": "张三"
}
}
},
"nunu-layout-admin_api_v1.AdminUserUpdateRequest": {
"type": "object",
"required": [
"username"
],
"properties": {
"email": {
"type": "string",
"example": "1234@gmail.com"
},
"id": {
"type": "integer"
},
"nickname": {
"type": "string",
"example": "小Baby"
},
"password": {
"type": "string",
"example": "123456"
},
"phone": {
"type": "string",
"example": "1858888888"
},
"roles": { "roles": {
"type": "array", "type": "array",
}, "items": {
"type": "string" "type": "string"
}, },
"example": [ "example": [
@ -1021,12 +1002,12 @@ e": "string",
"username": { "username": {
"type": "string", "type": "string",
"example": "张三" "example": "张三"
"properties": {
"nickname": {
"type": "string",
} }
} }
}, },
"nunu-layout-admin_api_v1.ApiCreateRequest": {
"type": "object",
"properties": {
"group": { "group": {
"type": "string", "type": "string",
"example": "权限管理" "example": "权限管理"
@ -1054,15 +1035,14 @@ e": "string",
"group": { "group": {
"type": "string" "type": "string"
}, },
"id": {
"type": "integer"
},
"method": { "method": {
"id" "type": "string"
}, },
"name": { "name": {
"type": "string" "type": "string"
pe": "string"
},
"path": {
"t
}, },
"path": { "path": {
"type": "string" "type": "string"
@ -1073,15 +1053,15 @@ pe": "string"
} }
}, },
"nunu-layout-admin_api_v1.ApiUpdateRequest": { "nunu-layout-admin_api_v1.ApiUpdateRequest": {
},
"userId": {
"id"
"type": "object", "type": "object",
"required": [ "required": [
"group": { "id"
], ],
"properties": { "properties": {
"group": { "group": {
"type": "string",
"example": "权限管理"
},
"id": { "id": {
"type": "integer", "type": "integer",
"example": 1 "example": 1
@ -1102,55 +1082,53 @@ pe": "string"
}, },
"nunu-layout-admin_api_v1.GetAdminUserResponse": { "nunu-layout-admin_api_v1.GetAdminUserResponse": {
"type": "object", "type": "object",
"properties": {
"code": {
"type": "integer"
}, },
"data": { "data": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.GetAdminUserResponseData" "$ref": "#/definitions/nunu-layout-admin_api_v1.GetAdminUserResponseData"
}, },
_v1.GetAdminUserResponseData"
},
"message": { "message": {
"type": "string"
}
} }
}, },
"nunu-layout-admin_api_v1.GetAdminUserResponseData": { "nunu-layout-admin_api_v1.GetAdminUserResponseData": {
"type": "object", "type": "object",
erResponseData": {
"type": "object",
"properties": {
"c
"properties": { "properties": {
"createdAt": { "createdAt": {
"type": "string" "type": "string"
}, },
"email": { "email": {
"type": "string", "type": "string",
"github_com_go-nunu_nunu-layout-advanced_api_v1.LoginRequest": {
"type": "integer"
"example": "1234@gmail.com" "example": "1234@gmail.com"
}, },
"id": { "id": {
"type": "integer" "type": "integer"
"example": "小Baby"
"type": "object",
"required": [
}, },
"type": "string" "nickname": {
"type": "string",
"example": "小Baby"
},
"password": { "password": {
"type": "string",
"example": "123456"
},
"phone": {
"type": "string",
"example": "1858888888"
},
"roles": { "roles": {
"properties": { "type": "array",
"items": { "items": {
"type": "string" "type": "string"
}, },
"example": [ "example": [
"$ref": "#/definitions/nunu-layout-admin_api_v1.GetAdminUsersResponseData" ""
] ]
}, },
"updatedAt": { "updatedAt": {
": "string"
},
"usernam
"type": "string" "type": "string"
}, },
"username": { "username": {
@ -1158,21 +1136,20 @@ erResponseData": {
"example": "张三" "example": "张三"
} }
} }
"nunu-layout-admin_api_v1.GetAdminUsersResponse": {
"nunu-layout-admin_api_
],
}, },
"nunu-la "nunu-layout-admin_api_v1.GetAdminUsersResponse": {
"type": "object", "type": "object",
"type": "string", "properties": {
"code": { "code": {
"type": "integer" "type": "integer"
}, },
"data": { "data": {
"type": "string", "$ref": "#/definitions/nunu-layout-admin_api_v1.GetAdminUsersResponseData"
}, },
"message": { "message": {
"type": "string" "type": "string"
}
}
}, },
"nunu-layout-admin_api_v1.GetAdminUsersResponseData": { "nunu-layout-admin_api_v1.GetAdminUsersResponseData": {
"type": "object", "type": "object",
@ -1271,19 +1248,17 @@ erResponseData": {
"type": "string" "type": "string"
} }
} }
}
}
}, },
"nunu-layout-admin_api_v1.LoginRequest": { "nunu-layout-admin_api_v1.GetRolesResponseData": {
"type": "object", "type": "object",
"required": [ "properties": {
"list": {
"type": "array",
"items": {
"$ref": "#/definitions/nunu-layout-admin_api_v1.RoleDataItem"
} }
}, },
], "total": {
"properties": {
"password": {
"type": "integer"
}
"type": "integer" "type": "integer"
} }
} }
@ -1355,17 +1330,42 @@ erResponseData": {
}, },
"keepAlive": { "keepAlive": {
"description": "是否保活", "description": "是否保活",
"type": "boolean"
},
"locale": {
"description": "本地化标识",
"type": "string"
},
"name": {
"description": "同路由中的name唯一标识",
"type": "string"
},
"parentId": {
"description": "父级菜单的id使用整数表示",
"type": "integer"
},
"path": {
"description": "地址",
"type": "string"
},
"redirect": {
"description": "重定向地址",
"type": "string"
},
"title": {
"description": "展示名称",
"type": "string"
},
"url": {
"description": "iframe模式下的跳转url不能与path重复",
"type": "string"
},
"weight": {
"description": "排序权重",
"type": "integer"
}
} }
}, },
"nunu-layout-admin_api_v1.GetUserPermissionsData": {
"type": "object",
"properties": {
"list": {
"type": "array",
"items": {
"type": "string"
}
"nunu-layout-admin_api_v1.MenuDataItem": { "nunu-layout-admin_api_v1.MenuDataItem": {
"type": "object", "type": "object",
"properties": { "properties": {
@ -1488,24 +1488,24 @@ erResponseData": {
} }
}, },
"nunu-layout-admin_api_v1.Response": { "nunu-layout-admin_api_v1.Response": {
"data": { "type": "object",
"properties": {
"code": {
"type": "integer"
},
"data": {},
"message": {
"type": "string"
} }
} }
}, },
"type": "string"
"email",
"password"
"password",
"username"
"email": {
"type": "string",
"nunu-layout-admin_api_v1.RoleCreateRequest": { "nunu-layout-admin_api_v1.RoleCreateRequest": {
} "type": "object",
} "required": [
"name", "name",
"sid" "sid"
"github_com_go-nunu_nunu-layout-advanced_api_v1.Response": { ],
"type": "object", "properties": {
"name": { "name": {
"type": "string", "type": "string",
"example": "Admin" "example": "Admin"
@ -1553,7 +1553,7 @@ erResponseData": {
"example": "Admin" "example": "Admin"
}, },
"sid": { "sid": {
"code": { "type": "string",
"example": "1" "example": "1"
} }
} }
@ -1575,26 +1575,10 @@ erResponseData": {
] ]
}, },
"role": { "role": {
"message": { "type": "string",
"example": "admin" "example": "admin"
} }
} }
},
"github_com_go-nunu_nunu-layout-advanced_api_v1.UpdateProfileRequest": {
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "1234@gmail.com"
},
"nickname": {
"type": "string",
"example": "alan"
}
}
} }
}, },
"securityDefinitions": { "securityDefinitions": {