之前一直用的流程模型都是,固态的,写死的

由于固定分配方式,任务只能一步一步执行,执行到每一个任务将按照bpmn的配置去分配任务负责人.这显然在实际开发中是不可能的

所以我们需要动态分配人员

表达式分配

UEL表达式

Activiti使用UEL表达式,UEL是JavaEE6规范的一部分,UEL(Unified Expression Langguage)即统一表达式语言,Activiti支持两个UEL表达式,UEL-Value和UEL-Method.

UEL-Value 定义如下

Activiti7 任务人员动态分配(理论)-LMLPHP

${assingee}这个变量是activiti的一个流程变量,或者

Activiti7 任务人员动态分配(理论)-LMLPHP

user也是activiti的一个流程变量,user.assignee表示通过user的getter方法获取值

UEL-Method 方式如下:

Activiti7 任务人员动态分配(理论)-LMLPHP

userBean是Spring容器中的一个Bean,表示调用该Bean的getHolidayId方法

UEL-Value和UEL-Method集合

再比如:

${idapService.findManagerForEmployee(emp)}

IdapService是Spring容器的一个Bean,findManageForEmployee是该Bean的一个方法,emp是activiti流程变量,emp作为参数传到IdapService.findManagerForEmployee方法中

其他:

表达式支持解析基础类型 bean list array 和 map,也可以作为条件判断

如下:

  ${order.price > 100 && order.price < 250}

作者:彼岸舞

时间:2020\09\05

内容关于:Activiti工作流

本文来源于网络,只做技术分享,一概不负任何责任

05-26 18:41