tianfeng_task_modules/api_doc/数据表结构文档.md

192 lines
7.8 KiB
Markdown
Raw Normal View History

2025-03-18 18:34:03 +08:00
# 天风任务系统数据表结构文档
## 目录
- [组件参数相关表](#组件参数相关表)
- [组件参数定义表 (component_parameter_definitions)](#组件参数定义表-component_parameter_definitions)
- [组件参数值表 (component_parameter_values)](#组件参数值表-component_parameter_values)
- [参数模板表 (parameter_templates)](#参数模板表-parameter_templates)
- [任务相关表](#任务相关表)
- [任务表 (tasks)](#任务表-tasks)
- [任务实例表 (task_instances)](#任务实例表-task_instances)
- [任务输入参数表 (task_input_params)](#任务输入参数表-task_input_params)
## 组件参数相关表
### 组件参数定义表 (component_parameter_definitions)
该表用于定义组件类型的输入参数。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键 |
| component_type_id | Integer | 是 | 组件类型ID外键关联组件类型表 |
| code | String(100) | 是 | 参数代码 |
| name | String(100) | 是 | 参数名称 |
| description | String(500) | 否 | 参数描述 |
| parameter_type | Enum(ParameterType) | 是 | 参数类型,枚举值 |
| is_required | Boolean | 否 | 是否必填默认False |
| default_value | JSON | 否 | 默认值 |
| validation_rules | JSON | 否 | 验证规则 |
| options | JSON | 否 | 选项(用于选择器类型) |
| ui_config | JSON | 否 | UI配置 |
| order | Integer | 否 | 排序默认0 |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
**参数类型枚举(ParameterType)**:
- STRING = 'string'(字符串)
- NUMBER = 'number'(数字)
- BOOLEAN = 'boolean'(布尔值)
- ARRAY = 'array'(数组)
- OBJECT = 'object'(对象)
- DATE = 'date'(日期)
- TIME = 'time'(时间)
- DATETIME = 'datetime'(日期时间)
- FILE = 'file'(文件)
- SELECT = 'select'(选择器)
- MULTI_SELECT = 'multi_select'(多选选择器)
- CUSTOM = 'custom'(自定义类型)
### 组件参数值表 (component_parameter_values)
该表用于存储组件实例的参数值。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键 |
| component_instance_id | Integer | 是 | 组件实例ID |
| parameter_code | String(100) | 是 | 参数代码 |
| value | JSON | 否 | 参数值 |
| value_format | Enum(ParameterValueFormat) | 是 | 值格式默认SIMPLE |
| is_expression | Boolean | 否 | 是否为表达式默认False |
| expression | String(500) | 否 | 表达式内容 |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
**参数值格式枚举(ParameterValueFormat)**:
- SIMPLE = 'simple'(简单值)
- JSON = 'json'JSON格式
- EXPRESSION = 'expression'(表达式)
### 参数模板表 (parameter_templates)
该表用于存储常用的参数配置模板。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键 |
| name | String(100) | 是 | 模板名称 |
| component_type_id | Integer | 是 | 组件类型ID外键关联组件类型表 |
| description | String(500) | 否 | 模板描述 |
| parameter_values | JSON | 是 | 参数值配置 |
| is_system | Boolean | 否 | 是否为系统模板默认False |
| created_by | String(100) | 否 | 创建用户ID |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
## 任务相关表
### 任务表 (tasks)
该表表示一个任务的基本信息。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键,自增 |
| task_id | String(36) | 是 | 任务UUID用于外部引用唯一索引 |
| name | String(100) | 是 | 任务名称 |
| task_type | String(100) | 是 | 任务类型 |
| description | String(500) | 否 | 任务描述 |
| is_template | Boolean | 否 | 是否为模板默认False |
| template_description | String(500) | 否 | 模板描述 |
| current_version_id | Integer | 否 | 当前版本ID |
| is_enabled | Boolean | 否 | 是否启用默认True |
| created_by | String(100) | 否 | 创建用户ID |
| updated_by | String(100) | 否 | 最后更新用户ID |
| is_scheduled | Boolean | 否 | 是否为定时任务默认False |
| schedule_expression | String(100) | 否 | 定时表达式Cron格式 |
| next_run_time | DateTime | 否 | 下次执行时间 |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
**任务类型枚举(TaskType)**:
- NORMAL普通任务
- SCHEDULED定时任务
**任务状态枚举(TaskStatus)**:
- PENDING待执行
- RUNNING执行中
- COMPLETED已完成
- CANCELLED已取消
- FAILED执行失败
- PAUSED暂停中
- WAITING等待中
### 任务实例表 (task_instances)
该表用于存储任务管理的数据,记录每次编辑任务的实例。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键,自增 |
| instance_id | String(36) | 是 | 实例唯一ID用于外部引用唯一索引 |
| task_id | String(50) | 是 | 关联的任务ID外键关联tasks表 |
| name | String(100) | 是 | 任务名称(复制自任务表) |
| variables | JSON | 否 | 任务变量 |
| priority | Integer | 否 | 任务优先级默认1 |
| block_outputs | JSON | 否 | 块输出参数 |
| context_params | JSON | 否 | 上下文参数 |
| status | Enum(TaskInstanceStatus) | 否 | 任务实例状态默认EDITING |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
**任务实例状态枚举(TaskInstanceStatus)**:
- EDITING编辑中
- PUBLISHED已发布
### 任务输入参数表 (task_input_params)
该表用于存储任务输入参数的数据。
| 字段名 | 类型 | 是否必填 | 描述 |
| --- | --- | --- | --- |
| id | Integer | 是 | 主键ID自增 |
| param_id | String(36) | 是 | 参数唯一ID用于外部引用唯一索引 |
| instance_id | String(36) | 是 | 关联的任务实例ID索引 |
| task_id | String(50) | 是 | 任务ID冗余存储便于查询索引 |
| param_name | String(50) | 否 | 参数名称,变量名 |
| label | String(100) | 否 | 参数标签,显示名称 |
| param_type | String(20) | 是 | 参数类型 |
| required | Boolean | 否 | 是否必填默认False |
| default_value | Text | 否 | 默认值JSON序列化的字符串 |
| description | Text | 否 | 参数说明 |
| is_system | Boolean | 否 | 是否系统参数默认False |
| is_readonly | Boolean | 否 | 是否只读参数默认False |
| sort_order | Integer | 否 | 排序顺序默认0 |
| created_at | DateTime | 否 | 创建时间 |
| updated_at | DateTime | 否 | 更新时间 |
| is_deleted | Boolean | 否 | 是否删除默认False |
## 表关系说明
1. **组件参数关系**:
- `ComponentParameterDefinition` 定义了组件类型的参数
- `ComponentParameterValue` 存储了组件实例的具体参数值
- `ParameterTemplate` 提供了组件参数的模板配置
2. **任务关系**:
- `Task` 是任务的主表,包含基本信息
- `TaskInstance` 是任务的实例表,记录每次编辑的状态
- `TaskInputParam` 存储任务的输入参数
3. **关联关系**:
- 任务(Task) 1:N 任务实例(TaskInstance)
- 任务实例(TaskInstance) 1:N 任务输入参数(TaskInputParam)
- 组件类型 1:N 组件参数定义(ComponentParameterDefinition)
- 组件类型 1:N 参数模板(ParameterTemplate)