• 流程审批设计


    这是我的项目中使用的一套关于工作流和审批流的配置,算是比较简单的,这里只写其中比较核心的思路,算是对之前工作的一个技术总结吧。

    以下是数据库设计;后面再跟据实例分析每个表的作用。

    首先是流程配置表:

    如果需要用到一个工作流就要先配置,test_workflow_configuration就需要存入该流程的基本信息

    test_workflow_details需要存入该流程的工作流配置,需要几级审核等信息

    然后是流程记录表:

    这个表存储的是流程记录,每个流程送审之后都会存在这条记录中,一级审核完在插入下一级记录

    最后是申请单表:

    这个表存储的是申请单信息

    ps:这里有一些关联设计的表被我省略了,只说最核心的思路,下面举个栗子

    现在有一个工单申请需求

    首先这个申请单记录记录应该存储在test_order中,包括单据号,创建日期,创建人等信息(相关业务明细另外建表)

    然后配置审核流程

    test_workflow_configuration中应该存入这个流程的基本信息

    test_workflow_details中设置工作流配置(附图1)

    接下来流程开始

    第一步:该工单填写完毕,送审

    当点击【送审】按钮时后台需要以下操作:

    1.将test_order中的status改为1送审状态

    2.流程记录表test_workflow_records插入工作流第一条记录(主管审核)

    test_workflow_details里的post_id是主管岗位id,test_workflow_records里需要的是主管这个岗位上的人的id,作为assignee_id(该工作流受理人id)

    第二步:主管登录系统,进入审批页面,跟据主管id/既是当前用户id(assignee_id)和(is_audit = 0)可以展示当前主管需要审核的所有申请。

        主管点击【审核】按钮,可根据document_code(申请单据号)展示当前申请的所有详细信息,选择【通过】/【驳回】,并填写意见等,最后点击【提交】。

    此时后台需要做以下操作:

    1.更新流程记录为已审核状态(is_audit=1)

    2.跟据workflow_id查询该流程分为多少步(几条记录就是几步),取出当前记录的flow_serialnumber,判断是否是最后一步

    若是最后一步 {

      判断当前记录是否通过

      若通过{

        编写审核通过的业务处理代码

      }  

      否则 {

        直接更新test_order申请状态为驳回(status=3)

      }

    若不是最后一步{

      再判断当前记录是否审核通过

      若不通过{

        直接更新test_order申请状态为驳回(status=3)

      }

      若通过(这个栗子就走这种情况)

      {

        取出flow_serialnumber,+1,查询下一个节点(经理审核)

        

        流程记录表test_workflow_records插入工作流第二条记录(经理审核)

      }

    插入处理方式同上

    第三步:同第二步,此时流程走到经理这里,流程继续进行。

    附上几张截图:

    图1:工作流配置

    图2:审核记录详情

  • 相关阅读:
    网站安全编程 黑客入侵 脚本黑客 高级语法入侵 C/C++ C# PHP JSP 编程
    【算法导论】贪心算法,递归算法,动态规划算法总结
    cocoa2dx tiled map添加tile翻转功能
    8月30日上海ORACLE大会演讲PPT下载
    【算法导论】双调欧几里得旅行商问题
    Codeforces Round #501 (Div. 3) B. Obtaining the String (思维,字符串)
    Codeforces Round #498 (Div. 3) D. Two Strings Swaps (思维)
    Educational Codeforces Round 89 (Rated for Div. 2) B. Shuffle (数学,区间)
    洛谷 P1379 八数码难题 (BFS)
    Educational Codeforces Round 89 (Rated for Div. 2) A. Shovels and Swords (贪心)
  • 原文地址:https://www.cnblogs.com/Kingram/p/10905781.html
Copyright © 2020-2023  润新知