Activiti 7系列文章目录
Activiti7 工作流设计器【一】
Activiti7 创建表【二】
Activiti7 表结构介绍 【三】
Activiti7 设计器创建流程 【四】
Activiti7 部署流程【五】
Activiti7 查询流程【六】
Activiti7 删除流程【七】
Activiti7 生成SVG图片【八】
Activiti7 发起任务【九】
Activiti7 查询任务执行流程图【十】
Activiti7 完成任务【十一】
Activiti7 历史数据【十二】
Activiti7 任务办理人、委派、转办、持有人、候选人、候选人组、审批意见【十三】
Activiti7 监听器【十四】
Activiti7 流程变量【十五】
Activiti7 网关Gateway【十六】
Activiti7 整合SpringBoot【十七】
Activiti7 多种任务类型【十八】
Activiti7 子流程【十九】
Activiti7 流程回退、流程拒绝【二十】
定义流程
通过变量控制流程走向
【请假审批】完成
【请假申请】不需要配置变量
@Test
public void testApplyTask() throws IOException {
Task task = taskService
.createTaskQuery()
.singleResult();
taskService.complete(task.getId());
generateImage();
}
【经理审批】拒绝
这里需要通过变量:result=0来控制
@Test
public void testApplyTask() throws IOException {
Task task = taskService
.createTaskQuery()
.singleResult();
Map<String,Object> variables = new HashMap<>();
variables.put("result",0);
taskService.complete(task.getId(),variables);
generateImage();
}
流程文件
驳回介绍
我们可以通过变量控制来控制流程走向,达到拒绝效果。
注意
不同节点的变量名不能一样,否则值可能会导致异常
- 【经理审批】
- pmresult=1同意
- pmresult=0拒绝
- 【人事审批】
- hrresult=1同意
- hrresult=0拒绝
- 【CEO审批】
- ceoresult=1同意
- ceoresult=0拒绝
发起流程
【经理审批】同意
完成任务【经理审批】添加变量:result=1
@Test
public void testCompleteTask() throws IOException {
Task task = taskService
.createTaskQuery()
.singleResult();
Map<String,Object> variables = new HashMap<>();
variables.put("pmresult",1);
taskService.complete(task.getId(),variables);
}
【人事审批】拒绝
@Test
public void testCompleteTask() throws IOException {
Task task = taskService
.createTaskQuery()
.singleResult();
Map<String,Object> variables = new HashMap<>();
variables.put("hrresult",0);
taskService.complete(task.getId(),variables);
}