# 工作移交

## 流程移交列表
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/flow/page.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "page": "1",
  "limit": "10",
  "sort": "flowName",
  "search": ""
}

```
请求参数说明:

| 参数          | 是否必须 | 描述                                                   |
|-------------|------|------------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                        |
| page        | 否    | 页码，如果为空表示查询全部数据                                      |
| limit       | 否    | 每页显示的数据条数，如果为空默认查询10条                                |
| sort        | 否    | 非必须，字段前如果加上减号<br>如sort=-flowName<br>则为按照flowName倒序排列 |
| search      | 否    | 简单查询流程名称和流程类型字段,默认为空时查询所有数据                          |
**返回结果示例：**
```
{
  "code": 0,
  "data": [
    {
      "flowId": "test3",
      "flowName": "新流程test3",
      "typeName": "www"
    },
    {
      "flowId": "test",
      "flowName": "新流程test",
      "typeName": ""
    }
  ],
  "message": "",
  "recordsTotal": "3",
  "success": true
}
```
**结果参数说明:**

| 参数       | 参数类型   | 描述     |
|----------|--------|--------|
| flowId   | String | 流程模板id |
| flowName | String | 流程名字   |
| typeName | String | 流程分类   |

## 流程移交操作
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/flow/action.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "receiveUserId": "U_admin",
  "receiveUserName": "管理员",
  "flowId": "test"
}
```
请求参数说明:

| 参数              | 是否必须 | 描述                                              |
|-----------------|------|-------------------------------------------------|
| accessToken     | 是    | 调用接口凭证，唯一用户标识                                   |
| receiveUserId   | 是    | 接收用户id                                          |
| receiveUserName | 是    | 接受用户姓名                                          |
| agentName       | 是    | 代办人姓名                                           |
| flowId          | 是    | 流程id,如果是选择多个<br>流程,则中间用分号隔开<br>如flowId1;flowId2 |
**返回结果示例：**
```
{
  "success": true,
  "code": 0,
  "message": ""
}
```

## 事项移交列表
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/item/page.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "page": "1",
  "limit": "10",
  "sort": "flowName"
}
```
请求参数说明:

| 参数          | 是否必须 | 描述                                                |
|-------------|------|---------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                     |
| page        | 否    | 页码，如果为空默认查询10条                                    |
| limit       | 否    | 每页显示的数据条数，如果为空默认查询10条                             |
| sort        | 否    | 非必须，字段前如果加上减号。<br>如sort=-flowName则为按照flowName倒序排列 |
**返回结果示例：**
```
{
  "code": 0,
  "data": [
    {
      "flowId": "test",
      "flowName": "新流程test",
      "id": "HZ28858f80bb94640180bc38f79100dc",
      "startTime": "2022-05-13 15:01:31",
      "subjectionId": "HZ28821856ef63420156ef63429c0000",
      "subjectionType": "D",
      "title": "新流程test",
      "trackId": "HZ28858f80bb94640180bc38f79100dd",
      "workId": "HZ28858f80bb94640180bc38f79100dc"
    }
  ],
  "message": "",
  "recordsTotal": "1",
  "success": true
}
```
**结果参数说明:**

| 参数             | 参数类型   | 描述                              |
|----------------|--------|---------------------------------|
| flowId         | String | 流程id                            |
| flowName       | String | 流程名称                            |
| id             | String | 移交数据id                          |
| startTime      | String | 创建实例时间<br>格式：yyyy-MM-ddHH:mm:ss |
| subjectionType | String | 发送人所在的组织机构类型                    |
| subjectionId   | String | 发送人所在的组织机构id                    |
| title          | String | 查询结果标题                          |
| workId         | String | 流程实例id                          |
| trackId        | String | 流程实例路径id                        |

## 事项移交操作
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/item/action.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "receiveUserId": "U_admin",
  "receiveUserName": "管理员",
  "dataId": "HZ28858f80bc4df60180bc5481f90012",
  "trackId": "HZ28858f80bc4df60180bc5481f90013",
  "subjectionType": "D",
  "subjectionId": "HZ28821856ef63420156ef6342a20001"
}
```
请求参数说明:

