# 天风任务系统枚举值说明文档 本文档详细说明了系统中使用的各种枚举值,用于开发和接口调用参考。 ## 目录 - [参数类型枚举](#参数类型枚举) - [参数值格式枚举](#参数值格式枚举) - [任务类型枚举](#任务类型枚举) - [任务状态枚举](#任务状态枚举) - [任务实例状态枚举](#任务实例状态枚举) ## 参数类型枚举 组件参数定义表使用的参数类型枚举(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' | 自定义类型参数 | ## 参数值格式枚举 组件参数值表使用的值格式枚举(ParameterValueFormat): | 枚举值 | 说明 | 描述 | | --- | --- | --- | | SIMPLE | 'simple' | 简单值格式,直接使用值 | | JSON | 'json' | JSON格式,值需要经过JSON解析 | | EXPRESSION | 'expression' | 表达式格式,值需要经过表达式引擎解析 | ## 任务类型枚举 任务表使用的任务类型枚举(TaskType): | 枚举值 | 说明 | 描述 | | --- | --- | --- | | NORMAL | 'normal' | 普通任务 | | SCHEDULED | 'scheduled' | 定时任务,需要按照计划自动执行 | ## 任务状态枚举 任务表使用的任务状态枚举(TaskStatus): | 枚举值 | 说明 | 描述 | | --- | --- | --- | | PENDING | 'pending' | 待执行状态,任务已创建但尚未开始执行 | | RUNNING | 'running' | 执行中状态,任务正在执行 | | COMPLETED | 'completed' | 已完成状态,任务已成功执行完成 | | CANCELLED | 'cancelled' | 已取消状态,任务被手动取消 | | FAILED | 'failed' | 执行失败状态,任务执行过程中发生错误 | | PAUSED | 'paused' | 暂停中状态,任务执行被暂停 | | WAITING | 'waiting' | 等待中状态,任务等待某些条件满足后继续执行 | ## 任务实例状态枚举 任务实例表使用的状态枚举(TaskInstanceStatus): | 枚举值 | 说明 | 描述 | | --- | --- | --- | | EDITING | 'editing' | 编辑中状态,任务实例正在被编辑 | | PUBLISHED | 'published' | 已发布状态,任务实例已发布,可以被执行 | ## 使用示例 ### 参数类型的使用示例 ```python # 在创建组件参数定义时指定参数类型 parameter_def = ComponentParameterDefinition.create_parameter_definition( component_type_id=1, code="input_text", name="输入文本", parameter_type=ParameterType.STRING, description="请输入文本内容", is_required=True ) ``` ### 任务类型的使用示例 ```python # 创建一个定时任务 task = Task.create_task( name="每日数据同步", task_type=TaskType.SCHEDULED, description="每天凌晨2点执行数据同步", is_scheduled=True, schedule_expression="0 2 * * *" ) ``` ### 任务状态的使用示例 ```python # 检查任务是否正在执行 if task.status == TaskStatus.RUNNING: print("任务正在执行中,请稍后...") ``` ### 任务实例状态的使用示例 ```python # 获取所有编辑中的任务实例 editing_instances = TaskInstance.query.filter( TaskInstance.status == TaskInstanceStatus.EDITING, TaskInstance.is_deleted == False ).all() ```