# 1. 节点前后置事件说明

前置事件:在任务产生时执行

后置事件:在任务完成时执行

事件脚本主要用于执行一些个性化的需求,例如更新流程变量的值,修改某个字段值,调用第三方接口,启动某个流程等等。

# 2. 事件脚本使用条件

事件脚本必须实现com.hotent.base.groovy包下的IScript或者IUserScript接口。2个接口仅为一个标识接口,没有接口方法,实现类会自动被注入到Groovy脚本引擎中直接使用。

要修改原有脚本必须要有流程runtime模块的源码,如新增脚本并且采用五合一部署的话,可以不需要runtime源码,直接在assembly模块写脚本方法即可。

# 3. 事件脚本可以使用的对象或者说明

新增一个TestScript脚本,加上@Component注释。新增一个测试方法,接收3个系统内置对象作为参数和一个自定义参数

以下3个对象为bpm内置对象,在调用的时候直接传入对应对象key即可在方法使用。

nodeDef:当前任务的流程定义节点对象,可以从中获取一些节点信息或者节点配置。

delegateTask:当前产生的任务对象,可以从中获取到任务相关信息,如任务id和实例id

cmd:流程审批线程对象,其中存放着表单数据,审批动作,审批意见,和流程实例和任务的一些信息。

用户自定义的参数,只能是基本数据类型。

# 4. 脚本调用说明

使用类名首字母小写(beanId)+”.”+方法名和方法参数接口即可