任务 API
相关API中任务状态参数值说明
任务状态参数值有 waiting, finished, submited,对应任务表 SA_Task中sStatusID 字段的说明如下:
waiting 查的是 tesReady(尚未处理),tesExecuting(正在处理)状态的数据
finished 查的是 tesAborted(已终止),tesFinished(已完成),tesReturned(已回退),tesTrainsmited(已转发)状态的数据
submited 查的是 SA_Task 表中 sCreatorFID 字段值为调用 API 传的 org 参数值,并且 sExecutorFID 字段有值的数据
waiting 和 finished 同时查时查的是 SA_Task 表中 sExecutorFID 字段值为调用 API 传的 org 参数值的数据
查询任务
- 请求地址:/wf/biz/task
- 请求方式:GET
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
filter |
否 |
String |
过滤条件,例如 SA_Task.sName='张三' AND SA_Task.sProcess='xx' |
offset |
否 |
Int |
偏移量,默认值是0 |
limit |
否 |
Int |
分页大小,默认值20,-1表示所有数据 |
distinct |
否 |
Boolean |
去除重复行,默认值 false |
columns |
否 |
String |
返回列,默认所有列 |
orderBy |
否 |
String |
排序方式,例如 sName DESC,sProcess ASC |
variabels |
否 |
JSONObject |
变量,例如 {"justep.shard": "histroy"} |
返回结果:
返回头
Content-Type: application/json
Content-Range: 分页信息,例如0-19/100
返回体
[{
"id": "主键",
"sName": "名称",
...
}]
根据组织查询任务
- 请求地址:/wf/biz/task/queryByOrg
- 请求方式:GET
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
filter |
否 |
String |
过滤条件,例如 SA_Task.sName='张三' AND SA_Task.sProcess='xx' |
offset |
否 |
Int |
偏移量,默认值是0 |
limit |
否 |
Int |
分页大小,默认值20,-1表示所有数据 |
distinct |
否 |
Boolean |
去除重复行,默认值 false |
columns |
否 |
String |
返回列,默认所有列 |
orderBy |
否 |
String |
排序方式,例如 sName DESC,sProcess ASC |
variabels |
否 |
JSONObject |
变量,例如 {"justep.shard": "histroy"} |
status |
否 |
String |
任务状态,取值范围["waiting"、 "finished"、 "submited"],默认值 waiting,允许多值,使用 , 分隔 |
org |
否 |
String |
组织范围,可以是组织的 ID 或 FID,默认是当前人;允许多值,使用 , 分隔 |
返回结果:
Content-Type: application/json
Content-Range: 分页信息,例如0-19/100
[{
"id": "主键",
"sName": "名称",
...
}]
查询任务数
- 请求地址:/wf/biz/task/count
- 请求方式:GET
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
filter |
否 |
String |
过滤条件,例如只查询待办数 SA_Task.sKindID<>'tkNotice' |
status |
否 |
String |
任务状态,取值范围["waiting"、 "finished"、 "submited"],默认值 waiting,允许多值,使用 , 分隔 |
org |
否 |
String |
组织范围,可以是组织的 ID 或 FID,默认是当前人;允许多值,使用 , 分隔 |
执行任务
- 请求地址:/wf/biz/task/execute
- 请求方式:POST
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
task |
是 |
String |
任务标识 |
executor |
是 |
String |
执行者信息,组织 FID |
{
"task": "任务标识",
"executor": "组织FID"
}
新建任务
- 请求地址:/wf/biz/task
- 请求方式:PUT
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
name |
是 |
String |
任务名称 |
executorFIDs |
是 |
List |
执行者信息,组织 FID 列表 |
data |
是 |
String |
业务数据标识 |
process |
是 |
String |
关联的流程 |
activity |
是 |
String |
关联的环节 |
curl |
是 |
String |
查看地址 |
eurl |
是 |
String |
处理地址 |
options |
否 |
JSONObject |
其它任务属性 |
kind |
是 |
String |
任务类型,取值范围["notice", "task"] |
mode |
否 |
String |
任务模式,取值范围["together", "singleness"],together 表示有多个执行人时形成父子任务,singleness 表示有多个执行人时形成独立的任务 |
{
"name": "",
"executorFIDs": [],
"data": "",
"process": "",
"activity": "",
"curl": "",
"eurl": "",
"options": {},
"kind": "notice",
"mode": "together"
}
新建外部任务
- 请求地址:/wf/biz/task/external
- 请求方式:PUT
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
请求体 |
是 |
JSONArray |
任务信息, id 表示主键, 其它属性名参考《流程数据库表结构》任务表的字段列表。 有两个特殊的属性名:执行者编码 executeCode 和创建者编码 creatorCode |
[{
"id": "", //任务ID, 长度32, 允许为空
"sName": "", //任务名称
"executorCode": "", //执行者编码
"creatorCode": "", //创建者编码,允许为空,默认当前人
"sCURL": "", //提交界面的 URL
"sEURL": "", //处理界面的 URL
"sData1": "", //业务主键,长度36, 允许为空
"sTypeName": "", //任务所在系统
"sCreateTime": "2021-09-21 12:00:00", //创建时间
"sExecuteTime": "2021-09-21 12:00:00", //处理时间
"sLimitTime": "2021-09-21 12:00:00", //限制时间
"sExpectFinishTime": "2021-09-21 12:00:00", //预计结束时间
"sActualFinishTime": "2021-09-21 12:00:00", //实际结束时间
}]
{
"ids": [ //成功插入任务的 id 列表
"83A2CD4E996C445E896BC764BDF57605",
"8D851E622C304F16A8CE006E76110116",
"D1C4B56C798B4369A0EC91392D5C7DD0",
"2F360D85E8A2496392B66EB8D7D84130"
],
"errors": [{ //插入错误信息
"id": "", //插入出错的任务 id
"name": "", //插入出错的任务 name
"reason": "" //插入出错原因
}]
}
更新任务
- 请求地址:/wf/biz/task
- 请求方式:POST
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
请求体 |
是 |
JSONObject |
任务信息, id 表示主键, 其它属性名参考《流程数据库表结构》任务表的字段列表。 有两个特殊的属性名:执行者编码 executeCode 和创建者编码 creatorCode |
{
"id": "主键",
"sName": "名称",
"executeCode": "xx",
"sStatusID": "tesFinished",
"sStatusName": "已完成",
"sExecuteTime": "2021-09-21 12:00:00", //处理时间
"sActualFinishTime": "2021-09-21 12:00:00", //实际结束时间
}
{
"ids": [ //成功更新任务的 id 列表
"83A2CD4E996C445E896BC764BDF57605",
"8D851E622C304F16A8CE006E76110116",
"D1C4B56C798B4369A0EC91392D5C7DD0",
"2F360D85E8A2496392B66EB8D7D84130"
],
"errors": [{ //更新错误信息
"id": "", //更新出错的任务 id
"name": "", //更新出错的任务 name
"reason": "" //更新出错原因
}]
}
任务状态 sStatusID 和 sStatusName 的取值范围如下:
sStatusID |
sStatusName |
tesFinished |
已完成 |
tesReady |
尚未处理 |
tesExecuting |
正在处理 |
tesSleeping |
暂缓处理 |
tesCanceled |
已取消 |
tesAborted |
已终止 |
tesPaused |
已暂停 |
tesTransmited |
已转发 |
tesReturned |
已回退 |
任务提醒
- 请求地址:/wf/biz/task/remind
- 请求方式:POST
- 输入参数:
参数名称 |
必选 |
类型 |
描述 |
task |
是 |
String |
任务标识 |
channel |
否 |
String |
提醒方式 |
templateCode |
否 |
String |
提醒使用的模板,默认使用 TASK_MANAGE |