业务流程管理
版本: 1.2 | 发布日期: 30/6/2023
# 参与的流程
根据输入的过滤选项查询用户参与的流程。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/tracking?sortBy=id%20DESC&startRow=5&fetchSize=5")
.get()
.addHeader("authorization", "Bearer MjZhZGNjMDctODVhZS00MmE0LWI3ZmEtNzRhMTQwZGZiNTY0")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("options", "{\"module\":\"employee\",\"keyWord\":\"ha\"}")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
{
"totalSize": 442,
"size": 2,
"values": [
{
"apvModule": "employee", //Workflow associated Module
"code": "I-143543699", //Workflow Instance Code
"wfTpltId": 161, //Workflow Template Id
"apvRecordCode": "HavidAA", //Workflow associated Document Code
"apvRecordId": 1130, //Workflow associated Document Id
"startTime": "1900-01-01 00:00:00", //Workflow start time
"endTime": "1900-01-01 00:00:00", //Workflow end time
"wfId": 997 //Workflow instance id
},
{
"summary": "Created by :B Code: JA39 Description:Havid",
"apvModule": "employee",
"code": "I-153113818",
"wfTpltId": 162,
"apvRecordCode": "JA39",
"apvRecordId": 1129,
"startTime": "1900-01-01 00:00:00",
"endTime": "1900-01-01 00:00:00",
"wfId": 996
}
]
}
# HTTP 请求
GET http://[server]/jsf/rfws/bpm/wfs/tracking?sortBy=[sortBy]&startRow=[startRow]&fetchSize=[fetchSize]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
options | string (Header) | JSON String. 包含所有可能的过滤参数 |
sortBy | string (Query) | 按字段排序。可以是 wfinstance(表)列之一 |
startRow | int (Query) | 本次读取的起始索引 |
fetchSize | int (Query) | 读取大小 |
# 在 options 中可用的过滤
名字 | 类型 | 说明 |
---|---|---|
module | string | 单据模块 |
keyWord | string | 关键词搜索范围:
|
insState | string | 可用流程状态:
|
wfType | int | 流程类型 Id |
wfTpltId | int | 流程模板 Id |
recodeCode | string | 单据编号 |
startFrom | string | 流程开始日期范围从 |
startTo | string | 流程开始日期范围到 |
endFrom | string | 流程结束日期范围从 |
endTo | string | 流程结束日期范围到 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | JSON 格式的流程列表 |
# 创建流程
提交单据后,系统将为该单据创建一个新的流程。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/submit/employee?id=1124")
.post()
.addHeader("authorization", "Bearer MjZhZGNjMDctODVhZS00MmE0LWI3ZmEtNzRhMTQwZGZiNTY0")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
POST http://[server]/jsf/rfws/bpm/submit/[module]?id=[id]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
module | string (Path) | 单据模块, 比如‘员工’ |
id | int (Query) | 单据id, 比如1124 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | 新创建的流程id |
fail | Header(304) | 存在其他打开的流程 |
fail | Header(303) | [批核设定]中名为 “needapv ”的标志已禁用 |
fail | Header(313) | 无法在[批核设定]中找到可用的流程模板 |
fail | Header(314) | 现在无法使用 [批核设定]中已创建的流程模板(已失效或更改了模块) |
# 我的任务
查询用户的待办事项。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/task/filter?sortBy=id%20DESC&startRow=5&fetchSize=5")
.get()
.addHeader("authorization", "Bearer OTUwODcyNWYtNWJkMy00NGIwLWI4ZTUtZjRhYTkzNjg2NTM3")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("options", "{\"module\":\"employee\"}")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
{
"totalSize": 283,
"size": 2,
"values": [
{
"atvtyId": "2", //Workflow node Id
"apvModule": "employee", //Workflow associated Module
"wfTpltId": 161, //Workflow Template Id
"apvRecordCode": "HavidCC", //Workflow associated Document Code
"atvtyName": "User Task", //Workflow node name
"wfInstanceId": 999, //Workflow instance id
"apvViewCode": "employee", //Restricted View
"apvRecordId": 1132, //Workflow associated Document Id
"isAfterDue": true, //time out or not
"atvtyKey": "UserTask_1q2ixpn", //Workflow node key
"insState": "starting", //Workflow status
"createDate": "2017-06-14 14:47:09" //Workflow create time,
"createUid": "11", //Workflow Creator Id
"createUdesc": "Jacky", //Workflow Creator Description
"beId": "1122", //Workflow associated Business Entity
"recordLink": "http://[serverip]/jsf/app.faces#employee/view/module/employee/c2bc204b?id=1" //Workflow associated Document URL,
"apvViewCodeLimited": "" // Restricted View Code,
"moduleName": "Employee" // Workflow associated Module Description
},
{
"atvtyId": "3", //Workflow node Id
"apvModule": "employee",
"wfTpltId": 161,
"apvRecordCode": "HavidCC",
"atvtyName": "User Task",
"wfInstanceId": 999,
"apvViewCode": "employee",
"apvRecordId": 1132,
"atvtyKey": "UserTask_0p9w708",
"insState": "starting",
"createDate": "2017-06-14 14:47:09",
"createUid": "11",
"createUdesc": "Jacky",
"beId": "1122",
"recordLink": "http://[serverip]/jsf/app.faces#employee/view/module/employee/c2bc204b?id=1"
"apvViewCodeLimited": "",
"moduleName": "Employee"
}
]
}
# HTTP 请求
GET http://[server]/jsf/rfws/bpm/task/filter??sortBy=[sortBy]&startRow=[startRow]&fetchSize=[fetchSize]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
options | string (Header) | JSON String. 包含所有可能的过滤参数 |
sortBy | string (Query) | 按字段排序。可以是 wfinstance(表)列之一 |
startRow | int (Query) | 本次读取的起始索引 |
fetchSize | int (Query) | 读取大小 |
# 在options中的可用过滤
名字 | 类型 | 说明 |
---|---|---|
module | string | 单据模块 |
wfType | int | 流程类型 Id |
wfTpltId | int | 流程模板 Id |
wfInstanceId | int | 流程 Id |
recodeCode | string | 单据编号 |
keyWord | string | 关键词搜索范围:
|
days | int | 任务创建后的天数 |
dueType | string | 任务是否超时。“afterDue“ 和 ”beforeDue "之一。空表示 “all”。 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | JSON 格式的任务列表 |
# 流程图
获取流程图链接
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/graph/999")
.get()
.addHeader("authorization", "Bearer NjQ3ZjMyNjYtYWYwYy00ZmE0LWI1ZDAtNGU1MDg3YTAxMzYz")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
GET http://[server]/jsf/rfws/bpm/wfs/graph/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例 Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | 重定向到图链接 |
# 选择下一个节点
查询支持直接选择下一个节点的流程模板节点。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/tplt/userEoxGateway/162")
.get()
.addHeader("authorization", "Bearer NjQ3ZjMyNjYtYWYwYy00ZmE0LWI1ZDAtNGU1MDg3YTAxMzYz")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
{
"UserTask_1txbhvu": "{\"UserTask_1igpmls\":\"To Node A\",\"EndEvent_0w1fhfw\":\"to End\",\"UserTask_17a00dk\":\"To Node B\"}"
}
# HTTP 请求
GET http://[server]/jsf/rfws/bpm/tplt/userEoxGateway/[wfTpltId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfTpltId | int (Path) | 流程模板 Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | 所有支持直接转到下一节点的节点键 |
# 中止流程
中止一个特定的流程。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/terminate/999")
.put(null)
.addHeader("authorization", "Bearer NjQ3ZjMyNjYtYWYwYy00ZmE0LWI1ZDAtNGU1MDg3YTAxMzYz")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://[server]/jsf/rfws/bpm/wfs/terminate/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例 Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 修复流程
重新同步流程状态到异常记录。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/repair/999")
.put(null)
.addHeader("authorization", "Bearer NjQ3ZjMyNjYtYWYwYy00ZmE0LWI1ZDAtNGU1MDg3YTAxMzYz")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://[server]/jsf/rfws/bpm/wfs/repair/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例 Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 重新计算流程
根据全局设置重新计算所有未完成流程的参与者
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/recalcpator")
.put(null)
.addHeader("authorization", "Bearer NjQ3ZjMyNjYtYWYwYy00ZmE0LWI1ZDAtNGU1MDg3YTAxMzYz")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://[server]/jsf/rfws/bpm/wfs/recalcpator
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 通过操作
用户对一个节点执行 “通过 ”操作。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/passAtvty/1009")
.put(null)
.addHeader("authorization", "Bearer MGRhY2NhMzItNDkxOC00NmU0LTkyZGItMWNjOWRjZmM2ZTQ1")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("atvtyid", "2")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/passAtvty/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例 Id |
atvtyId | string (Header) | 流程节点 Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 通过操作(选择下一步)
用户执行 “通过 ”操作并选择下一步。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/passAtvtyWithTarget/1010")
.put(null)
.addHeader("authorization", "Bearer NDgwYWMxZGItYjBjYS00ZmQwLTk3NzQtODY4MjMzNDFmNGI4")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("atvtyid", "4")
.addHeader("targetatvtykey", "UserTask_17a00dk")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/passAtvtyWithTarget/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Header) | 流程节点Id |
targetatvtykey | string (Header) | 下一个要去的节点 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 拒绝操作
用户对一个节点执行 “拒绝 ”操作。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/rejectAtvty/1009")
.put(null)
.addHeader("authorization", "Bearer MGRhY2NhMzItNDkxOC00NmU0LTkyZGItMWNjOWRjZmM2ZTQ1")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("atvtyid", "2")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/rejectAtvty/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Header) | 流程节点Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 流程时间线
查询流程时间线。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/loadWfLog/1009")
.get()
.addHeader("authorization", "Bearer MGRhY2NhMzItNDkxOC00NmU0LTkyZGItMWNjOWRjZmM2ZTQ1")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
[
{
"atvtyKey": "UserTask_1txbhvu",
"atvtyName": "Node A",
"caseCode": "I-121142627",
"caseDesc": "",
"info": "wf.Starting",
"infoType": "event",
"link": "",
"time": 1498104928000,
"user": {
"id": 2,
"code": "B",
"desc": "Englishtest3"
}
},
{
"atvtyKey": "UserTask_016hspg",
"atvtyName": "Node B",
"caseCode": "I-121142627",
"caseDesc": "",
"info": "wf.pass",
"infoType": "action",
"link": "",
"time": 1498104928000,
"user": {
"id": 2,
"code": "B",
"desc": "Englishtest3"
}
}
]
# HTTP 请求
GET http://127.0.0.1:8080/jsf/rfws/bpm/loadWfLog/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 流程快照
查询流程节点状态。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/snapshot/1009")
.get()
.addHeader("authorization", "Bearer MGRhY2NhMzItNDkxOC00NmU0LTkyZGItMWNjOWRjZmM2ZTQ1")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
{
"size": 3,
"values": [
{
"atvtyId": "1",
"atvtyName": "Node A",
"atvtyKey": "StartEvent_1cf0uyy",
"isEnd": true
},
{
"atvtyId": "2",
"atvtyName": "Node B",
"atvtyKey": "UserTask_016hspg",
"isEnd": true
}
]
}
# HTTP 请求
GET http://127.0.0.1:8080/jsf/rfws/bpm/wfs/snapshot/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | 以 JSON 数组形式显示的流程节点状态信息 |
# 流程参与者
查询流程节点参与者(包括已参与的和待办)。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/wfs/handlerInfo/1009")
.get()
.addHeader("authorization", "Bearer MGRhY2NhMzItNDkxOC00NmU0LTkyZGItMWNjOWRjZmM2ZTQ1")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
API 返回的 JSON 结构如下:
{
"size": 2,
"values": [
{
"code": "B", //user code
"atvtyKey": "UserTask_15hry6g",
"type": "done", //'done' means the user have perform some action the node(reference to info)
"userId": 2,
"desc": "Englishtest3",
"info": "wf.pass",
"logTime": "2017-06-22 14:41:16"
},
{
"code": "B",
"atvtyKey": "UserTask_1txbhvu",
"type": "todo",//'todo' means the user is the next participant
"userId": 2,
"desc": "Englishtest3",
"logTime": "2017-06-22 14:41:29"
}
]
}
# HTTP 请求
GET http://127.0.0.1:8080/jsf/rfws/bpm/wfs/handlerInfo/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | 以JSON数组形式显示的流程节点参与者信息 |
# 添加评论
为整个流程或特定节点添加评论。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/addWfComment/1011")
.post(null)
.addHeader("authorization", "Bearer ODQxYzRiZjMtOGE5YS00OGJhLWEzM2ItZTYxNGRlZTA5ZGIw")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("comment", "this is a comment")
.addHeader("inviteusers", "40,50,51,")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
POST http://127.0.0.1:8080/jsf/rfws/bpm/addWfComment/[wfInstanceId]?atvtyKey=[atvtyKey]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyKey | string (Query) | 流程节点键 |
comment | string (Header) | 评论内容 |
inviteusers | string (Header) | 参与此评论的用户 ID 列表 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 反向到创建者操作
用户执行 reverseToStart
操作。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/reverseToStart/1011")
.put(null)
.addHeader("authorization", "Bearer NTE4NTIwMDItZGJlZC00MzE5LTgwMjEtOGYxMGEzYTc1ODBi")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("atvtyid", "2")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/reverseToStart/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Header) | 流程节点Id |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 反向操作
用户执行reverseTo
操作
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/reverseAtvty/1012")
.put(null)
.addHeader("authorization", "Bearer NzMyYjUxZTMtOTRiYi00ODk2LThkYjMtYzM2N2EwNjRjZWMx")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("atvtyid", "4")
.addHeader("targetatvtykey", "UserTask_016hspg")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/reverseToStart/[wfInstanceId]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Header) | 流程节点Id |
targetatvtykey | string (Header) | 反向到的流程节点 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 重做操作
用户执行redo
操作.
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/redoAtvty/1012/UserTask_016hspg")
.put(null)
.addHeader("authorization", "Bearer NzMyYjUxZTMtOTRiYi00ODk2LThkYjMtYzM2N2EwNjRjZWMx")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.addHeader("postman-token", "7b6603bd-d6a0-9970-e273-3ec38c1ac374")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/redoAtvty/[wfInstanceId]/[atvtyKey]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyKey | string (Path) | 想要重新操作的流程节点 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 添加批核操作
用户执行 addapprover
操作
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/addApprover/1013/4?user=50&user=51")
.put(null)
.addHeader("authorization", "Bearer OGFiZmU2ZTktMzYzMS00NjIwLWJhNGYtYWU2OGQyNTZhMmNi")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/addApprover/[wfInstanceId]/[atvtyId]?user=[target]&user=[target]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Path) | 流程节点Id |
user | string (Query) | 目标用户 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |
# 更改批核操作
用户执行 assignapprover
操作。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://127.0.0.1:8080/jsf/rfws/bpm/assignApprover/1013/4?user=77")
.put(null)
.addHeader("authorization", "Bearer OGFiZmU2ZTktMzYzMS00NjIwLWJhNGYtYWU2OGQyNTZhMmNi")
.addHeader("client_id", "C-SGF2aWQncyBhcHBsaWNhdGlvbjIwMTctMDItMTAxNjc=")
.addHeader("cache-control", "no-cache")
.build();
Response response = client.newCall(request).execute();
# HTTP 请求
PUT http://127.0.0.1:8080/jsf/rfws/bpm/assignApprover/[wfInstanceId]/[atvtyId]?user=[target]
# 参数
名字 | 类型 | 说明 |
---|---|---|
authorization | string (Header) | 必填. 通过 OAuth2 获取的访问令牌 |
client_id | string (Header) | 必填. 在[授权应用列表]中注册时,由 aiM18 生成 |
wfInstanceId | int (Path) | 流程实例Id |
atvtyId | string (Path) | 流程节点Id |
user | string (Query) | 目标用户 |
# 结果
类型 | 位置(error_id) | 说明 |
---|---|---|
success | Body | HTTP 200 |