流程启动、任务完成、服务编排 场景的应用

启动接口文档原地址

流程启动的一些方式

一、接口启动:

Swagger 接口地址 http://localhost:8080/swagger-ui.html#!/bpm-instance-controller/doActionUsingPOST

post /bpm/instance/doAction

eg:

{
"defKey": "jdlc1",
"data": {
"ycsq": {
"tjr": "王小二"
}
},
"action": "start",
"extendConf": {
"isUrgencyTask": "false"
},
"opinion": "请注意,情况复杂!"
}

二、通过URL地址,启动流程

支持配置到自定义列表,等任意打通了鉴权的前端页面
具体地址请启动流程后,右键查看URL地址,请务必注意启动地址必须用key启动,否则可能启动旧版本的流程
如:https://test1.agilebpm.cn/bpm/instance/start/yongyinshenqing

三、携带业务数据主键ID启动流程

用于已有业务对象启动流程,他会启动时自动加载该业务对象的数据,直接发起流程申请
URL地址后面添加 bizId=id 即可
/bpm/vueForm/start.html?defKey=jdlc1&bizId=id

任务完成的一些方式

任务完成接口

Swagger 接口测试地址 http://localhost:8080/swagger-ui.html#!/bpm-task-controller/doActionUsingPOST_1

post /bpm/instance/doAction

eg:

{
"action": "agree",
"data": {},
"opinion": "我通过接口操作同意动作",
"taskId": "425860173614546945",
"variables": {"variableAAA":"aaa"}
}

任务批量完成接口

Swagger 接口测试地址 http://localhost:8080/swagger-ui.html#!/bpm-task-controller/doActionsUsingPOST_1

post /bpm/task/doActions

eg:

[
{
"action": "string",
"businessKey": "string",
"data": {},
"defId": "string",
"defKey": "string",
"destination": "string",
"extendConf": {},
"formType": "string",
"instanceId": "string",
"nodeUsers": {},
"opinion": "string",
"taskId": "string",
"variables": {}
}
]

服务编排场景的一些数据传递方案

一、流程变量

启动,或者任务处理都支持设置流程变量,流程变量在流程实例生命周期中都可以使用
而且流程变量支持主子流程共享的设置,可以在主子流程间交互,具体请看流程全局插件,流程变量插件的配置

二、业务对象

AgileBPM 的业务对象可以在流程运行时直接使用,启动时携带业务对象即可,HTTP事件支持传递业务对象,并支持反馈更新后的业务对象
BpmPluginGlobalInvokeResultDto.resetBusData ,返回 该值后会对业务对象进行更新操作