activiti 启动流程(Activiti入门体验)

一、前言

Activiti是一个比较成熟的框架,但是网上的资料大多都是比较简单的教程,有很多自己想要的功能找不到相关文档,索性就自己写一个。

二、Activiti是干啥的

OA系统里面有一个审批的功能,大致内容就是一个人发起一个审批时间,然后后面按照设定好的流程,一级一级的进行审批。比如张三发起一个请假的申请,然后由张三的直属上级进行审批,通过后再由人事总监进行审批,最后整个流程才算结束。Activiti就是这个流程引擎,主要用来实现这个功能。

三、体验官方Demo

activiti官网:https://www.activiti.org

源码:https://github.com/Activiti/Activiti

Activiti是基于Apache License 2.0的协议,也就是说完全开源,大家可以随便用。开始前需要先安装好JDK(1.7 ),准备好tomcat(基础内容,这里不再赘述)。

Activiti的版本已经出到7.x了,但是6.x的ui做的比较全面,这里就以6.x版本进行讲解。下载6.x的包

https://github.com/Activiti/Activiti/releases/downlOAd/activiti-6.0.0/activiti-6.0.0.zip

解压以后再wars文件夹下有3个war包,这个就是官方提供的Demo应用。官方很良心,连Demo应用都提供了,但是没告诉大家怎么用,也是绝了(也许是我没找到),折腾了好半天才走通流程。

我们把3个war包放到tomcat的webapp文件夹下,然后启动tomcat。

1、activiti-app

activiti-app是一个主要的demo,可以走完审批的全部流程,基本上可以体验完activiti的功能。

访问:http://localhost:8080/activiti-app/

activiti 启动流程(Activiti入门体验)(1)

输入账号密码:admin/test

activiti 启动流程(Activiti入门体验)(2)

1.1、新建账户

首先进入Identity management,新建账户user1和user2

activiti 启动流程(Activiti入门体验)(3)

1.2、新建表单

然后进入Kickstart App,新建表单

activiti 启动流程(Activiti入门体验)(4)

给表单命名

activiti 启动流程(Activiti入门体验)(5)

编辑表单,将左侧的组件拉到右边

activiti 启动流程(Activiti入门体验)(6)

编辑组件内容

activiti 启动流程(Activiti入门体验)(7)

编辑好表单以后点保存

activiti 启动流程(Activiti入门体验)(8)

1.3、新建流程

点击Process新建流程

activiti 启动流程(Activiti入门体验)(9)

给流程命名

activiti 启动流程(Activiti入门体验)(10)

进入流程编辑界面,默认会有一个空心圆圈,这个是流程的开始节点,我们可以从左侧拉取组件到右边,也可以点击空心圆圈出现的菜单里面选择下一个节点

activiti 启动流程(Activiti入门体验)(11)

点击第二个节点,设置处理这个节点的人员

activiti 启动流程(Activiti入门体验)(12)

设置为user1

activiti 启动流程(Activiti入门体验)(13)

给第二个节点设置表单

activiti 启动流程(Activiti入门体验)(14)

选择上一步新建的表单apply

activiti 启动流程(Activiti入门体验)(15)

同样的方式设置第三个节点的处理人为user2并且表单也是apply

activiti 启动流程(Activiti入门体验)(16)

保存并且退出

activiti 启动流程(Activiti入门体验)(17)

1.4、新建应用

点击Apps,新建应用

activiti 启动流程(Activiti入门体验)(18)

给应用命名

activiti 启动流程(Activiti入门体验)(19)

编辑模型

activiti 启动流程(Activiti入门体验)(20)

选择上一步新建的模型apply1,然后保存退出

activiti 启动流程(Activiti入门体验)(21)

选择新建的应用,点击发布(发布以后才能使用)

activiti 启动流程(Activiti入门体验)(22)

发布以后界面上会多一个应用

activiti 启动流程(Activiti入门体验)(23)

1.5、测试流程

登录账户user1,进入Task App

activiti 启动流程(Activiti入门体验)(24)

点击Process,开始流程

activiti 启动流程(Activiti入门体验)(25)

启动一个流程

activiti 启动流程(Activiti入门体验)(26)

点击Tasks可以看见发起的流程,填写申请内容以后点击完成

activiti 启动流程(Activiti入门体验)(27)

然后流程就走到下一个节点了,当前界面上就看不见了

activiti 启动流程(Activiti入门体验)(28)

如果想看,可以在筛选器里面调整参数,查看完成的任务

activiti 启动流程(Activiti入门体验)(29)

然后就可以看见完成的任务

activiti 启动流程(Activiti入门体验)(30)

点击Process,选择刚才的流程,点击Show diagram可以查看流程的进度情况

activiti 启动流程(Activiti入门体验)(31)

可以看到流程已经到审批的节点了

activiti 启动流程(Activiti入门体验)(32)

登录user2账户,进入Tasks App可以看到有待完成的任务,点击Complete就可以完成任务

activiti 启动流程(Activiti入门体验)(33)

一个简单的审批流程就完成了。

2、activiti-rest

activiti-rest是Activit的rest api,项目启动后访问

http://localhost:8080/activiti-rest/docs/

输入账号密码:kermit/kermit

activiti 启动流程(Activiti入门体验)(34)

可以看到Activiti提供的接口文档,但是你仔细查看会发现activiti-rest的接口文档和activiti-app的界面好像有点对不上,后来下载了Activiti 5.x的demo才知道,activiti-rest应该是和5.x的应用demo配套的,放到Activiti 6.x只是这些接口还能用,要使用接口文档也可以比较方便地进行使用。

3、activiti-admin

activiti-admin有点像springboot里面的admin,主要是做数据监控的,访问地址

http://localhost:8080/activiti-admin

输入账号密码:admin/admin

activiti 启动流程(Activiti入门体验)(35)

进来以后发现这里啥数据都没有,那是因为现在activiti-admin监控的服务地址是空的,点击Configuration,编辑Activit Rest endpoint

activiti 启动流程(Activiti入门体验)(36)

将端口改为8080

activiti 启动流程(Activiti入门体验)(37)

Deployment可以发布的流程

activiti 启动流程(Activiti入门体验)(38)

Definitions可以查看服务的Process Definitions

activiti 启动流程(Activiti入门体验)(39)

Instances是启动的实例

activiti 启动流程(Activiti入门体验)(40)

Tasks可以查看任务

activiti 启动流程(Activiti入门体验)(41)

Jobs目前数据还是空的

activiti 启动流程(Activiti入门体验)(42)

四、小结

有了这3个官方Demo以后,感觉对Activiti有了一定的了解,如果你觉得自己拿着接口文档以及activiti-app就可以自己搞一个OA系统了,那我只能说Too Young Too Simple!

下一章继续讲解Activiti

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页