# 接口说明
重要名词:
- 待办:待办理的任务,或暂时挂起的任务
- 事务:业务系统发起的流程实例,事务下可以包含多个节点和任务
调用本接口,将会创建一条待办任务,显示在应办人的待办列表,关联的事务显示在发起人的发起列表
# 权限
要调用此API,需要申请poa能力,获取poa token,接口请求头中添加 Authorization 值为token
# 请求方法
报文样例
POST /apis/ttc/v1/transaction/poa/addTransaction
Host: poa地址
Authorization:String
Content-Type:application/json
创建首条待办
[
{
"actions": [{
"allowMerge": 0,
"method": "post",
"name": "撤回",
"nextNodeKey": "",
"optType": 0,
"type": "REVOKE",
"url": "http://www.baidu.com"
}],
"appId": "GzqhyfpMLSEexyO78bDgO-UWlK6PwOyAE",
"autoCreateTransType": true,
"canDelegate": 0,
"handlers": "smartadmin",
"handlingGroup": "",
"initiator": "smartadmin",
"initiatorName": "智慧校园管理员",
"nodeId": "NODE0001",
"nodeName": "节点1",
"serialNumber": "NUM0001",
"taskId": "TASK0001",
"taskName": "待办名称0001",
"taskSummary": ["摘要1|内容1","摘要2|内容2"],
"timeOut": 0,
"transTypeCode": "TTCODE0001",
"transTypeName": "事务类型0001",
"transcationName": "自定义事务名称",
"viewUrl": "string",
"handleUrl": "http://www.baidu.com",
"mHandleUrl": "http://www.baidu.com",
"mViewUrl": "http://www.baidu.com",
"mhandleUrl": "http://www.baidu.com",
"mviewUrl": "http://www.baidu.com"
}
]
创建非首条待办,与上一条待办关联
[
{
"previousTaskId": "TASK0001",
"appId": "GzqhyfpMLSEexyO78bDgO-UWlK6PwOyAE",
"handlers": "smartadmin",
"initiator": "smartadmin",
"nodeId": "NODE0002",
"nodeName": "节点2",
"taskId": "TASK0002",
"taskName": "待办名称0002",
"transTypeCode": "TTCODE0001"
}
]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Header参数
名称 | 类型 | 是否必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 调用该接口的访问凭证 |
# Body参数
名称(1级) | 名称(2级) | 类型 | 是否必填 | 描述 |
---|---|---|---|---|
appId | String | 是 | 应用appId | |
nodeId | String | 是 | 节点id,同一节点 nodeId需要一致。例如:学生请假 - 辅导员审核这个节点,这个辅导员审核节点的主键或是唯一键可作为nodeId | |
nodeName | String | 是 | 节点名称,同一节点 nodeName需要一致 | |
taskId | String | 是 | 任务id,根据taskId 来关闭事务中心的任务;唯一 | |
taskName | String | 是 | 任务名称 根据taskId 来关闭事务中心的任务;唯一 | |
transTypeCode | String | 是 | 事务类型编码 | |
transTypeName | String | 条件必填 | 事务类型名称,autoCreateTransType为true时必填,该类型第一次调用会自动依据transTypeCode和 transTypeName创建事物类型,后续功能设置可以去云平台-事务-应用管理-事务类型去配置) | |
handlers | String | 条件必填 | 处理人 学/工号,多个账号英文逗号分隔,工号、用户组 二选一;办理人、候选人都放这个字段 | |
handlingGroup | String | 条件必填 | 处理人 用户组id,工号、用户组 二选一;此处用户组使用的是用户中心用户组 | |
previousTaskId | String | 否 | 上一条关联待办taskId(非首个节点创建待办时是必填) | |
autoCreateTransType | Boolean | 否 | 是否自动创建事务类型,默认为false;设置为true 会自动创建事务类型,否则需要手动去云平台创建事务类型 | |
canDelegate | Integer | 否 | 是否允许代理, 1允许 0不允许,默认0,任务有特殊需要在此设置 | |
initiator | String | 否 | 发起人学工号,不填取应用名称 填 visitor 为游客 | |
initiatorName | String | 否 | 发起人姓名,不填取initiator账号在用户服务中的姓名 | |
serialNumber | String | 否 | 流水号 | |
taskSummary | Array | 否 | 任务的摘要(业务办理关键字段),完整字段标题和内容由 | |
timeOut | Integer | 否 | 超时时间,默认 0.0 | |
transactionName | String | 否 | 事务名称 | |
viewUrl | String | 否 | pc查阅地址 | |
handleUrl | String | 否 | pc处理地址 | |
mHandleUrl | String | 否 | mobile处理地址 | |
mViewUrl | String | 否 | mobile查阅地址 | |
actions | Array | 否 | 自定义操作列表 | |
method | String | 是 | 请求方式 ,optType为api 必填,get 、 post 、 put | |
name | String | 是 | 名称 | |
optType | Integer | 是 | 操作类型: 1:page页面; 0:api 接口 | |
type | String | 是 | 类型, HANDLE办理、BREAK_UP终止、REVOKE撤回、HANG_UP挂起、ACTIVE激活、CIRCULARIZE传阅、TRANSFER转办、PROMOTER发起人操作、HANDLEDR待办人操作、DEAL待办人操作、ALL所有人操作 | |
url | String | 否 | 请求地址 | |
nextNodeKey | String | 否 | 调用接口携带参数 | |
allowMerge | Integer | 否 | 是否允许并行,默认0 0:不允许合并 1:允许合并处理 |
参数列表中
previousTaskId
字段用来区分是否为事务的首个待办任务创建
- 参数previousTaskId为空,创建首条待办任务,创建待办同时会创建一条关联事务
- 参数previousTaskId不为空(填写的值是上个待办任务的taskId),创建非首条待办任务,通过previousTaskId关联事务
支持批量创建,批量创建时,多条待办任务的(transTypeCode、nodeId、initiator、serialNumber)字段参数相同,则待办自动关联到同一个事务中
批量创建中的异常数据不影响正常数据的创建,接口响应会返回异常数据,请自行获取处理
# 接口调用成功返回
接口返回code值0为成功返回
{
"took": 6089,
"timestamp": 1688956011462,
"code": 0,
"message": "创建成功",
"data": {
"errorIds": []
}
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 接口调用失败返回
- 接口支持批量,批量操作中的每条数据独立运行,批量中有失败的数据接口整体响应code为0 (成功),data中返回出现错误的数据
- 外层响应code不为0时为未知的错误,请自行设计重试机制
{
"took": 80,
"timestamp": 1688701475919,
"code": 0,
"message": "创建中有异常数据",
"data": {
"errorIds": [
{
"code": 400,
"taskId": "TTTT-PL-002",
"message": "transTypeCode is null"
},
{
"code": 400,
"taskId": "TTTT-PL-004",
"message": "handlers and handlingGroup are all null"
}
]
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
data.errorIds.code说明:
code | message | 说明 |
---|---|---|
400 | xxx is null | 参数校验不合法 |
400 | this app/transTypeCode does not exist | 业务校验异常:应用或者类型不存在 |
500 | the app/transactionType is not enabled | 业务校验异常:应用或者类型未启用 |
500 | * | 业务逻辑异常 |
2003 | the task already exists | 当前任务已存在 |
← 调用示例 任务办理-仅办理当前待办 →