Claim and Complete Task¶
认领并提交任务表单,完成任务。
请求格式¶
POST https://{apigw-address}/enos-bpm-service/v2.0/work/tasks/{taskId}/claim-complete
请求参数(Header)¶
名称 |
位置 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
Authorization |
Header |
必需 |
String |
Access Token,以 Bearer Token 表示,需要通过调用 Log In 或 Refresh Access Token 接口后获取。 |
请求参数(URI)¶
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
taskId |
Query |
必需 |
String |
任务 ID。 |
请求参数(Body)¶
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
formId |
可选 |
String |
提交的表单 ID。 |
values |
必需 |
Map(键为 String,值为 Object) |
表单的提交数据,键为表单变量名,值为表单提交值。 |
outcome |
可选 |
String |
表单操作的键。 |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
Boolean |
任务是否完成。 |
错误码¶
代码 |
描述 |
---|---|
33404 |
任务 ID 不存在。 |
33500 |
必填字段不存在。 |
示例¶
请求示例¶
url: https://{apigw-address}/enos-bpm-service/v2.0/work/tasks/{taskId}/claim-complete
method: POST
headers: {"Authorization":"Bearer {your_access_token}"}
requestBody:
{
"formId": "task_form_id",
"outcome": "form_outcome",
"values": {
"field1": "value1",
"field2": "value2"
}
}
返回示例¶
{
"code": 0,
"msg": "",
"data": true
}
Java SDK 调用示例¶
public class BpmSdkTest{
@Test
public void claimCompleteTest() {
String bearerToken = "your_bearer_token";
String taskId = "taskId";
CompleteFormRepresentation completeFormRepresentation = new CompleteFormRepresentation();
completeFormRepresentation.setFormId("form_id");
completeFormRepresentation.setOutcome("the_outcome_of_form");
Map<String, Object> values = new HashMap<>();
values.put("field1", "value1");
values.put("field2", "value2");
completeFormRepresentation.setValues(values);
TaskClaimCompleteRequest request = new TaskClaimCompleteRequest(completeFormRepresentation, taskId, bearerToken);
TaskCompleteResponse response = getPoseidon().getResponse(request, TaskCompleteResponse.class);
assertNotNull("response cannot be null", response);
}
}