流程催办


可以对当前流程所有任务,或者指定节点的任务设置限时,如果任务逾期,则会对任务候选人周期发送催办消息。

也可以逾期后执行一些动态的脚本来干预流程,比如自动完成掉当前任务,终止掉流程实例等。

配置项说明

催办标题

该催办配置信息的简要描述,在催办消息中会被用于消息标题,如邮件则作为通知标题

催办任务节点

指定流程催办的任务节点,若不配置、则默认对该流程所有任务节点起效

条件脚本

条件脚本为 Groovy 脚本 ,在脚本中可以使用 插件变量,若 return false; 则不会执行该催办配置

任务限时

对任务处理时间进行限制(相对任务创建时间)

催办次数

当达到 任务限时 后,会对候选人进行催办1次,如果设置多次,请设置催办周期。
当达到配置的催办次数后,系统则不再催办

催办周期

当催办次数大于 1 时才会展示该配置项,即第一次催办后,间隔多久执行下一次催办,默认值 1 天

催办属性

  • 是否任务加急 : 催办的同时增加任务紧急程度,任务紧急程度越高、任务代办展示越靠前
  • 工作日模式 : 任务逾期,催办周期的时间间隔会以工作日进行计算,工作日在 系统管理-节假日管理中配置
  • 日历日模式: 以正常日期计算

催办前置脚本:

在执行催办前,执行的 Groovy 脚本, 可以用来干预流程,比如调用接口来执行终止流程、直接完成任务等
脚本中可以使用插件变量,以及 reminderTimes 催办次数
return false 则会跳过本次催办,到下个周期还会继续催办

催办消息类型

指定消息发送的类型,若不指定不会发送催办消息

富文本模板

富文本消息类型的模板,用在邮件等场景

普通文本模板

用于短信等不支持富文本标签的消息内容配置

其他

请注意

请注意:催办支持多条配置,若满足条件脚本、会对该流程任务创建多条 催办信息

催办信息记录
待催办任务表: bpm_plugin_reminder_trigger
催办日志表: bpm_plugin_reminder_log

催办定时计划

AgileBPM 定时计划使用的是 xxl-job 分布式定时计划,需要单独部署该工程

部署 xxl-job

  1. 根据 xxl-job 官方文档 部署好定时计划工程,并启动
  2. AgileBPM 工程配置内容
### xxl-job admin address list:调度中心部署跟地址:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调"。
xxl.job.admin.addresses=http://127.0.0.1:8081/xxl-job-admin

### xxl-job executor address:执行器"AppName"和地址信息配置:AppName执行器心跳注册分组依据;地址信息用于"调度中心请求并触发任务"和"执行器注册"。执行器默认端口为9999,执行器IP默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用。单机部署多个执行器时,注意要配置不同执行器端口;
xxl.job.executor.appname=agile-bpm
xxl.job.executor.ip=
xxl.job.executor.port=9999

### xxl-job, access token:执行器通讯TOKEN,非空时启用
xxl.job.accessToken=

### xxl-job log path:执行器运行日志文件存储的磁盘位置,需要对该路径拥有读写权限
xxl.job.executor.logpath=/data/logs/xxl-job/jobhandler/

### xxl-job log retention days:执行器Log文件定期清理功能,指定日志保存天数,日志文件过期自动删除。限制至少保持3天,否则功能不生效;
xxl.job.executor.logretentiondays=60

  1. 配置任务调度

    访问 xxl 任务调度中心工程 http://127.0.0.1:8081/xxl-job-admin
    添加一个执行器

    • AppName: 使用 AgileBPM中配置的 xxl.job.executor.appname 值,agile-bpm
    • 注册方式:使用自动注册即可

    这里注意,客户端注册上的IP需要能被调度中心访问。如 本地开发环境访问阿里云服务器部署的调度中心是不行的,虽然能注册成功,但IP是错的,没法正确供调度中心回调(坑)

  2. 配置任务管理器

  • 执行器: 选择上一步配置的执行器
  • 路由策略: 故障转移
  • Cron: 每十分钟执行一次 0 0/10 * * * ?
  • JobHandler: abReminderJob
    其他配置默认配置即可
  1. 启动定时计划

可以查看 执行器注册成功的 OnLine 机器地址,查看任务执行是否正确调度

到这里定时计划就配置完成了