| 参数              | 是否必须 | 描述                                 |
|-----------------|------|------------------------------------|
| accessToken     | 是    | 调用接口凭证，唯一用户标识                      |
| receiveUserId   | 是    | 接收用户id                             |
| receiveUserName | 是    | 接收用户姓名                             |
| dataId          | 是    | 上一个rest接口中返回事项移交列表的数据id，多条时中间用分号隔开 |
| trackId         | 是    | 事项移交列表数据trackId，多条时中间用分号隔开         |
| subjectionType  | 否    | 发送人所在的组织机构类型                       |
| subjectionId    | 否    | 发送人所在的组织机构id                       |
**返回结果示例：**
```
{
  "code": 0,
  "message": "操作已完成！",
  "success": true
}
```

## 正在移交|已接收移交|被拒收移交列表
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/page.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "requestType": "",
  "page": "1",
  "limit": "10",
  "sort": "flowName"
}
```
请求参数说明:

| 参数          | 是否必须 | 描述                                                                               |
|-------------|------|----------------------------------------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                                                    |
| requestType | 是    | 业务名称：<br>HandWorking表示移交中正在移交列表<br>HadReceive表示移交中已接收列表<br>RejectWork 表示移交中被拒收列表 |
| page        | 否    | 页码，如果为空表示查询全部数据                                                                  |
| limit       | 否    | 每页显示的数据条数，如果为默认查询10条                                                             |
| sort        | 否    | 排序，默认为正序，字段前如果<br>加上减号，如sort=-flowName则<br>为按照flowName倒序排列。                      |
**返回结果示例：**
```
{
  "code": 0,
  "data": [
    {
      "doTime": "2022-05-13 16:58:09",
      "flowId": "test",
      "id": "HZ28858f80bca0a3380bca2c0e6779844",
      "flowName": "新流程test",
      "newName": "用户01",
      "newUser": "HZ28821856ef63420156ef6342a20002",
      "oldName": "管理员",
      "oldUser": "admin",
      "startTime": "2022-05-13 16:57:04",
      "title": "新流程test",
      "trackId": "HZ28858f80bca0a30180bca2c0e60006",
      "workId": "HZ28858f80bca0a30180bca2c0e40005"
    }
  ],
  "message": "",
  "recordsTotal": "1",
  "success": true
}
```
**结果参数说明:**

| 参数        | 参数类型   | 描述                               |
|-----------|--------|----------------------------------|
| doTime    | String | 接收时间<br>格式：yyyy-MM-dd HH:mm:ss   |
| flowId    | String | 流程id                             |
| id        | String | 移交数据id                           |
| flowName  | String | 流程名称                             |
| newName   | String | 接收人姓名                            |
| newUser   | String | 接收人用户id                          |
| oldName   | String | 移交人用户姓名                          |
| oldUser   | String | 移交人用户id                          |
| startTime | String | 创建实例时间<br>格式：yyyy-MM-dd HH:mm:ss |
| title     | String | 流程标题                             |
| trackId   | String | 流程实例路径id                         |
| workId    | String | 流程实例id                           |

## 被拒收列表中的取消移交和重新移交操作
接口请求调用说明 <br>
针对上一个rest接口中requestType=RejectWork时被拒收移交列表数据的取消移交和重新移交操作 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/operate/action.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "requestType": "",
  "dataId": ""
}
```
请求参数说明:

| 参数          | 是否必须 | 描述                                                                |
|-------------|------|-------------------------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                                     |
| requestType | 是    | 业务名称：<br>CancelHandwork表示取消移交<br>AgainHandwork表示被拒收后重新移交          |
| dataId      | 是    | 针对上一个rest接口中requestType=RejectWork时<br/>返回被拒收列表的数据id，多个id之间用分号分隔。 |
**返回结果示例：**
```
{
  "code": 0,
  "message": "",
  "success": true
}
```

