关于java:49张图带领小伙伴们体验一把-FlowableUI

33次阅读

共计 4073 个字符,预计需要花费 11 分钟才能阅读完成。

不晓得小伙伴们有没发发现,IDEA 中仿佛没有一个特地称手的流程绘制工具,大家留神我说的是称手,不是能用。

我之前用过下图这个插件:

评估就是两个字:能用!

官网提供了一个 flowable-ui,性能还比拟弱小,能够一试,明天我就来和小伙伴们简略介绍一下这个 flowable-ui 的应用,用熟了,未来咱们能够应用这个来绘制流程图。

1. Flowable-UI

Flowable-UI 说白了就是一堆 Web 利用,提供了四方面的性能:

  • Flowable IDM: 身份治理利用。为所有 Flowable UI 利用提供单点登录认证性能,并且为领有 IDM 管理员权限的用户提供了治理用户、组与权限的性能。
  • Flowable Modeler: 让具备建模权限的用户能够创立流程模型、表单、抉择表与利用定义。
  • Flowable Task: 运行时工作利用,这个提供了启动流程实例、编辑工作表单、实现工作,以及查问流程实例与工作的性能。
  • Flowable Admin: 治理利用。让具备管理员权限的用户能够查问 BPMN、DMN、Form 及 Content 引擎,并提供了许多选项用于批改流程实例、工作、作业等。治理利用通过 REST API 连贯至引擎,并与 Flowable Task 利用及 Flowable REST 利用一起部署。

简略来说:

  • 创立用户、调配角色用 Flowable IDM。
  • 画流程图用户 Flowable Modeler。
  • 测试、体验流程用 Flowable Task。
  • 后盾治理相干的用 Flowable Admin。

2. 装置形式

后面说的几个利用,所有其余的利用都须要 Flowable IDM 提供认证。每个利用的 WAR 文件能够部署在雷同的 Servlet 容器(如 Apache Tomcat)中,也能够部署在不同的容器中。因为每个利用应用雷同的 cookie 进行认证,因而利用须要运行在雷同的域名下。

因为这些利用是基于 Spring Boot2.0 开发的,因而也能够间接作为独立利用来间接运行,通过执行 java -jar xxx.war 的形式来启动这些利用。

所以间接启动这些利用并不是麻烦事,反而是比较简单的。不过我看了下他这个还反对 Docker 装置,所以我还是用 Docker 吧,更省事,未来不想要了删除也不便(对 Docker 不相熟的小伙伴能够在微信公众号后盾回复 docker,有松哥写的入门教程)。

docker 装置的话,间接如下命令即可:

docker run -d --name flowableui -p 8086:8080 flowable/flowable-ui

没什么特地须要配置的中央,指定一下容器名字和端口映射即可。

装好之后,浏览器输出 http://localhost:8086/flowable-ui 进行拜访,此时会弹出来如下页面:

默认状况下,登录的用户名是 admin,明码是 test,留神别把明码写错了。

登录胜利之后,如果看到如下页面,就示意装置胜利了(一般来说应该不会有装置问题):

装好之后,接下来咱们就来逐渐体验这里的性能,我从简略的开始讲起。

3. 身份治理(IDM)

身份治理就是用户、用户组的治理,咱们点进到身份治理页面之后,能够看到如下内容:

能够看到,默认只有一个 admin 用户,也就是咱们刚刚登录时候的用户。

3.1 用户治理

接下来点击右边的创立用户按钮,咱们能够创立新的用户进去:

填入用户的根本信息和明码即可。

我一共创立了四个用户,最终后果如下:

3.2 组治理

接下来点击下面的 ,咱们能够创立用户组,这个用户组相当于咱们在 vhr 中所说的角色,给用户分组,相当于给用户调配一个角色。

默认状况下,没有任何组,组是空的:

咱们点击创立组按钮,先来创立一个经理组:

组增加胜利之后,点击增加用户按钮,为用户组中增加用户:

假如 zhangsan 和 zhangsi 两个人是经理,最终增加后果如下:

利用雷同的形式,我再创立一个组长的组,并为之增加两个用户 lisi 和 liwu。

3.3 权限管制

咱们后面创立的用户当初是没有任何权限的,例如当初如果应用 zhangsan/123 进行登录,登录胜利后页面是空的,没有任何货色:

所以咱们要为用户增加相应的权限。点击顶部的权限管制一栏,如下:

咱们能够为这五种拜访别离设置对应的用户 / 用户组:

  • 拜访 idm 利用:这个就是拜访身份治理利用,如果用户没有拜访这个的权限,那么用户在登录胜利的后的首页上就看不到身份管理应用程序这个菜单项。
  • 拜访 admin 利用:这个是拜访管理员应用程式,如果没有没有这个的拜访权限,那么用户在登录胜利之后的首页上就看不到管理员应用程式这个菜单项。
  • 拜访 modeler 利用:这个是拜访建模器应用程序,如果没有没有这个的拜访权限,那么用户在登录胜利之后的首页上就看不到建模器应用程序这个菜单项。
  • 拜访 workflow 利用:这个是拜访工作应用程序,如果没有没有这个的拜访权限,那么用户在登录胜利之后的首页上就看不到工作应用程序这个菜单项。
  • 拜访 REST API:这个是指用户通过 REST API 拜访工作流的权限。

以拜访 idm 利用为例,在设置的时候,咱们能够间接设置用户,也能够设置用户组,设置用户组的话,则这个组中的所有用户都能拜访这个菜单项。

