Claim and Complete Task

认领并提交任务表单,完成任务。

请求格式

POST https://{apigw-address}/enos-bpm-service/v2.0/work/tasks/{taskId}/claim-complete

请求参数(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);
       }
}