Activiti流程引擎与业务整合方案
0. 前言
前些时间,基于流程引擎activiti做了一个审批功能,但是扩展性并不是很好,对于新的流程的开发量还是比较大。于是需要进行升级改造,增强其通用性。
1. 场景
对于不同的业务类型,需要接入统一的审批流程进行审批。需要满足以下要求:
- 不同业务类型需传入不同流程变量,以便于配置流转条件;
- 流程配置界接入自有业务系统,支持审批人的选择
- 审批人类型包括但不限于用户、角色
- 流转条件配置需要简化,提高用户体验。
- 流程配置界面支持多语言
2. 思路及方案设计
需求:不同业务类型需传入不同流程变量,以便于配置流转条件
方案:提供统一接口发起流程,入参传入流程变量需求:流程配置界接入业务系统,支持审批人的选择
方案:改造activiti默认配置界面主要修改文件为:
properties-assignment-controller.js
assignment-popup.html需求:审批人类型包括但不限于用户、角色
方案:统一作为候选人处理,以不同前缀区分,例如对于用户:user.10001,对于角色:role.10001等主要修改文件为:
properties-assignment-controller.js
assignment-popup.html需求:流转条件配置需要简化,提高用户体验
方案:引入query builder组件,可视化配置条件,并将条件sql转化为流程引擎支持的UEL表达式。需要全局引入querybuilder库。需要修改的文件为
condition-expression-popup.html
properties-condition-expression-controller.jsGo to : QueryBuilder文档
需求:流程配置界面支持多语言
方案:改造activiti前端和后端语言配置部分代码,实现多语言切换。需要修改地方有:
(1) 后端修改:获取左侧图标栏配置的json文件,中文时取得中文json,英文时取得英文json
(2) 前端修改:需要在i18n文件夹下新增语言配置文件;然后修改app.js里的语言配置:
$translateProvider.preferredLanguage(‘your language’);
3. 实现效果
审核人选择页面:
流转条件配置页面:
Activiti流程引擎与业务整合方案相关推荐
- 【activiti】activiti流程引擎配置类
activiti流程引擎配置类 1.流程引擎配置类 流程引擎的配置类:ProcessEngineConfiguration,通过ProcessEngineConfiguration可以创建工作流引擎P ...
- Activiti流程引擎
jBPM是目前市场上主流开源工作引擎之一,在创建者Tom Baeyens离开JBoss后,jBPM的下一个版本jBPM5完全放弃了jBPM4的基础代码,基于Drools Flow重头来过,目前官网已经 ...
- 基于Activiti流程引擎的制造业解决方案
一.客户背景 广东科达洁能股份有限公司(原广东科达机电股份有限公司,简称"科达洁能")创建于1992年,于2002年在上交所上市(股票代码:600499),涵盖建材机械(陶瓷机械. ...
- 开源流程引擎activiti、flowable、camunda选哪个好?
市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.其中:Jbpm4.Activiti.Flowable.camunda四个框架同宗同源, ...
- osworkflow、jbpm、activiti、flowable、camunda开源流程引擎哪个好?
市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.其中:Jbpm4.Activiti.Flowable.camunda四个框架同宗同源, ...
- 关于自学activiti开源流程引擎的一点点感悟和代码分享demo教程
原文:关于自学activiti开源流程引擎的一点点感悟和代码分享demo教程 源代码下载地址:http://www.zuidaima.com/share/1765650437721088.htm 这应 ...
- Activiti 工作流引擎的初步使用
最近领导让我研究下工作流,于是查啊查就查到了Activiti,特么刚开始一直查的是Activity,查出来一堆Android的东西,我也是醉了.话不多说,下面就记录下这2天的研究成果吧. 所用环境 M ...
- camunda流程引擎如此简单(二)
工作流服务组件和表介绍 camudna是从activity分裂出来的其实绝大多数表和activity也一致的,所以用户能很好地从activity迁移过来 几大服务介绍 服务名称 描述 Reposito ...
- Spring中部署Activiti流程定义的三种姿势
摘要:本文对工作流Activiti框架中流程定义的部署进行了详细说明介绍. 本文分享自华为云社区<项目中工作流部署详细解析!Spring中部署Activiti流程定义的三种姿势>,作者:攻 ...
- Activiti6.0流程引擎学习——(11)使用IDEA编码实现的请假流程
本篇博客要使用IDEA来实现之前绘制好的请假流程图.流程图如下: 具体创建这个流程图请看这篇博客:https://blog.csdn.net/JJBOOM425/article/details/850 ...
最新文章
- JSP 九大内置对象
- c#中拖动图片的例子
- mongodb系列教程
- php迭代什么意思,PHP中迭代变量的坑
- 每天一道LeetCode-----获取无重复项/有重复项序列的全排列
- python接口测试_Python接口自动化测试(一)
- w3c html规范规范文档,前端开发规范
- django -- 联合索引
- qcustomplot时间坐标轴画直线_为什么鸡看到画直线会晕?
- Linux常用知识与命令
- Android版-支付宝APP支付
- STM32 PWM呼吸灯程序
- 2020 字节跳动,网易,华为(1),阿里P7级别面试经验总结
- 运放全波整流电路_万能整流电路:运放+整流二极管
- 明天全国哀悼日,小程序只需三行代码秒变黑白
- 一款经典的 jQuery Lightbox 灯箱效果
- Using Vanishing Points for Camera Calibration
- Win 10 运行软件报‘MSCOMCTL.OCX‘缺失怎么办
- Air Pods用着怎么样?
- 什么是云密码?密信云密码服务产品提供什么?