jbpm4.3工作流集成(2)业务表的设计与介绍

jbpm工作流引擎集成到业务中,想要实现业务动态配置工作流、工作流回退、工作流节点角色审批权限等功能,需要在业务表中设计关于工作流的数据表。业务表的设计比较草率,如有问题,还望指正。


1、工作流定义表(jbpm4_my_flow)


正常来说,工作流引擎api也可以获取工作流定义表,但是在业务中维护工作流时,不太方便,而且工作流定义表会和之后的其他业务工作流表关联,所以设计工作流定义表。流程名、流程id、流程key都是和工作流引擎中的数据对应。

页面上工作流设计器设计好工作流后,点击保存,先调用jbpm api将数据保存到工作流引擎,然后保存到jbpm4_my_flow表中。删除工作流时,采用逻辑删除,修改删除标志。编辑工作流时,和保存基本同理,修改jbpm 引擎数据表后,再修改业务表。

2、流程与功能对应表(jbpm4_my_function)

当客户设计好工作流后,需要将工作流挂在功能节点下,这样,该功能就可以按照关联好的自定义工作流进行流程审批。jbpm4_my_function 表作为功能与工作流关联表,当该功能的业务新建成功后,会用功能id找到工作流id,从而生成工作流实例,生成实例代码如下:

ProcessInstance pi = processEngine.getExecutionService()
				.startProcessInstanceByKey(definition_Key);

生成流程实例后,流程实例也会保存到业务表中,流程实例和业务主键关联,这样工作流引擎就和业务挂钩了。流程实例和业务主键

3、流程实例与业务对应表(jbpm4_my_process)


其中“下一步流程”和“当前流程状态”是多余字段,因为当前流程状态会保存到业务表中,下一步流程会在需要的时候由引擎API提供。jbpm4_my_process 表是使用频率最高的表。

4、审批历史表(jbpm4_my_histroy)


审批历史表不多解释,审批通过和退回都要往审批历史表中保存数据。jbpm 引擎库中有历史记录表,但是由于业务中增加了回退功能,以及审批人。审批意见等信息,引擎库历史记录不能满足需求,所以设计审批历史表。

5、操作记录表(jbpm4_my_operation)

第一眼看操作记录表和审批历史表基本一样,但是两张表的作用不同,历史表用于查看审批历史,而操作记录表用于回退操作,流程回退时,获取当前环节和上一环节,动态划线,跳转到上一环节后再讲线删除(具体操作后续再讲),跳转完成后,将操作表的最新记录删除,这样最新节点就是上一步的节点,实现同步回退。

6、任务节点表(jbpm4_my_task)

该表保存工作流设计器保存到后台的xml文件数据,可以查询每个工作流的节点对应可操作用户信息。主要用于权限控制。


以上为所有业务整合用到的数据表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值