1. 说明
此处说明对外服务接口的调用及参数的配置。
在调用接口时统一在请求中,在HTTP HEADER中 统一加上token,这样才允许客户端调用。
接口调用时请先阅读 API调用文档
2. 接口列表
接口代码如下:
在jpaas-bpm 项目下:com.redxun.bpm.restApi.BpmApiController
2.1 启动流程
接口路径:api/api-bpm/restApi/bpm/startProcess?userAccount=用户账号
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"checkType": "AGREE",
"defId": "1288318003842125826",
"formJson": "{'jdbd':{'mc':'123','dz':'123'}}"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号,用于当发起人用户 | 是 |
checkType | 审批类型 | 是 |
defId | 流程定义ID | defId,defKey 必须二选一 |
defKey | 流程定义KEY,如果指定了defId,优先使用defId | |
formJson | 表单数据 | 是 |
nodeUserIds | 发起时指定任务节点执行人 | 否 |
busKey | 业务主键 | 否 |
boAlias | Bo别名 | 否 |
vars | 启动时传递变量 | 否 |
1.在发起流程时指定某些节点的执行人。
{userTask1:'1,2,3',userTask2:'2,3,4'}
这个参数时一个JSON字符串。
2.客户可以先调用表单保存接口将数据保存到业务表中。
再传递:
busKey:业务主键
boAlias:BO别名
这样在审批时,就可以加载表单的数据。
3.启动时生成流程变量数据。
vars 数据格式:
{"name":"ray","days":1}
这段可以在流程中设置两个流程变量。
2.2 审批流程
接口路径:/api/api-bpm/restApi/bpm/completeTask
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"taskId": "1288397808436527106",
"checkType": "AGREE",
"copyUserAccounts": "zhangsan",
"formJson": "{'t': {'INST_ID_':'1288374364525404162','r':'','ID_':'1288374366400274434','CREATE_TIME_':1596007360000,'INST_STATUS_':'RUNNING','PARENT_ID_':'0','y':'','REF_ID_':'0','CREATE_BY_':'1'}}",
"msgTypes": "",
"nodeExecutors": {"UserTask_0clful0": [{"type": "user", "id": "1", "name": "管理员", "calcType": "none"}]},
"opFiles": "[]",
"opinion": "AAAAA",
"opinionName": "",
"excutors":[{"type": "user", "id": "1"}]
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号,用于当审批人用户 | 是 |
taskId | 任务ID | 是 |
checkType | 审批类型 | 是 |
opinion | 审批意见 | 是 |
copyUserAccounts | 抄送用户账号,用‘,’隔开 | 否 |
formJson | 表单数据 | 否 |
msgTypes | 消息通知 | 否 |
nodeExecutors | 下一节点审批人配置 | 否 |
opFiles | 审批附件 | 否 |
opinionName | 审批意见名称 | 否 |
destNodeId | 目标节点ID | 否 |
vars | 流程变量 | 否 |
nodeExecutors | 指定节点的用户 | 否 |
excutors | 直接指定下一节点的执行人(无法与nodeExecutors同时使用) | 否 |
1.指定节点执行人
nodeExecutors 数据格式:
{"nodeId1":[{"calcType":"none","id":"2","name":"ludy","type":"user"},{"calcType":"none","id":"1","name":"ray","type":"user"}]}
type:
user:表示节点执行人为用户
group:表示节点执行人为用户组
2.指定流程变量
vars 数据格式:
{"name":"ray","days":1}
这段可以在流程中设置两个流程变量。
3.直接指定下一节点的用户
注:excutors无法与nodeExecutors同时使用,且下一节点不能有多个
[{"type": "user", "id": "1"}]
2.3 根据用户账号获取待办列表
接口路径:api/api-bpm/restApi/bpm/getTasksByUserAccount
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_SUBJECT__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.4 获取有权限发起的流程定义
接口路径:api/api-bpm/restApi/bpm/getMySolutions
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_NAME__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.5 根据任务ID获取后续节点
接口路径:api/api-bpm/restApi/bpm/getTaskOutNodes
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:taskId
参数名 | 参数值 | 必要性 |
---|---|---|
taskId | 任务ID | 是 |
checkType | 意见类型 | 否 |
2.6 根据流程实例ID获取流程相关任务
接口路径:api/api-bpm/restApi/bpm/getTasksByInstId
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:instId
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 实例ID | 是 |
2.7 根据流程实例ID获取审批历史
接口路径:api/api-bpm/restApi/bpm/getCheckHistorys
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:instId
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 实例ID | 是 |
2.8 任务沟通
接口路径:api/api-bpm/restApi/bpm/linkup
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"msgTypes": "",
"opFiles": "[]",
"opinion": "",
"taskId": "1289033648317673474",
"toUserAccounts": "zhangsan"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
taskId | 任务ID | 是 |
toUserAccounts | 沟通用户账号,用‘,’隔开 | 是 |
msgTypes | 消息通知 | |
opFiles | 附件 | |
opinion | 沟通意见 |
2.9 回复任务沟通
接口路径:api/api-bpm/restApi/bpm/replyLinkupTask
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"msgTypes": "",
"opFiles": "[]",
"opinion": "",
"taskId": "1289033648317673474"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
taskId | 任务ID | 是 |
msgTypes | 消息通知 | |
opFiles | 附件 | |
opinion | 沟通意见 |
2.10 撤销沟通任务
接口路径:api/api-bpm/restApi/bpm/revokeCmTask
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:instId & delOpinion
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 实例ID | 是 |
delOpinion | 是否删除沟通意见(true/false) | 是 |
2.11 根据任务ID获取表单数据
接口路径:api/api-bpm/restApi/bpm/getFormDataByTaskId
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount & taskId
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
taskId | 任务ID | 是 |
2.12 根据实例ID获取表单数据
接口路径:api/api-bpm/restApi/bpm/getFormDataByInstId
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount & instId
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
instId | 实例ID | 是 |
2.13 获取我发起的流程实例
接口路径:api/api-bpm/restApi/bpm/getMyStartInsts
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_SUBJECT__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.14 取回任务接口
接口路径:api/api-bpm/restApi/bpm/takeBackTask
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount & instId & nodeId
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
instId | 实例ID | 是 |
nodeId | 节点ID | 是 |
2.15 获取代理给我的任务
接口路径:api/api-bpm/restApi/bpm/getMyReceiveTask
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_SUBJECT__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.16 获取实例明细
接口路径:api/api-bpm/restApi/bpm/getInstDetail
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:instId
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 实例ID | 是 |
userAccount | 用户账号 | 是 |
2.17 返回我已审批的流程实例列表
接口路径:api/api-bpm/restApi/bpm/getMyApproved
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_SUBJECT__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.18 删除流程实例
接口路径:api/api-bpm/restApi/bpm/delInstById
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
token | token值 |
参数:
请求参数:instId
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 实例ID,多个用‘,’分割 | 是 |
2.19 保存流程草稿
接口路径:api/api-bpm/restApi/bpm/saveDraft
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"defId": "1288318003842125826",
"formJson": "{"jdbd":{"mc":"","dz":""}}"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号,用于当发起人用户 | 是 |
defId | 流程定义ID | |
defKey | 流程定义KEY,如果指定了key,优先使用key | |
formJson | 表单数据 | 是 |
2.20 获取我的草稿列表
接口路径:api/api-bpm/restApi/bpm/getMyDraft
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_SUBJECT__S_LK | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.21 从草稿中启动流程
接口路径:api/api-bpm/restApi/bpm/startProcess
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求参数:userAccount
请求体:
{
"checkType": "AGREE",
"defId": "1288318003842125826",
"formJson": "{'jdbd':{'mc':'123','dz':'123'}}",
"instId":"1289143801092325378"
}
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号,用于当发起人用户 | 是 |
checkType | 审批类型 | 是 |
defId | 流程定义ID | |
defKey | 流程定义KEY,如果指定了key,优先使用key | |
formJson | 表单数据 | 是 |
instId | 实例ID,草稿保存后生成的实例ID | 是 |
2.22 根据任务ID获取任务信息详细信息
接口路径:api/api-bpm/restApi/bpm/getTaskInfo
请求方法:GET
请求头
请求头 | 参数值 |
---|---|
token | token值 |
参数:
请求参数:userAccount & taskId
参数名 | 参数值 | 必要性 |
---|---|---|
userAccount | 用户账号 | 是 |
taskId | 任务ID | 是 |
2.23 通过流程定义ID获取流程图
接口路径:api/api-bpm/restApi/bpm/getImageByDefId
请求方法:GET
请求头
请求头 | 参数值 |
---|---|
token | token值 |
参数:
请求参数:defId
参数名 | 参数值 | 必要性 |
---|---|---|
defId | 流程定义ID | 是 |
2.24 通过流程实例ID获取流程图
接口路径:api/api-bpm/restApi/bpm/getImageByInstId
请求方法:GET
请求头
请求头 | 参数值 |
---|---|
token | token值 |
参数:
请求参数:instId
参数名 | 参数值 | 必要性 |
---|---|---|
instId | 流程实例ID | 是 |
2.25 获取所有的待办列表
接口路径:api/api-bpm/restApi/bpm/getAllTasks
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:Q_T.CREATE_TIME__D_GT=2020-08-30 | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.26 获取所有的已办列表
接口路径:api/api-bpm/restApi/bpm/getAllApproved
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:例:Q_CREATE_TIME__D_GT=2020-08-20 | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.27 获取所有的申请列表
接口路径:api/api-bpm/restApi/bpm/getAllInsts
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求体:
{
"pageNo": 1,
"pageSize": 10,
"params": {},
"sortField": "",
"sortOrder": "asc"
}
参数名 | 参数值 | 必要性 |
---|---|---|
pageNo | 当前页码 | |
pageSize | 分页大小 | |
params | 条件,例:例:Q_I.CREATE_TIME__D_GT=2020-08-30 | |
sortField | 排序字段 | |
sortOrder | 排序(asc/desc) |
2.28 流程作废
接口路径:api/api-bpm/restApi/bpm/cancelProcess
HTTP方法: POST
请求头:
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded |
token | token 值 |
参数:
参数 | 说明 |
---|---|
userAccount | 操作人账号 |
instId | 流程实例ID ,Bpm_INST主键 |
reason | 作废原因 |
返回数据:
JsonResult 对象。
2.29 流程结束
接口路径:api/api-bpm/restApi/bpm/endProcess
HTTP方法: POST
请求头:
请求头 | 参数值 |
---|---|
Content-Type | application/x-www-form-urlencoded |
token | token 值 |
参数:
参数 | 说明 |
---|---|
userAccount | 操作人账号 |
instId | 流程实例ID ,Bpm_INST主键 |
reason | 结束原因 |
opFiles | 附件(不必填) |
返回数据:
JsonResult 对象。
2.30 设置流程变量
接口路径:api/api-bpm/restApi/bpm/setVariables
请求方法:POST
请求头
请求头 | 参数值 |
---|---|
Content-Type | application/json;charset=utf-8 |
token | token值 |
参数:
请求体:
{
"instId": "1392668619890151426",
"vars": {"je":2,"name":"张三"}
}
参数名 | 参数值 |
---|---|
instId | 流程实例ID |
vars | 流程变量 |
返回数据:
JsonResult 对象。