工艺流程服务接口
版本记录
版本号 | 日期 | 修改内容 |
---|
v0.12.2 | 2024-08-30 | 修复已知问题 |
工艺流程对外接口
1、查询任务
接口功能
待办以及已办任务的分页查询
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | userId | String | 否 | 用户 id(用户 id 与实例 id 不能同时为空) |
2 | instanceId | String | 否 | 流程实例 id(用户 id 与实例 id 不能同时为空) |
3 | nodeType | String | 否 | 节点类型 |
4 | nodeCode | String | 否 | 节点 code |
5 | taskId | String | 否 | 任务 id |
- 请求示例
query{
queryTaskList(
data:{
instanceId:"33e2b5d0-3cca-11ee-9c8b-fefcfe52a4b4"
}
){
executedNodeList{
activityId
activityName
activityType
processDefinitionId
processInstanceId
executionId
taskId
calledProcessInstanceId
assignee
startTime
endTime
durationInMillis
transactionOrder
deleteReason
processVariables
}
currentNodeList{
taskId
name
description
priority
owner
assignee
processInstanceId
taskDefinitionKey
processDefinitionId
createTime
category
parentTaskId
formKey
}
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 | schema |
---|
executedNodeList | 已执行节点列表 | List<TaskHistoryResp> | 任务执行历史对象列表 |
currentNodeList | 待执行节点列表 | List<TaskCurrentResp> | 待执行任务对象列表 |
- 任务执行历史对象 TaskHistoryResp:
参数名称 | 参数说明 | 数据类型 |
---|
activityId | 节点实例 ID | String |
activityName | 节点名称 | String |
activityType | 节点类型 | String |
activityStateType | 节点状态 | String |
processDefinitionId | 流程定义 ID | String |
processInstanceId | 流程实例 ID | String |
executionId | 执行 ID | String |
taskId | 任务 ID | String |
calledProcessInstanceId | 调用外部的流程实例 ID | String |
assignee | 处理人 | String |
startTime | 开始时间 | String |
endTime | 结束时间 | String |
durationInMillis | 耗时 | String |
transactionOrder | 事务 | Int |
deleteReason | 删除原因 | String |
processVariables | 流程变量 | String |
- 待执行任务对象 TaskCurrentResp:
参数名称 | 参数说明 | 数据类型 |
---|
taskId | 任务编号 | String |
name | 任务名称 | String |
description | 说明 | String |
priority | 优先级 | Int |
owner | 任务拥有人 | String |
assignee | 被指派执行该任务的人 | String |
processInstanceId | 流程实例 ID | String |
executionId | 任务所在的执行流 ID | String |
taskDefinitionId | 任务定义的 ID 值 | String |
processDefinitionId | 流程定义的 ID | String |
createTime | 创建时间 | String |
taskDefinitionKey | 任务 key | String |
dueDate | 耗时 | String |
category | 类别 | String |
parentTaskId | 父任务 ID | String |
formKey | 表单 key | String |
businessId | 业务编号 | String |
flowManageId | 流程管理编号 | String |
extendParam | 扩展参数 | String |
formId | 表单 id | String |
nodeCandidateType | 岗位/角色 | String |
nodeCandidateGroups | 岗位/角色的 Id | String |
nodeConstraintJson | 约束 json | String |
- 示例说明
{
"data": {
"queryTaskList": {
"executedNodeList": [],
"currentNodeList": [
{
"taskId": "33e8f768-3cca-11ee-9c8b-fefcfe52a4b4",
"name": null,
"description": null,
"priority": 50,
"owner": null,
"assignee": null,
"processInstanceId": "33e2b5d0-3cca-11ee-9c8b-fefcfe52a4b4",
"taskDefinitionKey": "Activity_09fgawe",
"processDefinitionId": "Process_1691484484977:11:2775ac34-391a-11ee-a0c2-fefcfe52a4b4",
"createTime": "2023-08-17 14:49:24",
"category": null,
"parentTaskId": null,
"formKey": null
}
]
}
}
}
2、查询任务是否存在
接口功能
根据 taskId 和 userId 查询任务是否存在,并且是否为当前任务
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | taskId | String | 是 | 任务 id |
2 | userId | String | 否 | 用户 id |
- 请求示例
query {
queryTaskExist(
data:{
taskId:"5011"
userId:"clhrdrxjd0000k7mkjik8kqd2"
})
{
isExistTask
isCurrentTask
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
isExistTask | 是否存在任务 | Boolean |
isCurrentTask | 是否当前任务 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"queryTaskExist": {
"isExistTask": false,
"isCurrentTask": false
}
}
}
3、流程管理-发布&部署
接口功能
对流程进行发布与部署
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | flowManageId | String | 是 | 流程管理 id |
2 | deployFlag | Int | 否 | 部署开关(1-自动部署;0-默认不自动部署) |
- 请求示例
mutation{
publishAndDeployFlow(
data:{
flowManageId:"94BD2FB0BA5D4570AF58D9CC8E2C0544",
deployFlag:1
}
){
processDefId
deployFlag
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
processDefId | 流程定义 id | String |
deployFlag | 发布及部署结果 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"publishAndDeployFlow": {
"processDefId": "Process_1708941438671:3:17504",
"deployFlag": true
}
}
}
4、流程管理-升级&部署
接口功能
对流程进行升级与部署
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | flowManageId | String | 是 | 流程管理 id |
2 | deployFlag | Int | 否 | 部署开关(1-自动部署;0-默认不自动部署) |
- 请求示例
mutation{
updateAndDeployFlow(
data:{
flowManageId:"7A27213C382A443CBB881950A73FCDF5",
deployFlag:1
}
){
processDefId
deployFlag
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
processDefId | 流程定义 id | String |
deployFlag | 发布及部署结果 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"updateAndDeployFlow": {
"processDefId": "Process_1708941438671:4:17510",
"deployFlag": false
}
}
}
5、启动流程
接口功能
启动流程实例
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | flowManageId | String | 是 | 流程管理 id |
2 | processDefId | String | 是 | 部署开关(1-自动部署;0-默认不自动部署 |
3 | businessId | String | 否 | 业务 id |
4 | variablesJson | String | 否 | Json 启动参数 |
5 | callbackInterfaceMethod | String | 否 | 流程回调事件请求接口方法 |
- 请求示例
mutation{
startFlow(
data:{
flowManageId:"3ACD8D5212F94A2B8621D8A185250374"
processDefId: "Process_1691484484977:11:2775ac34-391a-11ee-a0c2-fefcfe52a4b4"
businessId:"hh001"
}
){
businessId
processInstanceId
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
businessId | 业务 id | String |
processInstanceId | 流程运行实例 id | String |
- 示例说明
{
"data": {
"startFlow": {
"businessId": "hh001",
"processInstanceId": "33e2b5d0-3cca-11ee-9c8b-fefcfe52a4b4"
}
}
}
6、流程挂起
接口功能
挂起流程实例
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | processInstanceId | String | 是 | 流程实例 id |
- 请求示例
mutation {
suspendFlow(
data: {
processInstanceId:"15005"
}) {
isSuccess
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
isSuccess | 是否成功 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"suspendFlow": {
"isSuccess": true
}
}
}
7、流程激活
接口功能
激活流程实例
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | processInstanceId | String | 是 | 流程实例 id |
- 请求示例
mutation {
activateFlow(
data: {
processInstanceId:"15005"
}) {
isSuccess
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
isSuccess | 是否成功 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"activateFlow": {
"isSuccess": true
}
}
}
8、强制结束流程
接口功能
强制结束流程实例
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
序号 | 名称 | 类型 | 是否必填 | 描述 |
---|
1 | processInstanceId | String | 是 | 流程实例 id |
- 请求示例
mutation {
forceStopFlow(
processInstanceId:"15005"
) {
isSuccess
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
isSuccess | 是否成功 | Boolean |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"activateFlow": {
"isSuccess": true
}
}
}
9、审批任务
接口功能
通过任务 id 对任务进行审批
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
userId | 用户 Id | true | string |
comment | 意见 | false | string |
variablesJson | 全局参数 Json | false | string |
nodeStateMark | 节点状态标记详情 | false | string |
- 请求示例
mutation{
complete(
data:{
taskId:"67516"
userId:"clhrdrxjd0000k7mkjik8kqd2"
comment:"同意"
{
stateType:"deviation"
extensionJson:""
}
}
){
taskId
userTaskFlag
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
taskId | 业务 id | String |
userTaskFlag | 任务完成结果 | Boolean |
- 示例说明
{
"data": {
"complete": {
"taskId": "67516",
"userTaskFlag": true
}
}
}
10、跳过任务
接口功能
通过任务 id 对跳过任务
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
userId | 用户 Id | true | string |
- 请求示例
mutation {
skipTask(data: { taskId: "67526", userId: "clhrdrxjd0000k7mkjik8kqd2" }) {
taskId
skipTaskFlag
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
taskId | 任务 id | String |
skipTaskFlag | 任务完成结果 | Boolean |
- 示例说明
{
"data": {
"complete": {
"taskId": "67526",
"skipTaskFlag": true
}
}
}
11、回退任务-串行回退
接口功能
通过任务 id 对跳过任务
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
targetKey | 目标节点 | true | string |
comment | 回退意见 | false | string |
- 请求示例
mutation{
taskReturnSerial(
data: {
taskId:"42563"
targetKey:"Activity_1dqknwh"
comment:"test"
}
){
code
message
data
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
code | 响应码 | int |
message | 响应消息 | string |
data | 响应数据 | string |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"taskReturnSerial": {
"code": 0,
"message": "success",
"data": true
}
}
}
12、任务转办
接口功能
通过任务 id 将任务转办到用户或角色或岗位
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
userIdList | 目标用户 list(userIdList、roleIdList 与 postIdList 只有一个不能为空) | fasle | List< String> |
roleIdList | 目标角色 list | false | List< String> |
postIdList | 目标岗位 list | false | List< String> |
- 请求示例
mutation{
taskReassign(
data:{
taskId:"20044"
userIdList:["clonoypdy003ng23ey40quyq5","cls9qfjs0001xnat6mxqt7m5x"]
}
){
code
message
data
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
code | 响应码 | int |
message | 响应消息 | string |
data | 响应数据 | string |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"taskReassign": {
"code": 0,
"message": "操作成功",
"data": true
}
}
}
13、任务认领
接口功能
通过任务 id 认领当前任务
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
userId | 用户 Id | false | string |
- 请求示例
mutation {
taskClaim(
data: {
taskId: "20030",
}) {
code
message
data
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
code | 响应码 | int |
message | 响应消息 | string |
data | 响应数据 | string |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"taskClaim": {
"code": 0,
"message": "success",
"data": true
}
}
}
14、任务取消认领
接口功能
通过任务 id 取消认领当前任务
接口类型
HTTP 接口、GQL 接口
接口地址
URL | /api/java/graphql |
---|
http 请求方式 | POST |
请求参数
- 请求参数说明
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|
taskId | 任务 Id | true | string |
- 请求示例
mutation {
taskUnClaim(taskId:"20044"){
code
message
data
}
}
执行结果
- 返回参数:
参数名称 | 参数说明 | 类型 |
---|
code | 响应码 | int |
message | 响应消息 | string |
data | 响应数据 | string |
- 示例说明
{
"code": 0,
"message": "success",
"data": {
"taskUnClaim": {
"code": 0,
"message": "success",
"data": true
}
}
}