今天我要写这篇文章的时候,关注量变成了一个傻数,哈哈:
之前有一篇文章,介绍过基于多实例用户任务实现会签的方案 - 《Flowable6.4 - 会签实现方案》。
有的场景,使用多实例用户任务无法实现,比如下面这种会签场景:
在会签时,需要“部门普通员工”先审核,然后“部门主管”再审核,这种情况使用多实例用户任务显然无法实现,即使勉强实现,最终所描述的场景肯定有所欠缺。
在使用...
Flowable6 – 事件
貌似从来没有专门介绍过Flowable的事件,只是在流程设计器部分提到过,那么就总结一下吧。
Flowable所有的事件类型,可以参见枚举:
org.flowable.common.engine.api.delegate.event.FlowableEngineEventType
比如最常用的:
/** * A task has been created. This is thrown when task is fully initialized (b...
Flowable6 – 自定义缓存(2)
接上一篇的自定义缓存,这次具体说说如何自定义缓存,以及使用了Redis后,我是如何能够让它正常运行。
首先,自定义缓存需要实现一个接口,代码如下:
public class ProcessDefinitionRedisCache implements DeploymentCache<ProcessDefinitionCacheEntry> { @Override public ProcessDefinitionCacheEntry&nbs...
Flowable6 – 自定义缓存(1)
我本来以为自定义缓存是个很容易的事情,毕竟接口是已经存在的,所以理论上只要实现接口,然后完成序列化和反序列化就可以了。
而实际上,折腾了一周多的时间,最后也不是真正意义上的成功。
先上结论:分析了一下源码,发现从Activiti6开始,缓存的类有了些许改变,加入了BpmnModel和Process。
public class ProcessDefinitionCacheEntry implements Serializable {&...
Flowable6.6 – ID生成器
最近被Flowable的自定义缓存搞的神烦,今天先看看如何自定义它的ID生成器,后面再细说缓存的事。
如果只是想使用自定义ID生成策略,只需要以下代码就好了:
configuration.setIdGenerator(new IdGenerator() { @Override public String getNextId() { //这里使用hutool的U...
Flowable6.6 – 升级初体验
上次在Flowable - 运行UI时,遇到了索引超长的问题,后来我又仔细琢磨了一下。
当时运行的语句是:
CREATE TABLE ACT_APP_DEPLOYMENT (ID_ VARCHAR(255) NOT NULL, NAME_ VARCHAR(255) NULL, CATEGORY_ VARCHAR(255) NULL, KEY_ VARCHAR(255) NULL, DEPLOY_TIME_ datetime NULL, TENANT_ID_ ...
Flowable – 运行UI
Flowable最近的版本已经是6.6了,源码的下载地址:
https://github.com/flowable/flowable-engine.git
不过github的地址下载速度堪忧,所以可以尝试一下国内的镜像:
https://gitee.com/mirrors/flowable.git
之前一直介绍的都是如何整合自带的编辑器,如果只是想入门,或者想体验一下Flowable,可以直接使用其自带的管理界面。
在6.4版本内,它的UI是分为多个Module管理的,如下图:
...
Flowable6.4 – 绘制流程图
一般需要流程图的场景:
1. 发起流程时,需要从全局了解整体情况、所涉及的经办人,便于必要时进行催办或者发起线下沟通。
2. 流程运行时或结束后,查看流程所经历的办理过程。
在Flowable中,流程图的绘制可以参见:
org.flowable.image.impl.DefaultProcessDiagramGenerator
本文将分成两部分,简单介绍一下流程图的绘制和办理节点的高亮现实。
首先,如何绘制流程图。
总共三个步...
Flowable6.4 – 设置流程分类
这次的内容是从NutzFW里面学来的,我很喜欢Nutz这个框架。所以,我觉得Nutz的衍生项目都很优秀,包括我的权限管理。
如果查看过act_re_deployment和act_ru_task,会发现这两张表里面都有一个相同的字段 —— Category。使用这个字段,可以为流程和任务添加分类,便于在不同的环境使用。
act_re_deployment
act_ru_task
首先,如何设置act_re_deployment中的Category?
为Deployment设置Catego...
Flowable6.4 – 删除流程
上周忙的要死,微信号的留言都过期了。留言中有个问题,我觉得就是问如何删除一个流程。
这个问题,我能想到的有两个方法,就抛砖引玉一下了:
1. 直接跳转到结束节点,流程自然就没了,可以见Flowable6.4节点跳转初探。
2. 使用API接口删除流程实例。
第一个方法在这里就不详细说了,之前的分享应该就可以解决问题了。这次主要说说第二个办法。
这里用到的API很简单,如下:
/*** ...