activit6.0使用经验

最近在做公司B端业务,要用到工作流,上一篇文章记录了技术调研的结果,现在开始记录使用时的架构设计和常见的问题:

一:架构体系:

我们考虑到扩展性,易用性,隔离性,动态性,把表单和审批人设置的功能都拆成了单独的服务所以我们的工作流审批模块主要包括:

1.原生的activiti6引擎:负责流程流转

2.外置表单服务:流程部署后根据流程实例设置所有节点的表单,流程启动时通过外置表单引导用户填写信息

3.用户节点服务:流程部署后根据流程实例设置所有的节点的用户组,在任务节点开始通过监听器到用户服务获取该节点的审批人

考虑到模型图的正确性,提供β测试版本,测试通过发布后用户可见可用

下面给个时序图:

 

 

 

二.开发过程遇到的问题(持续更新)

 1.β版本和release版本的设计:

 activit6官方提供的app设计流程有个流程版本号的字段,但是实际使用了下没有生效,数据库并没有更新

方案:利用act_re_procdef 表 engine_version_来做,自定义sql执行,流程创建时该字段为空,发布后设置为1,前端返回数据增加判断

2.自定义sql执行的bug

NativeProcessDefinitionQuery processDefinitionQuery = repositoryService.createNativeProcessDefinitionQuery();
processDefinitionQuery.count() 有bug,参数类型不匹配,数据为空报错,改为:processDefinitionQuery.list().size();

 

持续更新,项目上线后继续更新

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值