工作流中业务和流程及表单的两个初学者问题

jackyrong 发布于 2012/11/22 18:45
阅读 328
收藏 0
我是activiti初学者,询问工作流中业务和流程及表单的两个初学者问题, 
其实这个和具体的引擎关系不大了。 

1 如何根据流程实例找到对应的业务表? 
    多个流程的话,如果统一的待办,已办入口,要通过流程实例ID去找具体是哪个业务实体表吧? 
   比如请假,报销两个流程,在系统中要有唯一的一个”待办,已办“入口, 
用户点待办,看到的只是待办的流程名称,这个我已经实现了,但用户需要先看到待办的流程,然后点进去,再看这个到底是什么流程,是请假呢,还是报销? 
这个需要通过流程实例id去找业务表。 
   我的做法是在每个业务实体表,比如请假表,加了一个流程实例id的字段, 
在流程启动的时候,写入这个ID,这个大家都应该知道。 
    而为了适应在多个流程(多个业务表了)中,通过流程实例ID找到 
业务表,我再增加了一个表: 
    
   流程定义       对应业务表名称              业务表主键名称 
   请假流程定义id    qjdtable(数据库中的物理表名)     qjdId 
  我的想法是:假如要看某个待办流程的具体情况,可以通过 
   1) 流程实例id得出流程定义id 
   2) 在这个表中,根据流程定义id,知道要到qjdtable这个业务表中,通过qjdId去找对应的实体记录。 
    不知道我的这个方法是否可行? 

2) 我设计了一个统一的流程审批意见总表: 

id  业务实体表  业务表主键   流程实例id  审批意见子表名   
1   qjdtable     qjid             1001         qingjiaapprov     
2   baoxiaotable       baoxiaoid      1002       baoxiaoapprov 
   就是说,比如用户申请提交了一个请假单,同时要在这个主表中保留一个记录(唯一的),并且设定审批意见子表的表名(有多少个审批流程,就有多少个审批意见子表) 

   好了,假设现在到部门经理审批这个请假单了,那么在 qingjiaapprov 这个表中,记录如下 
  
  自动递增id    审批意见主表id  审批人  审批时间 审批意见  流程实例id 
   12               1           部门经理..............        1001 
   13               1            总经理                       1001 
   14               2           部门经理                      1002 
这样的设计,不知道大家觉得如何?有无什么问题? 

3) 之所以要分开审批意见主表和审批意见子表,是因为有的时候有的流程中,某些节点,审批者不单是”同意,不同意,审批意见“,有的时候可能要填写复杂的业务表单!但这些业务表单的字段,如何保存好呢?所以我才在每个流程的业务审批子表中,设计不同的这些备用的字段去保存!当然, 
这个方法我觉得也麻烦,表单一改,数据库字段要改,不知道大家有什么好的办法? 
加载中
返回顶部
顶部