Activiti工作流框架学习(七)

本文详细介绍了Activiti工作流框架的使用,包括启动流程实例、查询个人任务(通过指定办理人、流程变量和使用类)以及认领任务功能。接着讲解了如何分配和查询组任务,并对个人任务和组任务进行总结。最后,讨论了任务办理、查询流程状态、流程实例的挂起和激活等操作,全面阐述了流程实例和任务执行的管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

流程实例、任务的执行:
  • 启动流程实例
  • 查询我的个人任务(直接指定办理人)
  • 查询我的个人任务(使用流程变量)
  • 查询我的个人任务(使用类)【含认领任务功能】
  • 总结(个人任务)
  • 分配组任务进行查询(使用指定办理人)
  • 分配组任务进行查询(使用流程变量)
  • 分配组任务进行查询(使用类)
  • 总结(组任务)
  • 办理任务
  • 查询流程状态(判断流程正在执行,还是结束)
  • 流程实例的挂起或激活
  • 总结(流程实例,任务的执行)

一、启动流程实例

图示:

代码片段:

说明:
操作数据库的act_ru_execution表,如果是用户任务节点,同事也会在act_ru_task添加一条记录;


二、查询我的个人任务(直接指定办理人)

图示:

流程图中任务节点的配置:

代码片段:

说明:
1)因为是任务查询,所以从ProcessEngine中应该得到TaskService
2)使用TaskService获取到任务查询对象TaskQuery

3)为查询对象添加查询过滤条件,使用taskAssignee指定任务的办理者(即查询指定用户的待办任务),同时可以添加分页排序等过滤条件

4)调用list方法执行查询,返回办理者为指定用户的任务列表

5)任务ID、名称、办理人、创建时间可以从act_ru_task表中查到

6)在这种情况下,ProcessInstance相当于Execution
7)如果assignee属性为部门经理,结果为空。因为现在流程只到了“填写请假申请”阶段,后面的任务还没有执行,即在数据库中没有部门经理可以办理的任务,所有查询不到

8)一个Task节点和Execution节点是1对1的情况,在task对象中使用Execution_来表示他们之间的关系

9)任务ID在数据库act_ru_task中对应“ID_”列

附加:
在activiti任务中,主要分为两大类查询任务(个人任务和组任务两种):
1、确切指定了办理者的任务,这个任务将成为指定者的私有任务,即个人任务;
2、无法指定具体的某一个人来办理的任务,可以把任务分配给几个人或者一到多个小组,让这个范围内的用户可以选择性(如有空余时间时)来办理这类任务,即组任务
先知道个人任务的查询和办理,组任务的操作后面讲;

三、查询我的个人任务(使用流程变量)

图示:

流程图中任务节点的配置:

代码片段:
说明:
在开发中,可以在页面中指定下一个任务的办理人,通过流程变量设置下一个任务的办理人(后面讲解流程变量)


四、查询我的个人任务(使用类)

图示:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值