工作流学习(个人总结)

最近接了一个Web的OA的项目,刚做好权限管理这块,马上要做工作流这块,个人感觉这块有点复杂,(涉及的流问题有点多)

对于刚入手不久的我,更是感觉头皮发麻,就最近段学习工作流,做一个总结(貌似网上具体的工作流设计知识并不多,也许是我没找到)

 

1,OA工作流:概念就不说了(此处省略100字)

2,工作流需求:

 

模拟一个例子

   |--设计一个流程

       创建流程---创建步骤---创建流程表单

   |--创建表单

        这里涉及到三张表

            组件模板表----存储组件(textbox,checkbox....之类的组件)的信息

            表单模板表-----各种各样的审批表(这里是数据表和表单字段对应表,这里为了更加清晰,就独立出来了)

            组件表单关系表---存储表单和组件的关系(关联上面两张表)

        这样一个用于显示给用户的表单就创建好了(当然里面如果要做的更细的话包括更多的表,这里是我的一个设计思路)

   |--创建流程和步骤

         流程模板表-----一个流程下面有很多的步骤,这里是为了给步骤加统一的名称

         步骤表-------使用树形结构,关联上一级及下一级的步骤(关联到上面的流程表)

         表单流转表------即,申请了一个表单,表单的流转信息就会存在此处(表单的申请时间,有效时间,状态等信息)

         表单内容信息表------用于存储一种表单的内容信息(出差单,请假单的信息)

         流转记录表------存储各个审批人的审批结果及意见等

 

     |-- 对流程节点的动态改变

        比如请假时间,t<5天,由  副经理签批,

                           10天>t>5天,由  部门经理签批,

                            t>10天,由总经理签批。

      这里就涉及到了流程的跳转。

      解决方案:数据库中新建一个FlowSkipNode表,用于存储节点间的跳转条件。

 

    |--流程审批同节点多个审批人处理

           对数据库上个锁。避免兵法操作

     

     |--待解决问题,流程审批人的设置

           审批人是针对人,还是针对部门?

           感觉应该针对员工来说会更严谨,不过维护的时候就有点复杂了

           如果针对员工, 怎么去给员工增加不同的审批人,并关联到每个流程的,每一个步骤上

               使用  步骤-用户  关系表,然后再把这个表关联到用户(这样应该可以解决,貌似更复杂了)

               

  

                       

 

 

   

 

 

 

posted @ 2013-06-11 12:07  尼姑哪里跑  阅读(414)  评论(0编辑  收藏  举报