方式一:UEL 表达式
assign字段使用${user}或者${user.assignee}
更多信息可以参考官方文档相关说明
方式二:方法调用
${userService.selectById(userId)}
userService必须在spring容器内被声明,selectById是该bean下的一个方法,userId是流程变量,且必须在该节点执行前被赋值。
方式三:使用监听器
任务监听器中事件分为create、assignment、delete、complete 事件,其中assignment事件先于create事件触发。网上看到很多文章说监听create事件进行赋值的,完全是不负责任的。
此处请谨慎使用,建议监听上一节点的complete事件或者监听flow的事件进行赋值。
笔者此处不推荐使用监听器赋值,因为很多时候中国式审批流很奇葩。
方式四:
在流程图中直接写死。
总结:推荐第一种和第二种方式进行赋值,第三种在特殊场景可以使用,第四种学习阶段可以使用。



