工作流(activiti7)教程-简单的介绍和使用(一)
工作流(activiti7)教程-简单的介绍和使用(二)
工作流(activiti7)-进阶使用(流程实例,个人任务,组任务)(三)
工作流(activiti7)-进阶使用(流程变量,网关,监听器,拦截器)(四)
工作流(activiti7)-进阶使用(子流程CallActivity详细使用)(五)
工作流(activiti)
1.1 工作流介绍
1.2 工作流系统
1.3 具体应用
2.1集成使用
2.2 BPM
工作流(Workflow),就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者促使此目标的实现”。说白了就是流程一个过程。(比如请假流程,报销流程,审批流程等等。。)。
Activiti是一个工作流引擎, activiti可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言(BPMN2.0)进行定义,业务系统按照预先定义的流程进行执行,实现了业务系统的业务流程由activiti进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。
官网:https://www.activiti.org/
一个软件系统中具有工作流的功能,我们把它称为工作流系统,一个系统中工作流的功能是什么?就是对系统的业务流程进行自动化管理,所以工作流是建立在业务流程的基础上,所以一个软件的系统核心根本上还是系统的业务流程,工作流只是协助进行业务流程管理。即使没有工作流业务系统也可以开发运行,只不过有了工作流可以更好的管理业务流程,提高系统的可扩展性。
正常情况下,这些流程也都可以通过接口来实现,但是一种流程就需要编写一套代码。如果流程变化(如比请假之前是经理审批,然后中间多了一个经理审批,就需要再次修改代码),多种流程就需要针对不同的流程编写不同的业务代码,而工作流就实现这样的方式。一套就够了。。。。
如下流程就可以通过工作流实现,省去编写代码时间。。
1. 关键业务流程:订单、报价处理、合同审核、客户电话处理、供应链管理等 2. 行政管理类:出差申请、加班申请、请假申请、用车申请、各种办公用品申请、购买申请、日报周报等凡是原来手工流转处理的行政表单。 3. 人事管理类:员工培训安排、绩效考评、职位变动处理、员工档案信息管理等。 4. 财务相关类:付款请求、应收款处理、日常报销处理、出差报销、预算和计划申请等。 5. 客户服务类:客户信息管理、客户投诉、请求处理、售后服务管理等。
第一种:下载源码,集成前端代码,使用网页划流程图。。
第二种:不考虑前端,安装流程图插件,后端自测自用,(本教程用插件画流程图)
idea安装插件,我用的是2018.3的版本,如果2020.1的版本搜索不出插件需要去官网自己搜索下载本地安装了。
如图:搜索bpm,安装actibpm插件。然后重启
安装后右键新建就可以看到新建流程图bpm文件了。。。
简单的使用主要包含了开始startEvent,结束EndEvent,用户任务Usertask三个按钮。。如图:
BPM(Business Process Management),即业务流程管理,是一种以规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的系统化方法,常见商业管理教育如EMBA、MBA等均将BPM包含在内。流程图的勾画需要建立bpmn文件和对应的png图片。
创建png图片
第一步,画出的流程图其内部也是xml文件,所以对其修改后缀为xml。然后右键如下图
这样就生成了pmg图片,点击export to file 导出,选择同一个目录。
最后把xml文件修改为后缀尾bpmn就行了。
过程中遇到问题:
1:绘制activity的bpm工作流程图的时候,在name项中填写中文,开始的时候没问题,显示的确是中文,关闭文件再打开发现已经乱码,重启idea效果相同,如图
解决方案:修改idea启动参数,添加字符集编码
关闭idea——>进入idea安装目录/bin——>notepad++按需打开如图标注的两个文件中的一个,64位系统选择带64的那个,32位选择上边不带的那个。
分别添加一行 -Dfile.encoding=utf-8 重启就好了。。。
github地址 https:///itwsj/activitidemo
下一篇对流程图做详细的介绍和使用。