feat(system): 完善系统管理接口及权限管理功能
Some checks failed
Lint Code / Lint Code (push) Failing after 10m12s

- 删除 mock 中系统管理路由冗余数据,前端统一路由管理
- 飞书登录接口响应数据结构重构,新增登录状态及用户信息查询方法
- 重构系统接口模块,新增权限、角色、用户、部门、菜单等完整类型及API实现
- 新增项目初始化相关接口及数据类型支持
- 调整登录页及相关调用,适配飞书登录新接口返回
- 统一接口响应状态码判定,修正多处 code === 0 为 code === 200
- 新增系统管理路由模块,包含用户、角色、权限、菜单、部门页面
- 账号设置页面新增角色与权限展示,丰富用户信息显示
- 权限管理页面新增增删改查功能,提供表单校验与列表操作
- 优化权限表格展示和操作体验,支持批量删除及树形结构显示
- 兼容性优化,调整部门与菜单管理hook中code判断,避免误判
- 新增菜单和部门管理相关接口及类型定义
- 更新 OpenAPI 配置,规范角色菜单权限相关接口定义
- 新增权限管理表单组件及校验规则,支持增删改权限项
- 规范权限管理模块代码结构及变量命名,提高维护性
This commit is contained in:
2026-03-27 20:06:58 +08:00
parent bd809479e6
commit 1b3271fa35
21 changed files with 1432 additions and 224 deletions

View File

@@ -7,20 +7,30 @@
},
"tags": [],
"paths": {
"/api/v1/auth/feishu/login": {
"post": {
"summary": "飞书OAuth登录接口前端回调后调用",
"/api/v1/system/role/{id}/menu-ids": {
"get": {
"summary": "查询角色的菜单权限ID列表只返回菜单类型的权限",
"deprecated": false,
"description": "前端从飞书回调中获取code然后调用此接口完成登录",
"description": "",
"tags": [],
"parameters": [
{
"name": "code",
"in": "query",
"description": "飞书授权码",
"name": "id",
"in": "path",
"description": "",
"required": true,
"schema": {
"type": "string"
"type": "integer"
}
},
{
"name": "Authorization",
"in": "header",
"description": "",
"example": "Bearer 000b7e25-53b2-42a3-a39b-9f4cb03644ba",
"schema": {
"type": "string",
"default": "Bearer 000b7e25-53b2-42a3-a39b-9f4cb03644ba"
}
}
],
@@ -30,8 +40,7 @@
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BaseResponseMapObject",
"description": "登录结果包含token和用户信息"
"$ref": "#/components/schemas/BaseResponseListLong"
}
}
}
@@ -43,7 +52,7 @@
},
"components": {
"schemas": {
"BaseResponseMapObject": {
"BaseResponseListLong": {
"type": "object",
"properties": {
"code": {
@@ -51,26 +60,17 @@
"description": ""
},
"data": {
"type": "object",
"properties": {
"isLogin": {
"type": "boolean"
},
"userId": {
"$ref": "#/components/schemas/userId"
}
"type": "array",
"items": {
"type": "integer"
},
"description": ""
},
"message": {
"description": "",
"type": "null"
"type": "string",
"description": ""
}
}
},
"userId": {
"type": "object",
"properties": {}
}
},
"responses": {},