系统工具
系统工具是平台内置的运维脚本集合,管理员可以按租户(或全部租户)批量执行数据修复与维护操作。
概述
从 开发中心 → 开发设置 → 系统工具 进入系统工具页面。该页签仅对公共租户或静态租户可见。
页面会从后端动态加载所有可用的系统工具,以折叠面板展示。每个工具展开后包含:
- 执行租户:选择要执行的租户,或选择
ALL_TENANTS对全部租户批量执行。 - 工具参数:根据工具定义动态渲染的输入项。
- 执行:点击后弹窗确认,确认后开始执行并展示每个租户的执行结果。
高危操作
系统工具包含 SQL 执行、重置全部用户密码等高危能力,执行前请确认租户范围与参数,避免影响线上数据。
使用步骤
- 展开需要使用的工具面板,阅读工具描述。
- 在执行租户中选择目标租户;若需要对所有租户执行,选择
ALL_TENANTS。 - 填写工具参数(带
*的为必填)。 - 点击执行,在确认弹窗中确认。
- 在执行结果卡片中查看逐租户的执行输出。
内置工具
| 工具名称 | 说明 |
|---|---|
| SQL Execution Tool | 在指定租户库上执行 SQL(非查询) |
| SQL Query Tool | 在指定租户库上执行查询 SQL 并返回结果 |
| Re-Register tenant database connection | 从连接池移除租户数据库注册并重新注册 |
| Warning!!! Reset All Users Password Tool | 重置租户内所有用户的密码 |
| AI knowledge base maintenance tool | 清理 AI 知识库数据或重建知识库表 |
| Init Tenant Default Settings Tool | 初始化租户默认设置 |
| Correct AppId of meta object sub-items | 以对象绑定的 AppId 为准,修正其子项(字段、表单、视图、接口、审批流、流程版本)的 AppId |
工具动态扩展
系统工具由后端注册的实现类动态提供,新增工具无需修改前端页面。
下一步
工具参数与接口明细
以下内容面向技术实现与 AI 检索。
页面接口
| 接口 | 方法 | 说明 |
|---|---|---|
/api/SystemTool/GetMetadata | POST | 获取全部系统工具元数据,返回 SystemToolMeta[] |
/api/TenantInfo/GetAllTenantIdList | GET | 获取全部租户 ID,用于执行租户下拉选项 |
/api/SystemTool/Execute | POST | 执行指定系统工具 |
执行请求结构
{
"data": {
"Tenant": "acme",
"Name": "SqlQueryTool",
"Parameters": {
"SQL": "select count(*) from system_user"
}
}
}
| 参数名 | 类型 | 含义 | 取值 |
|---|---|---|---|
Tenant | string | 执行租户 | 租户 ID,或 ALL_TENANTS(前端展开为全部租户逐个执行) |
Name | string | 工具名称 | 工具实现类的类名,如 SqlQueryTool |
Parameters | object | 工具参数 | 键值对,键与工具元数据的 Params[].Name 对应 |
批量执行
选择 ALL_TENANTS 时,前端会取全部租户 ID 逐个调用 Execute,并在结果区按 [序号/总数] Tenant {tenantId} start... 输出执行进度。
工具元数据结构
GET /api/SystemTool/GetMetadata 返回 SystemToolMeta[]:
[
{
"Title": "SQL Query Tool",
"Name": "SqlQueryTool",
"Description": "",
"Params": [
{
"Name": "SQL",
"Description": "",
"FieldType": 2,
"Required": true,
"Options": []
}
]
}
]
| 属性名 | 类型 | 含义 | 取值/存储值 |
|---|---|---|---|
Title | string | 工具标题 | 折叠面板标题 |
Name | string | 工具名称 | 由后端反射填充为工具实现类名 |
Description | string | 工具描述 | 可为空,展示为提示条 |
Params | array | 参数定义列表 | SystemToolParamMeta[] |
Params 单项结构:
| 属性名 | 类型 | 含义 | 取值/存储值 |
|---|---|---|---|
Name | string | 参数名 | 提交时作为 Parameters 的键 |
Description | string | 参数说明 | 展示为占位符与提示 |
FieldType | int | 字段类型 | 0 = Text,1 = Number,2 = Textarea,3 = Select |
Required | bool | 是否必填 | true / false |
Options | string[] | 选项列表 | FieldType = 3(Select)时使用 |
各工具参数
工具名称(Name) | 参数 |
|---|---|
SqlTool | SQL(Textarea,必填) |
SqlQueryTool | SQL(Textarea,必填) |
ReRegisterTenantDbConnectionTool | 无(不可对公共租户 common 执行) |
ResetSystemAllUsersPasswordTool | 无 |
AiKnowledgeMaintenanceTool | Operation(Select,必填,ClearData / RebuildTable)、SourceType(Select,仅 ClearData 使用,All / Doc / OpenApi / ConfigSchema) |
InitTenantDefaultSettingsTool | 无 |
MetaObjectSubItemAppIdCorrectTool | MetaAppId(Text,必填) |
参数枚举值
SystemToolParamFieldTypeEnum 的取值为 Text = 0、Number = 1、Textarea = 2、Select = 3;AiKnowledgeMaintenanceTool 的 Operation 取值 ClearData / RebuildTable,其中 RebuildTable 会删除并重建知识库表,SourceType 中 All 表示全部来源、Doc、OpenApi、ConfigSchema 对应 AiKnowledgeSourceType 枚举。
执行响应
Execute 返回 ResponseResult<object>,data 为工具执行结果(对象或字符串列表),message 为提示信息,前端将其逐条打印在执行结果区。