19 KiB
19 KiB
VWED任务记录接口文档
本文档描述了VWED系统任务运行记录相关的API接口,主要用于查询任务执行过程中的块运行情况和详情。
基础信息
- 基础路径:
/api/vwed-task-record
- 接口标签:
VWED任务运行记录
接口清单
序号 | 接口名称 | 接口路径 | 请求方式 | 接口描述 |
---|---|---|---|---|
1 | 获取任务块运行记录 | /blocks/{task_record_id} |
GET | 获取指定任务记录下的所有块运行情况 |
2 | 获取块记录详情 | /block/{block_record_id} |
GET | 获取指定块记录的详细信息 |
3 | 终止任务 | /stop/{task_record_id} |
POST | 停止指定任务记录下的所有运行任务实例 |
4 | 获取任务执行结果 | /execution/block/results/{task_record_id} |
GET | 获取指定任务记录的执行结果 |
5 | 获取任务记录详情 | /detail/{task_record_id} |
GET | 获取指定任务记录的详细信息 |
接口详情
1. 获取任务块运行记录
接口说明
获取指定任务记录下的所有块运行情况,包括每个块的运行状态、执行时间、输入输出参数等信息。
请求路径
GET /api/vwed-task-record/blocks/{task_record_id}
路径参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
task_record_id | string | 是 | 任务记录ID,由run_task接口返回的taskRecordId |
响应结果
成功响应:
{
"code": 200,
"message": "成功获取任务记录 {task_record_id} 的块运行情况",
"data": [
{
"id": "块记录ID",
"block_name": "块名称",
"block_id": "块ID",
"status": 块执行状态码,
"started_on": "开始时间",
"ended_on": "结束时间",
"ended_reason": "结束原因",
"block_execute_name": "块执行名称",
"block_input_params_value": {
"参数名": "参数值"
},
"block_out_params_value": {
"参数名": "参数值"
},
"remark": "备注"
}
]
}
失败响应:
{
"code": 500,
"message": "获取任务块运行情况失败: {错误信息}"
}
响应字段说明
字段名 | 类型 | 描述 |
---|---|---|
id | string | 块记录ID |
block_name | string | 块名称 |
block_id | string | 块ID |
status | integer | 块执行状态,1000:执行成功,1001:执行中,1002:未执行,2000:执行失败,2002:取消 |
started_on | string | 开始时间,ISO 8601格式 |
ended_on | string | 结束时间,ISO 8601格式 |
ended_reason | string | 结束原因 |
block_execute_name | string | 块执行名称 |
block_input_params_value | object | 块输入参数值 |
block_out_params_value | object | 块输出参数值 |
remark | string | 备注 |
示例
请求示例:
GET /api/vwed-task-record/blocks/7b84fd4d-e947-4ec7-8535-05ede5f8aa9d
响应示例:
{
"code": 200,
"message": "成功获取任务记录 7b84fd4d-e947-4ec7-8535-05ede5f8aa9d 的块运行情况",
"data": [
{
"id": "b5410c81-99b3-4d61-bb79-e54292d012d4",
"block_name": "-1",
"block_id": "-1",
"status": 1000,
"started_on": "2025-04-30T17:28:19.105648",
"ended_on": "2025-04-30T17:28:19.601597",
"ended_reason": "执行成功",
"block_execute_name": "RootBp",
"block_input_params_value": {},
"block_out_params_value": null,
"remark": "执行成功"
},
{
"id": "ee29eccd-11e8-490b-ac24-81f243771dda",
"block_name": "b1",
"block_id": "1",
"status": 1000,
"started_on": "2025-04-30T17:28:19.149185",
"ended_on": "2025-04-30T17:28:19.576944",
"ended_reason": "执行成功",
"block_execute_name": "IterateListBp",
"block_input_params_value": {
"list": "[1,2,3,4,5]"
},
"block_out_params_value": {
"index": 4,
"item": 5
},
"remark": "执行成功"
},
{
"id": "c944c7df-329c-468e-90ed-9e064ddccdbc",
"block_name": "b2",
"block_id": "2",
"status": 1000,
"started_on": "2025-04-30T17:28:19.457166",
"ended_on": "2025-04-30T17:28:19.488009",
"ended_reason": "执行成功",
"block_execute_name": "PrintBp",
"block_input_params_value": {
"message": "blocks.b1.item"
},
"block_out_params_value": null,
"remark": "执行成功"
}
]
}
2. 获取块记录详情
接口说明
获取指定块记录的详细信息,包括完整的输入输出参数、内部变量等数据。
请求路径
GET /api/vwed-task-record/block/{block_record_id}
路径参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
block_record_id | string | 是 | 块记录ID |
响应结果
成功响应:
{
"code": 200,
"message": "成功获取块记录详情",
"data": {
"id": "块记录ID",
"block_name": "块名称",
"block_id": "块ID",
"block_config_id": "块配置ID",
"block_input_params": {
"参数名": {
"type": "参数类型",
"value": "参数默认值",
"required": true/false
}
},
"block_input_params_value": {
"参数名": "参数值"
},
"block_out_params_value": {
"参数名": "参数值"
},
"block_internal_variables": {
"变量名": "变量值"
},
"block_execute_name": "块执行名称",
"task_id": "任务定义ID",
"task_record_id": "任务记录ID",
"started_on": "开始时间",
"ended_on": "结束时间",
"ended_reason": "结束原因",
"status": 块执行状态码,
"ctrl_status": 控制状态码,
"input_params": {
"参数名": {
"type": "参数类型",
"value": "参数默认值",
"required": true/false
}
},
"internal_variables": {
"变量名": "变量值"
},
"output_params": {
"参数名": "参数值"
},
"version": 版本号,
"remark": "备注"
}
}
失败响应:
{
"code": 404,
"message": "未找到ID为 {block_record_id} 的块记录"
}
响应字段说明
字段名 | 类型 | 描述 |
---|---|---|
id | string | 块记录ID |
block_name | string | 块名称 |
block_id | string | 块ID |
block_config_id | string | 块配置ID |
block_input_params | object | 块输入参数定义 |
block_input_params_value | object | 块输入参数值 |
block_out_params_value | object | 块输出参数值 |
block_internal_variables | object | 块内部变量 |
block_execute_name | string | 块执行名称 |
task_id | string | 任务定义ID |
task_record_id | string | 任务记录ID |
started_on | string | 开始时间,ISO 8601格式 |
ended_on | string | 结束时间,ISO 8601格式 |
ended_reason | string | 结束原因 |
status | integer | 块执行状态,1000:执行成功,1001:执行中,1002:未执行,2000:执行失败,2002:取消 |
ctrl_status | integer | 控制状态 |
input_params | object | 输入参数 |
internal_variables | object | 内部变量 |
output_params | object | 输出参数 |
version | integer | 版本号 |
remark | string | 备注 |
示例
请求示例:
GET /api/vwed-task-record/block/00b7dc0d-7c23-4dce-ae95-3618f2cad202
响应示例:
{
"code": 200,
"message": "成功获取块记录详情",
"data": {
"id": "00b7dc0d-7c23-4dce-ae95-3618f2cad202",
"block_name": "b1",
"block_id": "1",
"block_config_id": "",
"block_input_params": {
"keyRoute": {
"type": "Simple",
"value": "TK01",
"required": true
}
},
"block_input_params_value": {
"keyRoute": "TK01"
},
"block_out_params_value": null,
"block_internal_variables": {},
"block_execute_name": "CSelectAgvBp",
"task_id": "3273c7cb-b4bb-47df-9d47-17f96bc401fc",
"task_record_id": "5ce20794-2b45-4031-8de0-9df922f91bd1",
"started_on": "2025-04-30T08:36:37.847431",
"ended_on": "2025-04-30T08:36:37.959064",
"ended_reason": "选择执行机器人失败: 执行数据库异常,违反了完整性例如:违反惟一约束、违反非空限制、字段内容超出长度等",
"status": 2000,
"ctrl_status": null,
"input_params": {
"keyRoute": {
"type": "Simple",
"value": "TK01",
"required": true
}
},
"internal_variables": {},
"output_params": {
"blocks": {
"b1": null
}
},
"version": 1,
"remark": "选择执行机器人失败: 执行数据库异常,违反了完整性例如:违反惟一约束、违反非空限制、字段内容超出长度等"
}
}
3. 终止任务
接口说明
停止指定任务记录下的所有运行任务实例,同时禁用定时任务。
请求路径
POST /api/vwed-task-record/stop/{task_record_id}
路径参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
task_record_id | string | 是 | 任务记录ID |
响应结果
成功响应:
{
"code": 200,
"message": "任务终止成功",
"data": {
"task_record_id": "任务记录ID",
"status": 任务状态码,
"ended_on": "结束时间",
"ended_reason": "结束原因"
}
}
失败响应:
{
"code": 400,
"message": "任务终止失败: {错误信息}"
}
或
{
"code": 500,
"message": "任务记录终止失败: {错误信息}"
}
响应字段说明
字段名 | 类型 | 描述 |
---|---|---|
task_record_id | string | 任务记录ID |
status | integer | 任务状态码 |
ended_on | string | 结束时间,ISO 8601格式 |
ended_reason | string | 结束原因 |
示例
请求示例:
POST /api/vwed-task-record/stop/7b84fd4d-e947-4ec7-8535-05ede5f8aa9d
响应示例:
{
"code": 200,
"message": "任务终止成功",
"data": {
"task_record_id": "7b84fd4d-e947-4ec7-8535-05ede5f8aa9d",
"status": 2002,
"ended_on": "2025-04-30T17:35:42.105648",
"ended_reason": "任务终止"
}
}
4. 获取任务执行结果
接口说明
获取指定任务记录的执行结果,包括任务的输出参数和执行状态等信息。
请求路径
GET /api/vwed-task-record/execution/block/results/{task_record_id}
路径参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
task_record_id | string | 是 | 任务记录ID |
响应结果
成功响应:
{
"code": 200,
"message": "成功获取任务记录执行结果",
"data": [
{
"created_at": "2025-05-09T10:17:48.447047",
"context": "[CacheDataBp] 数据缓存成功: test",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.407731",
"context": "[RootBp] c1973f22-b098-47f7-80ae-97e9df1644ae",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.611951",
"context": "[PrintBp] 打印成功@{'cache_data': 1}",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.518772",
"context": "[GetCacheDataBp] 获取缓存数据成功: test",
"status": 1000
}
]
}
失败响应:
{
"code": 404,
"message": "未找到ID为 {task_record_id} 的任务记录"
}
或
{
"code": 500,
"message": "获取任务记录执行结果失败: {错误信息}"
}
响应字段说明
字段名 | 类型 | 描述 |
---|---|---|
created_at | string | 记录创建时间,ISO 8601格式 |
context | string | 执行上下文信息,包含块名称和执行结果 |
status | integer | 执行状态码,1000:执行成功,1001:执行中,1002:未执行,2000:执行失败,2002:取消 |
示例
请求示例:
GET /api/vwed-task-record/execution/block/results/7b84fd4d-e947-4ec7-8535-05ede5f8aa9d
响应示例:
{
"code": 200,
"message": "成功获取任务记录执行结果",
"data": [
{
"created_at": "2025-05-09T10:17:48.447047",
"context": "[CacheDataBp] 数据缓存成功: test",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.407731",
"context": "[RootBp] c1973f22-b098-47f7-80ae-97e9df1644ae",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.611951",
"context": "[PrintBp] 打印成功@{'cache_data': 1}",
"status": 1000
},
{
"created_at": "2025-05-09T10:17:48.518772",
"context": "[GetCacheDataBp] 获取缓存数据成功: test",
"status": 1000
}
]
}
5. 获取任务记录详情
接口说明
获取指定任务记录的详细信息,包括任务的基本信息、执行状态、开始结束时间等。
请求路径
GET /api/vwed-task-record/detail/{task_record_id}
路径参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
task_record_id | string | 是 | 任务记录ID |
响应结果
成功响应:
{
"code": 200,
"message": "成功获取任务记录详情",
"data": {
"id": "任务记录ID",
"task_id": "任务定义ID",
"task_name": "任务名称",
"task_version": 任务版本,
"status": 任务状态码,
"input_params": {
"参数名": "参数值"
},
"started_on": "开始时间",
"ended_on": "结束时间",
"ended_reason": "结束原因",
"execution_time": 执行时长(毫秒),
"created_at": "创建时间",
"updated_at": "更新时间",
"agv_id": "执行任务的AGV设备ID",
"parent_task_record_id": "父任务记录ID",
"root_task_record_id": "根任务记录ID",
"state_description": "状态描述",
"if_have_child_task": 是否有子任务,
"periodic_task": 是否为周期任务,
"priority": 优先级,
"work_stations": "工作站",
"work_types": "工作类型",
"variables": {
"变量名": "变量值"
},
"source_type": 任务来源类型,
"source_system": "来源系统标识",
"source_user": "下达任务的用户ID或账号",
"source_device": "下达任务的硬件设备标识",
"source_ip": "下达任务的IP地址",
"source_time": "任务下达时间",
"source_client_info": "客户端设备信息",
"source_remarks": "任务来源备注信息"
}
}
失败响应:
{
"code": 404,
"message": "未找到ID为 {task_record_id} 的任务记录"
}
或
{
"code": 500,
"message": "获取任务记录详情失败: {错误信息}"
}
响应字段说明
字段名 | 类型 | 描述 |
---|---|---|
id | string | 任务记录ID |
task_id | string | 任务定义ID(对应def_id字段) |
task_name | string | 任务名称(对应def_label字段) |
task_version | integer | 任务定义版本(对应def_version字段) |
status | integer | 任务状态码,1000:执行成功,1001:执行中,1002:队列中,2000:失败,2001:取消,2002:暂停 |
input_params | object | 输入参数,JSON格式 |
started_on | string | 开始时间,对应first_executor_time字段,ISO 8601格式 |
ended_on | string | 结束时间,ISO 8601格式 |
ended_reason | string | 结束原因 |
execution_time | integer | 执行时长(毫秒),根据开始和结束时间计算或executor_time字段值 |
created_at | string | 创建时间,ISO 8601格式 |
updated_at | string | 更新时间,ISO 8601格式 |
agv_id | string | 执行任务的AGV设备ID |
parent_task_record_id | string | 父任务记录ID |
root_task_record_id | string | 根任务记录ID |
state_description | string | 状态描述 |
if_have_child_task | boolean | 是否有子任务 |
periodic_task | integer | 是否为周期任务,0:否,1:是 |
priority | integer | 优先级,数值越大优先级越高 |
work_stations | string | 工作站 |
work_types | string | 工作类型 |
variables | object | 变量信息,JSON格式 |
source_type | integer | 任务来源类型(1:系统调度,2:呼叫机,3:第三方系统,4:手持电脑) |
source_system | string | 来源系统标识(如:WMS、MES等系统编号) |
source_user | string | 下达任务的用户ID或账号 |
source_device | string | 下达任务的硬件设备标识(设备ID、MAC地址等) |
source_ip | string | 下达任务的IP地址 |
source_time | string | 任务下达时间,ISO 8601格式 |
source_client_info | string | 客户端设备信息(用户代理、浏览器、操作系统等) |
source_remarks | string | 任务来源备注信息 |
示例
请求示例:
GET /api/vwed-task-record/detail/7b84fd4d-e947-4ec7-8535-05ede5f8aa9d
响应示例:
{
"code": 200,
"message": "成功获取任务记录详情",
"data": {
"id": "7b84fd4d-e947-4ec7-8535-05ede5f8aa9d",
"task_id": "3273c7cb-b4bb-47df-9d47-17f96bc401fc",
"task_name": "示例任务",
"task_version": 2,
"status": 1000,
"input_params": {
"from": "A",
"to": "B"
},
"started_on": "2025-04-30T17:28:19.105648",
"ended_on": "2025-04-30T17:28:20.601597",
"ended_reason": "执行成功",
"execution_time": 1496,
"created_at": "2025-04-30T17:28:19.100000",
"updated_at": "2025-04-30T17:28:20.610000",
"agv_id": "AGV001",
"parent_task_record_id": null,
"root_task_record_id": "7b84fd4d-e947-4ec7-8535-05ede5f8aa9d",
"state_description": "任务已完成",
"if_have_child_task": false,
"periodic_task": 0,
"priority": 1,
"work_stations": "WS001",
"work_types": "运输任务",
"variables": {
"position": {"x": 100, "y": 200}
},
"source_type": 1,
"source_system": "WMS",
"source_user": "admin",
"source_device": "PC-001",
"source_ip": "192.168.1.100",
"source_time": "2025-04-30T17:28:18.000000",
"source_client_info": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)",
"source_remarks": "测试任务"
}
}