zoukankan      html  css  js  c++  java
  • 审批流程数据库设计

    要做一个通用的流程系统,大概应建立如下数据表:

      1. 流程表(tbl_flow)

    字段名数据类型备注
    flow_id int 流程编号,主键
    flow_no int 流程号,唯一列
    flow_name varchar2(100) 流程名称
    remark varchar2(500) 备注

      示例数据:

    flow_idflow_noflow_nameremark
    1 5 请假流程 请假流程
    2 10 报销流程 报销流程

      2. 流程节点表(tbl_flow_node)

    字段名数据类型备注
    flow_node_id int 流程节点编号,主键
    flow_no int 流程号,与流程表对应
    flow_node_name varchar2(100) 流程节点名称
    flow_node_role varchar2(100) 流程角色
    remark varchar2(500) 备注

      示例数据:

    flow_node_idflow_noflow_node_nameflow_node_roleremark
    1 5 提交请假单 提交请假单
    2 5 部门经理审批 部门经理 部门经理审批
    3 5 总经理审批 总经理 总经理审批

      3. 流程线表(tbl_flow_line)

    字段名数据类型备注
    flow_line_id int 流程线编号,主键
    flow_no int 流程号,与流程表对应
    prev_node_id int 前一节点编号
    next_node_id int 后一节点编号
    remark varchar2(500) 备注

      示例数据:

    flow_line_idflow_noprev_node_idnext_node_idremark
    1 5 1 2 提交部门经理审批
    2 5 2 3 提交总经理审批

      4. 流程角色_员工表(tbl_flow_role_user)

    字段名数据类型备注
    flow_role_name varchar2(100) 流程角色名称
    user_id int 员工编号
    dept_id int 部门编号

      示例数据:

    flow_role_nameuser_iddept_id
    部门经理 13 2
    部门经理 26 4
    总经理 3 1

      以上就是一个通用的审批流程所需要的数据表。

      下面,我们来做一个简单的示例,就是请假审批。

      需要为请假审批额外增加两张表,其中一张表对应于请假单,但除了请假单的必需数据外,还增加了“流程号”和“当前节点编号”两个字段;另一张表用于记录审批过程中的审批意见。

      5. 请假表(tbl_leave)

    字段名数据类型备注
    leave_id int 请假编号,主键
    user_id int 请假人编号
    user_name varchar2(100) 请假人姓名
    leave_type varchar2(100) 请假类型(病假、事假)
    leave_reason varchar2(500) 请假原因
    start_date date 开始日期
    end_date date 终止日期
    add_date date 提交日期
    flow_no int 流程号
    current_node int 当前节点编号

      补充:再增加一个字段state,用于表示请假单状态,0表示草稿,1表示已提交审批,2表示审批结束。

      6. 请假审批表(tbl_leave_audit)

    字段名数据类型备注
    audit_id int 审批编号,主键
    leave_id int 请假编号,与请假表对应
    flow_node_id int 节点编号
    user_id int 审批人编号
    user_name varchar2(100) 审批人姓名
    audit_info varchar2(500) 审批意见
    audit_date date 审批日期

  • 相关阅读:
    完美解决IE8有两个进程的问题
    用ccproxy + stunnel做个加密代理
    Hyper-V 共享式网络链接 端口映射
    NET Framework 4.0的安装失败处理
    c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 .
    设置IE8 多个Table只产生一个进程
    SSH Secure Shell Client中文乱码的解决办法
    OOD设计模式
    MVC设计模式
    乐观锁和悲观锁
  • 原文地址:https://www.cnblogs.com/yyy116008/p/8330076.html
Copyright © 2011-2022 走看看