发现很多人讲到flowable,就是大概讲一下整合里面一些名词之类,实操偏少,或者用一个小demo演示一下,就完了。但是一涉及到具体的业务,你会发现涉及到工作流要有多麻烦,考虑很多情况进去会涉及到条件设置,逻辑判断甚至官方提供的那么多方法你不可能直接拿来用,你要自己去设计。我这边以我手头的一个项目和自己练手的过程做个演示。
实际上我们的工作流使用过程大致分为以下几步:
部署流程文件----》流程发起------》中间环节的审批任务
流程文件实际上就是我们之前介绍各种事件名词,最后会在xml文件中体现出来的,但实际种我们不是编写出来的,而是画出来的,一方面比较直观易懂,操作起来也相对人性了不少。
部署流程文件实际上就是定义流程了,流程发起产生实例,中间的审批节点审批处理任务。(实际上要考虑到流程会修改,会删除,同样的一类会新增, 发起流程也是多姿多彩,参数设计。同样 审批有同意有驳回,有自动同意等等一大堆烧脑的问题)
一 画流程图:部署画流程图软件
流程图是流程定义部署的关键,毕竟手写流程xml文件,确实太难受了,就有点像以前spring的xml配置文件,最后跟个裹脚布一样。所以能用可视化工具尽量不要手工编辑。
部署的工具其实就是:
flowable流程包
打开这个压缩包,一共有两个war包(在war包路径下)
![在这里插入图片描述](https://img-blog.csdnimg.cn/33a4d3e1829e474faf3496eda09ca9ed.png)
这里面一个是给人调试用的restful风格的一个工程。另外一个flowable-ui.war是用来绘画刘晨图的包,我们要部署的就是这个包,来作为画流程图的工具。
部署注意以下,实际这个war包你也可以理解是一个web项目,部署的方式都是你扔到你的tomcat里面的webapps下面,然后启动tomcat,tomcat会自动解压这个war包,你对应的输入就可以启动项目()。
http://localhost:8080/flowable-ui
但是有时候会404,首先你看一下你有没有设置tomca这些,第二方面注意版本,tomcat10可能因为一些原因JavaEE还是什么原因,要修改工程重现构建,这里我推荐用tomcat8或者9(我这边用的是9).
二 进入绘画软件并绘画流程图
http://localhost:8080/flowable-ui 用账户:admin/test 登录
![在这里插入图片描述](https://img-blog.csdnimg.cn/56ef959ab5f24685be2ac593b57665bd.png)
我们进入流程图绘制的页面:
![在这里插入图片描述](https://img-blog.csdnimg.cn/f3dc1c4b63b24599992bccf32479dd20.png)
我这边已经有两个文件,绘画跟我们用别的流程图差不多,只不过我们这边涉及到流程文件事件更多,要根据具体场景画图
![在这里插入图片描述](https://img-blog.csdnimg.cn/141a04c0377b427792885e9851d2d22a.png)
开始事件,结束事件不要再说了
这里要提的是活动,我们常用还是“用户活动”,用户活动有很多要注意的是,不是画个图上去,要去定义,比如说完成条件我们除了可以用变量意外可以自定义。
![在这里插入图片描述](https://img-blog.csdnimg.cn/b1eae8d741f4497f8f1def37a40ab8b5.png)
执行顺序也要定义流条件
![在这里插入图片描述](https://img-blog.csdnimg.cn/2a8f59d21aec4c7b809cc4c6ef0a8198.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/86c92c8da8774a4db67eea72b352563f.png)
还有就是网关,相当于是判断条件
![在这里插入图片描述](https://img-blog.csdnimg.cn/704f32519f30477a946aca3413c1f3e4.png)
这里说一下关于图怎么改变形状,因为默认的就是一条直直的线,如何让他变弯,类似我们下图圈起来的那条线
![在这里插入图片描述](https://img-blog.csdnimg.cn/e2f7353deb254f4da4dc3ce9c6f960f4.png)
其实需要配合上边的添加弯曲点来完成,同样减少弯曲点也会让先变化更少。
![在这里插入图片描述](https://img-blog.csdnimg.cn/4e36740270ce463f9883f329b3c27340.png)