From 17acd9b369083c7772b5876e80abd5c9f89255d5 Mon Sep 17 00:00:00 2001 From: lyan <49744633+zds-s@users.noreply.github.com> Date: Thu, 28 Nov 2024 19:02:56 +0800 Subject: [PATCH] Release v3.0 (#480) * Release v3.0 * Added tinker component --- .gitignore | 4 ++-- composer.json | 17 +++++++++-------- storage/swagger/http.json | 1 - 3 files changed, 11 insertions(+), 11 deletions(-) delete mode 100644 storage/swagger/http.json diff --git a/.gitignore b/.gitignore index 8588e46a..0df290ad 100644 --- a/.gitignore +++ b/.gitignore @@ -12,11 +12,11 @@ vendor/ .phpunit* *.cache .vscode/ -storage/swagger/http.json tests/cover tests/coverage.xml tests/coding_standard.xml tests/junit.xml public !web/public -*.lock \ No newline at end of file +*.lock +storage/swagger/http.json \ No newline at end of file diff --git a/composer.json b/composer.json index 3f173e19..b5d0c5ce 100644 --- a/composer.json +++ b/composer.json @@ -23,6 +23,7 @@ "ext-pdo_mysql": "*", "ext-redis": "*", "ext-swoole": ">=5.0", + "friendsofhyperf/tinker": "^3.1", "hyperf/async-queue": "3.1.*", "hyperf/cache": "3.1.*", "hyperf/carbon": "^3.1", @@ -55,14 +56,14 @@ "hyperf/server": "3.1.*", "hyperf/utils": "3.1.*", "hyperf/validation": "~3.1", - "mineadmin/access": "3.0-RC", - "mineadmin/app-store": "3.0-RC", - "mineadmin/auth-jwt": "3.0-RC", - "mineadmin/core": "3.0-RC", - "mineadmin/jwt": "3.0-RC", - "mineadmin/support": "3.0-RC", - "mineadmin/swagger": "3.0-RC", - "mineadmin/upload": "3.0-RC" + "mineadmin/access": "3.0", + "mineadmin/app-store": "3.0", + "mineadmin/auth-jwt": "3.0", + "mineadmin/core": "3.0", + "mineadmin/jwt": "3.0", + "mineadmin/support": "3.0", + "mineadmin/swagger": "3.0", + "mineadmin/upload": "3.0" }, "require-dev": { "doctrine/dbal": "^3.6", diff --git a/storage/swagger/http.json b/storage/swagger/http.json deleted file mode 100644 index 5fa4478c..00000000 --- a/storage/swagger/http.json +++ /dev/null @@ -1 +0,0 @@ -{"openapi":"3.0.0","info":{"title":"MineAdmin","description":"MineAdmin 是一款基于 Hyperf 开发的开源管理系统,提供了用户管理、权限管理、系统设置、系统监控等功能。","termsOfService":"https:\/\/www.mineadmin.com","contact":{"name":"MineAdmin","url":"https:\/\/www.mineadmin.com\/about"},"license":{"name":"Apache2.0","url":"https:\/\/github.com\/mineadmin\/MineAdmin\/blob\/master\/LICENSE"},"version":"3.0.0"},"servers":[{"url":"http:\/\/127.0.0.1:9501","description":"本地服务"},{"url":"https:\/\/demo.mineadmin.com","description":"演示服务"}],"paths":{"\/admin\/attachment\/list":{"get":{"tags":["数据中心"],"summary":"附件列表","operationId":"AttachmentList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/AttachmentSchema"},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/attachment\/upload":{"post":{"tags":["数据中心"],"summary":"上传附件","operationId":"UploadAttachment","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/attachment\/{id}":{"delete":{"operationId":"DeleteAttachment","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}}}},"\/admin\/permission\/menus":{"get":{"tags":["权限"],"summary":"获取当前用户菜单","operationId":"PermissionMenus","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/MenuSchema"},"rules":null,"attribute":null}},"type":"object"},"example":"{\"code\":200,\"message\":\"成功\",\"data\":[{\"id\":290,\"parent_id\":0,\"name\":\"LAme6dFrlf\",\"code\":\"eNiYagCtJp\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":291,\"parent_id\":290,\"name\":\"zFFsqwN3rB\",\"code\":\"isz4eTJANV\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":291,\"parent_id\":290,\"name\":\"zFFsqwN3rB\",\"code\":\"isz4eTJANV\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]},{\"id\":292,\"parent_id\":0,\"name\":\"mMMSlHc8cv\",\"code\":\"xzobstyEmP\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":293,\"parent_id\":292,\"name\":\"8Sr5vtPSqw\",\"code\":\"9SelwHGooE\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":293,\"parent_id\":292,\"name\":\"8Sr5vtPSqw\",\"code\":\"9SelwHGooE\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]},{\"id\":294,\"parent_id\":0,\"name\":\"ot8fL3u7QZ\",\"code\":\"kCbrLhgYDj\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":295,\"parent_id\":294,\"name\":\"6uQFNiMzJa\",\"code\":\"GVvC2iPU92\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":295,\"parent_id\":294,\"name\":\"6uQFNiMzJa\",\"code\":\"GVvC2iPU92\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]}"}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/permission\/roles":{"get":{"tags":["权限"],"summary":"获取当前用户角色","operationId":"PermissionRoles","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/RoleSchema"},"rules":null,"attribute":null}},"type":"object"},"example":"{\"code\":200,\"message\":\"成功\",\"data\":[{\"id\":290,\"parent_id\":0,\"name\":\"LAme6dFrlf\",\"code\":\"eNiYagCtJp\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":291,\"parent_id\":290,\"name\":\"zFFsqwN3rB\",\"code\":\"isz4eTJANV\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":291,\"parent_id\":290,\"name\":\"zFFsqwN3rB\",\"code\":\"isz4eTJANV\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]},{\"id\":292,\"parent_id\":0,\"name\":\"mMMSlHc8cv\",\"code\":\"xzobstyEmP\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":293,\"parent_id\":292,\"name\":\"8Sr5vtPSqw\",\"code\":\"9SelwHGooE\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":293,\"parent_id\":292,\"name\":\"8Sr5vtPSqw\",\"code\":\"9SelwHGooE\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]},{\"id\":294,\"parent_id\":0,\"name\":\"ot8fL3u7QZ\",\"code\":\"kCbrLhgYDj\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[{\"id\":295,\"parent_id\":294,\"name\":\"6uQFNiMzJa\",\"code\":\"GVvC2iPU92\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]},{\"id\":295,\"parent_id\":294,\"name\":\"6uQFNiMzJa\",\"code\":\"GVvC2iPU92\",\"icon\":\"test\",\"route\":\"test\",\"component\":\"test\",\"redirect\":\"test\",\"is_hidden\":1,\"type\":\"M\",\"status\":1,\"sort\":1,\"created_by\":1,\"updated_by\":1,\"created_at\":\"2024-08-02 00:32:26\",\"updated_at\":\"2024-08-02 00:32:26\",\"deleted_at\":null,\"remark\":\"test\",\"children\":[]}]}"}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/permission\/update":{"post":{"tags":["权限"],"summary":"更新用户信息","operationId":"updateInfo","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user-operation-log\/list":{"get":{"tags":["系统管理"],"summary":"用户操作日志列表","operationId":"UserOperationLogList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/UserOperationLogSchema"},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user-operation-log":{"delete":{"tags":["系统管理"],"summary":"删除用户操作日志","operationId":"UserOperationLogDelete","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"$ref":"#\/components\/schemas\/Result"},"data":{"$ref":"#\/components\/schemas\/Result"}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user-login-log\/list":{"get":{"tags":["系统管理"],"summary":"用户登录日志列表","operationId":"UserLoginLogList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/UserLoginLogSchema"},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user-login-log":{"delete":{"tags":["系统管理"],"summary":"删除用户登录日志","operationId":"UserLoginLogDelete","security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/passport\/login":{"post":{"tags":["admin:passport"],"summary":"系统登录","operationId":"passportLogin","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/PassportLoginRequest"},"example":"{\"username\":\"admin\",\"password\":\"123456\"}"}},"_content":{"$ref":"#\/components\/schemas\/PassportLoginRequest"}},"responses":{"200":{"description":"登录成功返回对象","content":{"application\/json":{"schema":{"title":"登录成功","properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"$ref":"#\/components\/schemas\/PassportLoginVo"}},"type":"object"},"example":"{\"code\":200,\"message\":\"成功\",\"data\":{\"access_token\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MjIwOTQwNTYsIm5iZiI6MTcyMjA5NDAiwiZXhwIjoxNzIyMDk0MzU2fQ.7EKiNHb_ZeLJ1NArDpmK6sdlP7NsDecsTKLSZn_3D7k\",\"refresh_token\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MjIwOTQwNTYsIm5iZiI6MTcyMjA5NDAiwiZXhwIjoxNzIyMDk0MzU2fQ.7EKiNHb_ZeLJ1NArDpmK6sdlP7NsDecsTKLSZn_3D7k\",\"expire_at\":300}}"}}}}}},"\/admin\/passport\/logout":{"post":{"tags":["admin:passport"],"summary":"退出","operationId":"passportLogout","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"},"example":"{\"code\":200,\"message\":\"成功\",\"data\":[]}"}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/passport\/getInfo":{"get":{"tags":["admin:passport"],"summary":"获取用户信息","operationId":"getInfo","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"$ref":"#\/components\/schemas\/UserSchema"}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/passport\/refresh":{"post":{"tags":["admin:passport"],"summary":"刷新token","operationId":"refresh","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"$ref":"#\/components\/schemas\/PassportLoginVo"}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/role\/list":{"get":{"tags":["角色管理"],"summary":"角色列表","operationId":"roleList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/RoleSchema"},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/role":{"post":{"tags":["角色管理"],"summary":"创建角色","operationId":"roleCreate","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/RoleRequest"}}},"_content":{"$ref":"#\/components\/schemas\/RoleRequest"}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"delete":{"tags":["角色管理"],"summary":"删除角色","operationId":"roleDelete","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/role\/{id}":{"put":{"tags":["角色管理"],"summary":"保存角色","operationId":"roleSave","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/RoleRequest"}}},"_content":{"$ref":"#\/components\/schemas\/RoleRequest"}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/role\/{id}\/permissions":{"get":{"tags":["角色管理"],"summary":"获取角色权限列表","operationId":"setRolePermission","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"},"example":"{\"code\":200,\"message\":\"成功\",\"data\":[{\"id\":59,\"name\":\"xdrljpefIZ\"},{\"id\":60,\"name\":\"GIdOejHL2R\"},{\"id\":61,\"name\":\"ZpEnJv00VG\"}]}"}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"put":{"tags":["角色管理"],"summary":"赋予角色权限","operationId":"roleGrantPermissions","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BatchGrantPermissionsForRoleRequest"}}},"_content":{"$ref":"#\/components\/schemas\/BatchGrantPermissionsForRoleRequest"}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/menu\/list":{"get":{"tags":["菜单管理"],"summary":"菜单列表","operationId":"menuList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/menu":{"post":{"tags":["菜单管理"],"summary":"创建菜单","operationId":"menuCreate","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/MenuRequest"}}},"_content":{"$ref":"#\/components\/schemas\/MenuRequest"}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":{"code":200,"message":"成功","data":[]}},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"delete":{"tags":["菜单管理"],"summary":"删除菜单","operationId":"menuDelete","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":{"code":200,"message":"成功","data":[]}},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/menu\/{id}":{"put":{"tags":["菜单管理"],"summary":"编辑菜单","operationId":"menuEdit","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/MenuRequest"}}},"_content":{"$ref":"#\/components\/schemas\/MenuRequest"}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":{"code":200,"message":"成功","data":[]}},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user\/list":{"get":{"tags":["用户管理"],"summary":"用户列表","operationId":"userList","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"total":{"description":"总数量","type":"integer","rules":null,"attribute":null},"list":{"type":"array","items":{"$ref":"#\/components\/schemas\/UserSchema"},"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user":{"put":{"tags":["用户管理"],"summary":"更新用户信息","operationId":"updateInfo","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserRequest"}}}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"post":{"tags":["用户管理"],"summary":"创建用户","operationId":"userCreate","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserRequest"}}}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"delete":{"tags":["用户管理"],"summary":"删除用户","operationId":"userDelete","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user\/password":{"put":{"tags":["用户管理"],"summary":"重置密码","operationId":"updatePassword","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user\/{userId}":{"put":{"tags":["用户管理"],"summary":"更新用户","operationId":"userUpdate","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserRequest"}}}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/admin\/user\/{userId}\/roles":{"get":{"tags":["用户管理"],"summary":"获取用户角色列表","operationId":"getUserRole","responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]},"put":{"tags":["用户管理"],"summary":"批量授权用户角色","operationId":"batchGrantRolesForUser","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BatchGrantRolesForUserRequest"}}}},"responses":{"200":{"content":{"application\/json":{"schema":{"properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"rules":null,"attribute":null},"data":{"rules":null,"attribute":null}},"type":"object"}}}}},"security":[{"Bearer":[],"ApiKey":[]}]}},"\/api\/v1\/login":{"post":{"tags":["api"],"summary":"用户登录","operationId":"ApiV1Login"}}},"components":{"schemas":{"ResultCode":{"title":"ResultCode","type":"integer","default":200,"enum":[200,500,401,403,404,405,406,422]},"Result":{"title":"Api Response","description":"Api Response","properties":{"code":{"$ref":"#\/components\/schemas\/ResultCode"},"message":{"title":"响应消息","type":"string","nullable":true,"rules":null,"attribute":null},"data":{"title":"响应数据","type":"array","nullable":true,"rules":null,"attribute":null}},"type":"object"},"PassportLoginVo":{"description":"登录成功返回","properties":{"access_token":{"description":"Access Token","type":"string","example":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MjIwOTQwNTYsIm5iZiI6MTcyMjA5NDAiwiZXhwIjoxNzIyMDk0MzU2fQ.7EKiNHb_ZeLJ1NArDpmK6sdlP7NsDecsTKLSZn_3D7k","rules":null,"attribute":null},"refresh_token":{"description":"Refresh Token","type":"string","example":"eyJ0eXAiOi","rules":null,"attribute":null},"expire_at":{"description":"过期时间,单位秒","type":"integer","example":300,"rules":null,"attribute":null}},"type":"object","example":"{\"token\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MjIwOTQwNTYsIm5iZiI6MTcyMjA5NDAiwiZXhwIjoxNzIyMDk0MzU2fQ.7EKiNHb_ZeLJ1NArDpmK6sdlP7NsDecsTKLSZn_3D7k\",\"expire_at\":300}"},"UploadRequest":{"title":"上传附件","properties":{"file":{"description":"文件","type":"file","rules":null,"attribute":null}},"type":"object"},"PassportLoginRequest":{"title":"登录请求","description":"登录请求参数","properties":{"username":{"description":"用户名","type":"string","rules":null,"attribute":null},"password":{"description":"密码","type":"string","rules":null,"attribute":null}},"type":"object"},"BatchGrantPermissionsForRoleRequest":{"title":"批量授权角色权限","properties":{"permission_ids":{"description":"权限ID","type":"array","example":"[1,2,3]","rules":null,"attribute":null}},"type":"object"},"BatchGrantRolesForUserRequest":{"title":"批量授权用户角色","properties":{"role_ids":{"description":"角色ID","type":"array","example":"[1,2,3]","rules":null,"attribute":null}},"type":"object"},"PermissionRequest":{"properties":{"nickname":{"title":"用户昵称","type":"string","rules":null,"attribute":null},"avatar":{"title":"用户头像","type":"string","rules":null,"attribute":null},"signed":{"title":"个人签名","type":"string","rules":null,"attribute":null},"backend_setting":{"title":"后台设置数据","type":"array","rules":null,"attribute":null}},"type":"object"},"RoleRequest":{"properties":{"name":{"title":"角色名称","type":"string","rules":null,"attribute":null},"code":{"title":"角色代码","type":"string","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"sort":{"title":"排序","type":"integer","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"MenuRequest":{"properties":{"parent_id":{"title":"父ID","type":"integer","rules":null,"attribute":null},"name":{"title":"菜单名称","type":"string","rules":null,"attribute":null},"component":{"title":"组件路径","type":"string","rules":null,"attribute":null},"redirect":{"title":"重定向地址","type":"string","rules":null,"attribute":null},"type":{"title":"菜单类型, (M菜单 B按钮 L链接 I iframe)","type":"string","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"sort":{"title":"排序","type":"integer","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"UserRequest":{"title":"创建用户","required":["username","user_type","nickname","phone","email","avatar","signed","status","backend_setting","remark"],"properties":{"username":{"title":"用户名","type":"string","rules":null,"attribute":null},"user_type":{"title":"用户类型:(100系统用户)","type":"string","rules":null,"attribute":null},"nickname":{"title":"用户昵称","type":"string","rules":null,"attribute":null},"phone":{"title":"手机","type":"string","rules":null,"attribute":null},"email":{"title":"用户邮箱","type":"string","rules":null,"attribute":null},"avatar":{"title":"用户头像","type":"string","rules":null,"attribute":null},"signed":{"title":"个人签名","type":"string","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"backend_setting":{"title":"后台设置数据","type":"array","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"UserLoginLogSchema":{"title":"UserLoginLogSchema","properties":{"id":{"title":"主键","type":"integer","rules":null,"attribute":null},"username":{"title":"用户名","type":"string","rules":null,"attribute":null},"ip":{"title":"登录IP地址","type":"string","rules":null,"attribute":null},"ip_location":{"title":"IP所属地","type":"string","rules":null,"attribute":null},"os":{"title":"操作系统","type":"string","rules":null,"attribute":null},"browser":{"title":"浏览器","type":"string","rules":null,"attribute":null},"status":{"title":"登录状态 (1成功 2失败)","type":"integer","rules":null,"attribute":null},"message":{"title":"提示消息","type":"string","rules":null,"attribute":null},"login_time":{"title":"登录时间","type":"mixed","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"MenuMetaSchema":{"title":"MenuMetaSchema","properties":{"title":{"title":"标题","type":"string","rules":null,"attribute":null},"i18n":{"title":"国际化","type":"string","rules":null,"attribute":null},"badge":{"title":"徽章","type":"string","rules":null,"attribute":null},"icon":{"title":"图标","type":"string","rules":null,"attribute":null},"affix":{"title":"是否固定","type":"boolean","rules":null,"attribute":null},"hidden":{"title":"是否隐藏","type":"boolean","rules":null,"attribute":null},"type":{"title":"类型","type":"string","rules":null,"attribute":null},"cache":{"title":"是否缓存","type":"boolean","rules":null,"attribute":null},"copyright":{"title":"是否显示版权","type":"boolean","rules":null,"attribute":null},"breadcrumbEnable":{"title":"是否显示面包屑","type":"boolean","rules":null,"attribute":null},"componentPath":{"title":"视图前缀路径","type":"string","rules":null,"attribute":null},"componentSuffix":{"title":"视图文件类型","type":"string","rules":null,"attribute":null},"link":{"title":"链接","type":"string","rules":null,"attribute":null},"activeName":{"title":"高亮菜单标识","type":"string","rules":null,"attribute":null},"auth":{"title":"权限码","type":"array","rules":null,"attribute":null},"role":{"title":"角色码","type":"array","rules":null,"attribute":null},"user":{"title":"用户名","type":"array","rules":null,"attribute":null}},"type":"object"},"UserOperationLogSchema":{"title":"UserOperationLogSchema","properties":{"id":{"title":"","type":"integer","rules":null,"attribute":null},"username":{"title":"用户名","type":"string","rules":null,"attribute":null},"method":{"title":"请求方式","type":"string","rules":null,"attribute":null},"router":{"title":"请求路由","type":"string","rules":null,"attribute":null},"service_name":{"title":"业务名称","type":"string","rules":null,"attribute":null},"ip":{"title":"请求IP地址","type":"string","rules":null,"attribute":null},"ip_location":{"title":"IP所属地","type":"string","rules":null,"attribute":null},"request_data":{"title":"请求数据","type":"mixed","rules":null,"attribute":null},"response_code":{"title":"响应状态码","type":"string","rules":null,"attribute":null},"response_data":{"title":"响应数据","type":"mixed","rules":null,"attribute":null},"created_by":{"title":"创建者","type":"integer","rules":null,"attribute":null},"updated_by":{"title":"更新者","type":"integer","rules":null,"attribute":null},"created_at":{"title":"创建时间","type":"mixed","rules":null,"attribute":null},"updated_at":{"title":"更新时间","type":"mixed","rules":null,"attribute":null},"deleted_at":{"title":"删除时间","type":"mixed","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"MenuSchema":{"title":"MenuSchema","properties":{"id":{"title":"主键","type":"integer","rules":null,"attribute":null},"parent_id":{"title":"父ID","type":"integer","rules":null,"attribute":null},"name":{"title":"菜单名称","type":"string","rules":null,"attribute":null},"path":{"title":"路由地址","type":"string","rules":null,"attribute":null},"component":{"title":"组件路径","type":"string","rules":null,"attribute":null},"redirect":{"title":"重定向地址","type":"string","rules":null,"attribute":null},"type":{"title":"菜单类型, (M菜单 B按钮 L链接 I iframe)","type":"string","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"sort":{"title":"排序","type":"integer","rules":null,"attribute":null},"created_by":{"title":"创建者","type":"integer","rules":null,"attribute":null},"updated_by":{"title":"更新者","type":"integer","rules":null,"attribute":null},"created_at":{"title":"","type":"string","rules":null,"attribute":null},"updated_at":{"title":"","type":"string","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null},"meta":{"title":"附加属性","type":"object","rules":null,"attribute":null}},"type":"object"},"RoleSchema":{"title":"RoleSchema","properties":{"id":{"title":"主键","type":"integer","rules":null,"attribute":null},"name":{"title":"角色名称","type":"string","rules":null,"attribute":null},"code":{"title":"角色代码","type":"string","rules":null,"attribute":null},"data_scope":{"title":"数据范围(1:全部数据权限 2:自定义数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:本人数据权限)","type":"integer","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"sort":{"title":"排序","type":"integer","rules":null,"attribute":null},"created_by":{"title":"创建者","type":"integer","rules":null,"attribute":null},"updated_by":{"title":"更新者","type":"integer","rules":null,"attribute":null},"created_at":{"title":"","type":"string","rules":null,"attribute":null},"updated_at":{"title":"","type":"string","rules":null,"attribute":null},"deleted_at":{"title":"","type":"string","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"UserSchema":{"properties":{"id":{"title":"用户ID,主键","type":"integer","rules":null,"attribute":null},"username":{"title":"用户名","type":"string","rules":null,"attribute":null},"user_type":{"title":"用户类型:(100系统用户)","type":"string","rules":null,"attribute":null},"nickname":{"title":"用户昵称","type":"string","rules":null,"attribute":null},"phone":{"title":"手机","type":"string","rules":null,"attribute":null},"email":{"title":"用户邮箱","type":"string","rules":null,"attribute":null},"avatar":{"title":"用户头像","type":"string","rules":null,"attribute":null},"signed":{"title":"个人签名","type":"string","rules":null,"attribute":null},"status":{"title":"状态 (1正常 2停用)","type":"integer","rules":null,"attribute":null},"login_ip":{"title":"最后登陆IP","type":"string","rules":null,"attribute":null},"login_time":{"title":"最后登陆时间","type":"string","rules":null,"attribute":null},"backend_setting":{"title":"后台设置数据","type":"array","rules":null,"attribute":null},"created_by":{"title":"创建者","type":"integer","rules":null,"attribute":null},"updated_by":{"title":"更新者","type":"integer","rules":null,"attribute":null},"created_at":{"title":"创建时间","type":"string","rules":null,"attribute":null},"updated_at":{"title":"更新时间","type":"string","rules":null,"attribute":null},"deleted_at":{"title":"删除时间","type":"string","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"},"AttachmentSchema":{"title":"AttachmentSchema","properties":{"id":{"title":"主键","type":"integer","rules":null,"attribute":null},"storage_mode":{"title":"存储模式 (1 本地 2 阿里云 3 七牛云 4 腾讯云)","type":"integer","rules":null,"attribute":null},"origin_name":{"title":"原文件名","type":"string","rules":null,"attribute":null},"object_name":{"title":"新文件名","type":"string","rules":null,"attribute":null},"hash":{"title":"文件hash","type":"string","rules":null,"attribute":null},"mime_type":{"title":"资源类型","type":"string","rules":null,"attribute":null},"storage_path":{"title":"存储目录","type":"string","rules":null,"attribute":null},"suffix":{"title":"文件后缀","type":"string","rules":null,"attribute":null},"size_byte":{"title":"字节数","type":"integer","rules":null,"attribute":null},"size_info":{"title":"文件大小","type":"string","rules":null,"attribute":null},"url":{"title":"url地址","type":"string","rules":null,"attribute":null},"created_by":{"title":"创建者","type":"integer","rules":null,"attribute":null},"updated_by":{"title":"更新者","type":"integer","rules":null,"attribute":null},"created_at":{"title":"","type":"mixed","rules":null,"attribute":null},"updated_at":{"title":"","type":"mixed","rules":null,"attribute":null},"deleted_at":{"title":"","type":"mixed","rules":null,"attribute":null},"remark":{"title":"备注","type":"string","rules":null,"attribute":null}},"type":"object"}},"securitySchemes":{"Bearer":{"type":"http","name":"Authorization","bearerFormat":"JWT","scheme":"bearer"},"ApiKey":{"type":"apiKey","name":"token","in":"header"}}},"externalDocs":{"description":"开发文档","url":"https:\/\/v3.doc.mineadmin.com"}} \ No newline at end of file