jbpm学习笔记(四) 模拟借款申请以及各级审批 熟悉各种服务API调用
首先,我们来思考一个这样的逻辑,如下图,
[img]
http://dl.iteye.com/upload/picture/pic/79595/dd99a470-0acd-3bd4-b51c-ba9458c97792.png
[/img]
用文字描述是这样的:公司员工在申请借款时,首先填写借款申请,然后部门经理审批,不通过,则取消,若通过,并且金额《5000时,由财务拨款,完成申请,假如金额》=5000,则由总经理审批,通过,则由财务拨款,完成申请,不通过,取消。
通过这个流程图,我们设计jbpm流程定义文件(jbdl),实际上 上面的图就是GPD工具(图形化流程设计器)生成的,源码如下:
Loan.jpdl.xml:
(注:最开始我的name全部写的中文,发觉在运行的时候会报一个错,改成字母就好了)
有的人比较模糊task和state的区别:task有分配,state没有。
在编码过程中,我们经常会用到jbpm API服务帮我们“走”流程,上一篇中说过,jbpm中JbpmTestCase是作为jbpm4框架的单元测试超类出现的,而且帮我们初始化了如下6个流程引擎服务:
再次说明,此测试类继承JbpmTestCase,很多service服务都已经初始化好了,直接run junit就ok了,它会把所有test开头的类当做测试用例执行下去,假如测试出有误,那么会给你报出来。这个例子主要是稍微熟悉一下service api,主要是对各种情况的判断或流转有一个清晰地认识。