我这里设置的是经理能够拜访所有利用,而组长只能够拜访 workflow 利用。

4. 管理员(Admin)

接下来是管理员应用程式,这个里边的性能相对来说简略一些,而且次要是数据查看,须要本人配置的比拟少:

这是一个总览的页面,下面有流程引擎、CMMN 引擎、App 引擎等各种菜单。这个因为用的不多,我也就不啰嗦了,小伙伴们能够自行体验一把。

5. 建模器(Modeler)

接下来的建模器算是咱们在应用 Flowable-UI 时最最罕用的性能了,因为画流程图就是在这里画。

5.1 绘制流程图

点击创立流程,能够开始一个流程图的绘制:

咱们来看一下初始页面:

右边是菜单栏,里边是绘制流程图的各种组件,下边是流程图的各种属性了。其余货色大家看一下就懂了,我就不多说了。下边没有什么须要配置的,我就设置了一下版本号。

接下来我绘制一个简略的流程,如下图(一个流程启动之后,通过两个 UserTask 而后就完结了):

绘制的时候,光标放在上一个组件上,而后会主动提醒前面的组件,间接点击即可:

如果想要的组件没有提醒,那么就只能在右边菜单中寻找,找到之后拖过去就行了。

这两个流程中的 UserTask 节点我也不做额定的设置,就设置一下每一个 UserTask 应该由谁来解决就能够了。假如第一个节点是组长来解决,第二个节点是经理解决,咱们来看如何配置。

选中第一个 UserTask 之后,而后在下方找到调配用户,设置任务分配人:

另外我这里啰嗦一句,每一个组件都须要设置组件的主键 ID(下方的第一个属性),当然也能够不设置,不设置这里会主动生成一个随机字符串,当然随机生成的可读性必定是不如本人设置的可读性好了。

大家看到有四种不同的用户选项,我这里抉择候选组,也就是未来由指定的用户组中的用户来解决这一个工作:

抉择实现之后,点击保留按钮:

利用雷同的形式,给第二个 UserTask 也设置由经理进行解决。

好了,咱们就绘制这样一个简略流程。

绘制实现后,点击左上角的勾进行查看,查看是流程图绘制是否正确,有的时候流程节点之间的连线终点和起点可能并没有放入正确的地位,肉眼不容易看到,点击左上角的勾能够帮咱们检查一下。

验证实现没有问题,点击左上角的保留按钮对以后流程图进行保留。

保留实现后,就能够在流程首页看到咱们刚刚绘制的流程图了:

点击流程图就能够查看流程图的详情,点击右上角的下载按钮,就能够下载这个流程图对应的 XML 文件了,将 XML 文件拷贝到咱们的我的项目中,就能够开始开发啦。

5.2 公布应用程序

当然,咱们也能够间接现场测试咱们刚刚绘制好的流程图。

点击上方的应用程序,点击右上方的创立应用程序:

配置应用程序的根本信息:

点击编辑蕴含的模型,为以后应用程序增加一个流程图:

实现后点击左上角的保留按钮。

保留之后,咱们就能够看到刚刚定义好的应用程序了:

点进到这个应用程序中,点击右上角的公布按钮,能够公布该应用程序。

公布之后,咱们就能够在工作应用程序中来玩这个程序了。

6. 工作(Task)

通过后面的步骤之后,当初咱们从新回到主页面,就能够发现除了刚刚一开始默认的四个菜单之外,当初还额定多了一个,就是咱们刚刚新建的应用程序:

咱们能够间接点击 my_first_app 进入到工作应用程序中,也能够先进入到工作应用程序中,而后抉择 my_first_app,都行。我当前者为例和大家演示一下吧:

首先进来之后,默认状况下是没有要执行的工作:

点击到流程中,如下:

默认状况下,也是没有正在执行的流程,咱们当初能够点击启动流程按钮,来启动一个新的流程:

点击启动流程按钮之后,右边会展现进去所有的流程实例,咱们当初只有一个公布的流程,所以选中该流程,点击左边的启动流程按钮:

启动流程之后,点击显示图,能够查看流程走到哪一步了:

点击流动工作,查看本人须要实现的工作。点击之后发现并没有须要实现的工作:

这是因为以后用户是 admin,而咱们流程中第一个 UserTask 应该是由组长来解决的,所以咱们当初登记登录,先以 zhangsan 的身份登录,因为 zhangsan 的角色是经理,所以他登录上来应该也是没有工作的:

留神在筛选条件中抉择我是其中一个候选人的工作(还是没有):

再以 lisi 的身份登录,lisi 是组长,如下(也记得批改一下筛选条件):

先点击认领按钮,认领该工作,而后点击实现按钮,实现本人的审批:

实现之后,而后点击到流程中,而后点击左上角的显示图,如下:

此时能够看到,流程曾经向后走了一步了。

接下来该经理审批了。

咱们登记登录,再以 zhangsan 的身份登录,而后反复 lisi 的步骤,就能够实现这个流程了。

最终执行后果如下图:

流程执行结束。

如果流程中波及到排他性网关,仿佛里无奈测试,如果有小伙伴晓得这里如何测试带有排他性网关的流程,欢送留言告知。

7. 小结

明天的图有点多,心愿小伙伴们对 flowable-ui 这个工具有一个根本的认知,好啦,有问题欢送留言探讨。

正文完
 0