flowable 用户任务 任务监听器及执行监听器

执行监听器 允许您在流程执行期间发生特定事件时执行外部Java代码或评估表达式。
执行侦听器意味着侦听一组有限的流程执行操作,如start、end和take,开发者可以在启动或结束之前添加一些特定的业务逻辑。

任务监听器 是处理业务逻辑的重要的地方,当任务创建、设定负责人、完成任务时都可以监听的到从而来处理自己的业务。

需求举例一个任务监听器:
在某一个审批节点上,需要根据表单业务逻辑,动态分配下一个节点的审批用户。
比如,节点(部门经理)处,,根据表单的“部门”字段分配给对应的部门经理。即假如表单的部门字段是A,那就分配给A部门的部门经理去审批,而不要给B部门的部门经理审批。

实现步骤
(1)在节点“部门经理”处,配置任务监听器
这里的事件有四种可以选择:create、assignment、complete、deletet
create(创建):当任务已经创建,并且所有任务参数都已经设置时触发。
assignment(指派):当任务已经指派给某人时触发。
complete(完成):当任务已经审批完成时触发,即审批人审批结束后。
delete(删除):在任务即将被删除前触发。
根据需求,我们是要在到达节点“部门经理”之前的时候,决定哪个部门经理审批所以事件选择 create

(2)然后选择委托表达式,填写我们对于的任务监听器实现,这里填写${purchaseApplyListener)

(3)在Java代码中新建类:PurchaseApplyListener.java,代码如下,注意 @Component填写的值要跟委托表达式填写的一致

注意:下面代码只是简略示例,实际需要结合自身的业务逻辑做修改

@Component (value="purchaseApplyListener")
public class PurchaseApplylistener implements TaskListener{

	@0verride
	public void notify(DelegateTask delegateTask){
		//TODO 实现你的任务监听器逻辑
		List<String>users = new ArrayList<>();
		users.add("admin");//将admin加入审批
		delegateTask.addCandidateUsers(users);//给该节点添加候选审批用户
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值