## 工作移交接收和管理列表
接口请求调用说明 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/receive/manage/page.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "requestType": "",
  "page": "1",
  "limit": "10",
  "sort": "flowName"
}
```
请求参数说明:

| 参数          | 是否必须 | 描述                                                                                                                                                                                                                                 |
|-------------|------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                                                                                                                                                                                                      |
| requestType | 是    | 业务名称：<br>HandWorkWaitReceive表示查询工作移交接收中待接收列表<br>HandWorkHadReceive表示查询工作移交接收中已接收列表<br>HandWorkRejectReceive表示查询工作移交接收中已拒收列表<br>ManageWaitReceive表示查询移交管理正在移交列表<br>ManageHadReceive表示查询移交管理已接收列表<br>ManageRejectReceive表示查询移交管理拒收列表 |
| page        | 否    | 页码，如果为空表示查询全部数据                                                                                                                                                                                                                    |
| limit       | 否    | 每页显示的数据条数，如果为空默认查询10条。                                                                                                                                                                                                             |
| sort        | 否    | 排序，默认为正序，字段前如果<br>加上减号，如sort=-flowName则<br>为按照flowName倒序排列。                                                                                                                                                                        |
**返回结果示例：**
```
{
  "code": 0,
  "data": [
    {
      "doTime": "2022-05-13 17:35:29",
      "flowId": "test",
      "flowName": "新流程test",
      "newName": "管理员",
      "newUser": "admin",
      "oldName": "用户01",
      "oldUser": "HZ28821856ef63420156ef6342a20002",
      "startTime": "2022-05-13 17:33:58",
      "title": "新流程test",
      "id": "HZ28858f80bcc42a0180bcc488430018",
      "trackId": "HZ28858f80bcc42a0180bcc488430019",
      "workId": "HZ28858f80bcc42a0180bcc488430018"
    }
  ],
  "message": "",
  "recordsTotal": "1",
  "success": true
}
```
**结果参数说明:**

| 参数        | 参数类型   | 描述                              |
|-----------|--------|---------------------------------|
| doTime    | String | 实例创建时间<br>格式：yyyy-MM-ddHH:mm:ss |
| flowId    | String | 流程id                            |
| flowName  | String | 流程名称                            |
| newName   | String | 接收人姓名                           |
| newUser   | String | 接收人用户id                         |
| oldName   | String | 移交人姓名                           |
| oldUser   | String | 移交人用户id                         |
| startTime | String | 接收时间<br>格式：yyyy-MM-ddHH:mm:ss   |
| title     | String | 查询结果标题                          |
| id        | String | 移交列表数据id                        |
| trackId   | String | 流程实例路径id                        |
| workId    | String | 流程实例id                          |

## 正在移交列表接收和拒收操作
接口请求调用说明 <br>
针对上一个rest接口中requestType=ManageWaitReceive时正在移交列表数据的接收和拒收操作 <br>
http请求方式: POST <br>
请求地址: http://127.0.0.1:8080/demo/horizon/workflow/rest/handwork/manage/action.wf <br>
**post数据说明：**
```
{
  "accessToken": "",
  "requestType": "",
  "dataId": ""
}
```
请求参数说明:

| 参数          | 是否必须 | 描述                                                                        |
|-------------|------|---------------------------------------------------------------------------|
| accessToken | 是    | 调用接口凭证，唯一用户标识                                                             |
| requestType | 是    | 业务名称：<br>Receive表示接收操作<br>Reject表示拒收操作                                    |
| dataId      | 是    | 针对上一个rest接口中requestType=ManageWaitReceive时<br/>返回管理移交列表的数据id，多个id之间用分号隔开。 |
**返回结果示例：**
```
{
  "code": 0,
  "message": "",
  "success": true,
  "data": {
    "HZ28858f80bb94640180bc38f79100dc": true
  }
}
```
**结果参数说明:**

| 参数   | 参数类型 | 描述                                                                                                             |
|------|------|----------------------------------------------------------------------------------------------------------------|
| data | Map  | 请求类型为requestType为Reject时，<br>没有此返回参，为Receive是有此返<br>回参数<br>key移交数据id，value为移交结果，<br>true表示移交成功，<br>false表示移交失败 |