


本期内容
Odoo对接 flwoable
Odoo的审批流实际是状态机,通过状态字段来控制流程的流转。
如果是简单的流程还能满足,若是遇到复杂的流程需求,则需要重新设计流程进行开发。因此对于所有类型的流程也无法进行统一的管理。
为了满足更复杂的流程处理需求,这里引入基于BPMN的flowable流程引擎进行流程的管理。
由于flwoable是全部用Java实现的,所以这里我们通过api接口来集成flowable!
配置flowable
集成flowable需要先启动一个flowable应用。
这里我们选取启动flowable的docker镜像的方式在本地部署flowable应用,相对更简单。
镜像地址:
https://hub.docker.com/r/flowable/flowable-ui
这时,flowable应用已经启动成功。
默认的地址是:
http://localhost:8080/flowable-ui
默认的登录账户和密码是admin和test。
至此,一个flowable应用在本地部署成功,接下来进行demo流程的设定。
设计流程demo
为了演示demo,这里我们模拟一个流程应用场景👉最常见的请假场景。
这里我们设定,请假天数小于等于10天的,不需要审批;超过10天的需要经历审批。
我们首先创建一个请假流程图,设置关键节点和任务:
流程设计好之后,创建基于这个流程图的应用,并发布。
请假应用发布之后,我们便可以直接在flowable应用上创建请假流程验证我们的流程设计是否存在问题。
Odoo对接flowable
同步流程配置
这里我们设计了flwoable配置模块,主要用来将flwoable中的流程配置同步至Odoo这边,并且封装了对接flowable的接口。
前面我们提到要通过api接口集成flwoable,稍加分析这些接口,就能发现一些必须的流程配置:
流程应用的id(我们需要用此id来启动流程)
流程中设定的权限组(我们通过权限组来管流程的执行)
这里我们是通过接口方式将flowable中的配置同步过来。
这里可以看到,我们已经把请假流程给同步过来了~
绑定业务模型
同步完flowable配置之后,在Odoo端,我们还需要创建我们自己的请假业务模块、处理流程逻辑外的业务逻辑。
安装完对应的请假模块之后,需要将业务模型vacation.request与流程做一个绑定,这样在创建请假单的同时才能触发请假流程。
至此,Odoo应用和flowable应用已经绑定成功,可以进行请假操作了!
demo实操
创建请假流程:
这样,一个简单的请假申请就创建成功,并且已经在flowable中开始流转了~
可以看到流程已经流转到经理审批,这里我们切换用户去审批。
可以看出已经审批成功,且流程状态已经同步到flowable。
至此,流程全部结束。
这里只是简单的对接了Odoo和flowable中最简单基本的工作流,至于flowable的复杂功能还需要后续完善~欢迎大家多多补充!


本期内容就到这里了
⬇欢迎加入社群一起讨论哦⬇
本期作者
高级后端开发工程师 黄华信


更多精彩内容
了解云基地,就现在!
IT技术哪家强
神州数码最在行
行业新星,后起之秀
历史虽不长,但是实 力 强




































