From 9e011a75178073aef15d58366920e83879f45fd4 Mon Sep 17 00:00:00 2001 From: zds <49744633+zds-s@users.noreply.github.com> Date: Wed, 23 Oct 2024 22:04:02 +0800 Subject: [PATCH] test: update repository tests and remove unnecessary comments - Remove empty comment lines from multiple test files - Update repository class references in UserLoginLog and UserOperationLog tests - Add @coversNothing annotation to UserRepositoryTest - Reorder trait usage in PassportLoginRequest --- app/Http/Admin/Request/PassportLoginRequest.php | 3 ++- storage/swagger/http.json | 2 +- tests/Feature/Admin/ControllerCase.php | 1 - tests/Feature/Admin/DataCenter/AttachmentControllerTest.php | 1 - tests/Feature/Admin/PassportControllerTest.php | 1 - tests/Feature/Admin/Permission/MenuControllerTest.php | 1 - tests/Feature/Admin/Permission/RoleControllerTest.php | 1 - tests/Feature/Admin/Permission/UserControllerTest.php | 1 - tests/Feature/Admin/PermissionControllerTest.php | 1 - tests/Feature/Admin/UserLoginLogControllerTest.php | 1 - tests/Feature/Admin/UserOperationLogControllerTest.php | 1 - tests/Feature/Casbin/ApiTest.php | 1 - tests/Feature/Casbin/FactoryTest.php | 1 - tests/Feature/Command/ApplicationInstallCommandTest.php | 1 - tests/Feature/Repository/AttachmentRepositoryTest.php | 1 - tests/Feature/Repository/MenuRepositoryTest.php | 1 - tests/Feature/Repository/RoleRepositoryTest.php | 1 - tests/Feature/Repository/UserLoginLogRepositoryTest.php | 4 ++-- tests/Feature/Repository/UserOperationLogRepositoryTest.php | 4 ++-- tests/Feature/Repository/UserRepositoryTest.php | 1 + 20 files changed, 8 insertions(+), 21 deletions(-) diff --git a/app/Http/Admin/Request/PassportLoginRequest.php b/app/Http/Admin/Request/PassportLoginRequest.php index e84c0187..461756c6 100644 --- a/app/Http/Admin/Request/PassportLoginRequest.php +++ b/app/Http/Admin/Request/PassportLoginRequest.php @@ -25,7 +25,8 @@ ])] class PassportLoginRequest extends FormRequest { - use ClientIpRequestTrait, ClientOsTrait; + use ClientIpRequestTrait; + use ClientOsTrait; public function authorize(): bool { diff --git a/storage/swagger/http.json b/storage/swagger/http.json index 020c9d10..70781d73 100644 --- a/storage/swagger/http.json +++ b/storage/swagger/http.json @@ -1 +1 @@ -{"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\/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\/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\/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\/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\/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\/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":[]}]}},"\/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":[]}]}},"\/api\/v1\/login":{"post":{"tags":["api"],"summary":"用户登录","operationId":"ApiV1Login"}}},"components":{"schemas":{"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"},"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"},"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"},"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"},"UploadRequest":{"title":"上传附件","properties":{"file":{"description":"文件","type":"file","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}"},"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"},"ResultCode":{"title":"ResultCode","type":"integer","default":200,"enum":[200,500,401,403,404,405,406,422]},"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"},"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}},"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"},"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"},"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"},"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"}},"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 +{"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\/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\/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\/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\/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":[]}]}},"\/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-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\/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\/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":[]}]}},"\/api\/v1\/login":{"post":{"tags":["api"],"summary":"用户登录","operationId":"ApiV1Login"}}},"components":{"schemas":{"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}"},"PassportLoginRequest":{"title":"登录请求","description":"登录请求参数","properties":{"username":{"description":"用户名","type":"string","rules":null,"attribute":null},"password":{"description":"密码","type":"string","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"},"BatchGrantRolesForUserRequest":{"title":"批量授权用户角色","properties":{"role_ids":{"description":"角色ID","type":"array","example":"[1,2,3]","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"},"BatchGrantPermissionsForRoleRequest":{"title":"批量授权角色权限","properties":{"permission_ids":{"description":"权限ID","type":"array","example":"[1,2,3]","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"},"UploadRequest":{"title":"上传附件","properties":{"file":{"description":"文件","type":"file","rules":null,"attribute":null}},"type":"object"},"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"},"ResultCode":{"title":"ResultCode","type":"integer","default":200,"enum":[200,500,401,403,404,405,406,422]},"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"},"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"},"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"},"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}},"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"},"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"}},"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 diff --git a/tests/Feature/Admin/ControllerCase.php b/tests/Feature/Admin/ControllerCase.php index 0fe765eb..47a75dfb 100644 --- a/tests/Feature/Admin/ControllerCase.php +++ b/tests/Feature/Admin/ControllerCase.php @@ -20,7 +20,6 @@ /** * @internal - * */ abstract class ControllerCase extends HttpTestCase { diff --git a/tests/Feature/Admin/DataCenter/AttachmentControllerTest.php b/tests/Feature/Admin/DataCenter/AttachmentControllerTest.php index 421ad9d1..71ff975b 100644 --- a/tests/Feature/Admin/DataCenter/AttachmentControllerTest.php +++ b/tests/Feature/Admin/DataCenter/AttachmentControllerTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class AttachmentControllerTest extends ControllerCase { diff --git a/tests/Feature/Admin/PassportControllerTest.php b/tests/Feature/Admin/PassportControllerTest.php index d0d712d5..9149e435 100644 --- a/tests/Feature/Admin/PassportControllerTest.php +++ b/tests/Feature/Admin/PassportControllerTest.php @@ -20,7 +20,6 @@ /** * @internal - * */ final class PassportControllerTest extends HttpTestCase { diff --git a/tests/Feature/Admin/Permission/MenuControllerTest.php b/tests/Feature/Admin/Permission/MenuControllerTest.php index 2094fa23..0fb748ac 100644 --- a/tests/Feature/Admin/Permission/MenuControllerTest.php +++ b/tests/Feature/Admin/Permission/MenuControllerTest.php @@ -19,7 +19,6 @@ /** * @internal - * */ final class MenuControllerTest extends CrudControllerCase { diff --git a/tests/Feature/Admin/Permission/RoleControllerTest.php b/tests/Feature/Admin/Permission/RoleControllerTest.php index 986c5c58..03477f83 100644 --- a/tests/Feature/Admin/Permission/RoleControllerTest.php +++ b/tests/Feature/Admin/Permission/RoleControllerTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class RoleControllerTest extends ControllerCase { diff --git a/tests/Feature/Admin/Permission/UserControllerTest.php b/tests/Feature/Admin/Permission/UserControllerTest.php index 3fe6cb8c..1bad9695 100644 --- a/tests/Feature/Admin/Permission/UserControllerTest.php +++ b/tests/Feature/Admin/Permission/UserControllerTest.php @@ -24,7 +24,6 @@ /** * @internal - * */ final class UserControllerTest extends ControllerCase { diff --git a/tests/Feature/Admin/PermissionControllerTest.php b/tests/Feature/Admin/PermissionControllerTest.php index 9992739c..f079bd85 100644 --- a/tests/Feature/Admin/PermissionControllerTest.php +++ b/tests/Feature/Admin/PermissionControllerTest.php @@ -23,7 +23,6 @@ /** * @internal - * */ final class PermissionControllerTest extends ControllerCase { diff --git a/tests/Feature/Admin/UserLoginLogControllerTest.php b/tests/Feature/Admin/UserLoginLogControllerTest.php index 6edb1339..49d887a4 100644 --- a/tests/Feature/Admin/UserLoginLogControllerTest.php +++ b/tests/Feature/Admin/UserLoginLogControllerTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class UserLoginLogControllerTest extends ControllerCase { diff --git a/tests/Feature/Admin/UserOperationLogControllerTest.php b/tests/Feature/Admin/UserOperationLogControllerTest.php index e705fb73..d90062cb 100644 --- a/tests/Feature/Admin/UserOperationLogControllerTest.php +++ b/tests/Feature/Admin/UserOperationLogControllerTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class UserOperationLogControllerTest extends ControllerCase { diff --git a/tests/Feature/Casbin/ApiTest.php b/tests/Feature/Casbin/ApiTest.php index 9b578bd8..04c95cc0 100644 --- a/tests/Feature/Casbin/ApiTest.php +++ b/tests/Feature/Casbin/ApiTest.php @@ -19,7 +19,6 @@ /** * @internal - * */ final class ApiTest extends TestCase { diff --git a/tests/Feature/Casbin/FactoryTest.php b/tests/Feature/Casbin/FactoryTest.php index 98466535..6bdd8bd3 100644 --- a/tests/Feature/Casbin/FactoryTest.php +++ b/tests/Feature/Casbin/FactoryTest.php @@ -19,7 +19,6 @@ /** * @internal - * */ final class FactoryTest extends TestCase { diff --git a/tests/Feature/Command/ApplicationInstallCommandTest.php b/tests/Feature/Command/ApplicationInstallCommandTest.php index 9f3f2b30..97481013 100644 --- a/tests/Feature/Command/ApplicationInstallCommandTest.php +++ b/tests/Feature/Command/ApplicationInstallCommandTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ #[Group('migrations')] final class ApplicationInstallCommandTest extends TestCase diff --git a/tests/Feature/Repository/AttachmentRepositoryTest.php b/tests/Feature/Repository/AttachmentRepositoryTest.php index 41813fa6..e7f557bd 100644 --- a/tests/Feature/Repository/AttachmentRepositoryTest.php +++ b/tests/Feature/Repository/AttachmentRepositoryTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class AttachmentRepositoryTest extends AbstractTestRepository { diff --git a/tests/Feature/Repository/MenuRepositoryTest.php b/tests/Feature/Repository/MenuRepositoryTest.php index 07f31a51..275f63b6 100644 --- a/tests/Feature/Repository/MenuRepositoryTest.php +++ b/tests/Feature/Repository/MenuRepositoryTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class MenuRepositoryTest extends AbstractTestRepository { diff --git a/tests/Feature/Repository/RoleRepositoryTest.php b/tests/Feature/Repository/RoleRepositoryTest.php index e96a07a2..393282b7 100644 --- a/tests/Feature/Repository/RoleRepositoryTest.php +++ b/tests/Feature/Repository/RoleRepositoryTest.php @@ -21,7 +21,6 @@ /** * @internal - * */ final class RoleRepositoryTest extends AbstractTestRepository { diff --git a/tests/Feature/Repository/UserLoginLogRepositoryTest.php b/tests/Feature/Repository/UserLoginLogRepositoryTest.php index f9ab54cd..0dfe81eb 100644 --- a/tests/Feature/Repository/UserLoginLogRepositoryTest.php +++ b/tests/Feature/Repository/UserLoginLogRepositoryTest.php @@ -13,6 +13,7 @@ namespace HyperfTests\Feature\Repository; use App\Model\UserLoginLog; +use App\Repository\Logstash\UserLoginLogRepository; use Carbon\Carbon; use Hyperf\Collection\Collection; use Hyperf\DbConnection\Model\Model; @@ -20,7 +21,6 @@ /** * @internal - * */ final class UserLoginLogRepositoryTest extends AbstractTestRepository { @@ -35,7 +35,7 @@ final class UserLoginLogRepositoryTest extends AbstractTestRepository * @property Carbon $login_time 登录时间 * @property string $remark 备注 */ - protected string $repositoryClass = \App\Repository\Logstash\UserLoginLogRepository::class; + protected string $repositoryClass = UserLoginLogRepository::class; protected function getAttributes(): array { diff --git a/tests/Feature/Repository/UserOperationLogRepositoryTest.php b/tests/Feature/Repository/UserOperationLogRepositoryTest.php index fbf18cd1..d079183c 100644 --- a/tests/Feature/Repository/UserOperationLogRepositoryTest.php +++ b/tests/Feature/Repository/UserOperationLogRepositoryTest.php @@ -13,6 +13,7 @@ namespace HyperfTests\Feature\Repository; use App\Model\UserOperationLog; +use App\Repository\Logstash\UserOperationLogRepository; use Faker\Provider\Internet; use Hyperf\Collection\Collection; use Hyperf\DbConnection\Model\Model; @@ -20,11 +21,10 @@ /** * @internal - * */ final class UserOperationLogRepositoryTest extends AbstractTestRepository { - protected string $repositoryClass = \App\Repository\Logstash\UserOperationLogRepository::class; + protected string $repositoryClass = UserOperationLogRepository::class; protected function getAttributes(): array { diff --git a/tests/Feature/Repository/UserRepositoryTest.php b/tests/Feature/Repository/UserRepositoryTest.php index e11f9cad..bfa82bcd 100644 --- a/tests/Feature/Repository/UserRepositoryTest.php +++ b/tests/Feature/Repository/UserRepositoryTest.php @@ -24,6 +24,7 @@ /** * @internal + * @coversNothing */ final class UserRepositoryTest extends AbstractTestRepository {