• 工作流设计


    1、首先,获得当前用户的id

    2、有一个流程表,这个流程表里就两个字段,一个是父id,一个是子id,多对多的关系

    3、信息表扩展了两个字段,一个是关于哪个用户审核的,一个是审核状态

    4、根据当前用户的id(也是流程表里的子id)查询父id

    5、父id与信息表里的id(审核人id)比较,如果id是一致的且审核状态是审核通过,说明流程轮到我来审核了,否则信息不显示

    --------------------------------------------------------------------------------------------------------------------------------------------------------

    流程表--由3并行,由5、7结束


    父id  子id

    1    2
    2    3
    3    4
    4    5

    从3并行

    3    6
    6    7

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------

    6、如果是并行流程的话,信息表需要扩展四个字段,一个是关于哪两个用户审核的,一个是审核状态

    哪如果是同时并行了多个流程呢?所以动态添加信息表的字段并不科学。

    --------------------------------------------------------------------------------------------------------------------------------------------------------------

    中间表

    内容id      当前审核者     审核结果

    1         5        通过

    1         7        不通过

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    内容        内容id

    sdfsdfsdf      1

    -------------------------------------------------------------------------------------------------------------------------------------------------------

    1、获取当前用户id

    2、根据用户id获取父id

    3、获取信息id

    4、根据信息id获取中间表,判断流程是否终结

    5、如果流程没有终结,根据父id获取中间表id,判断其父级是否通过审核,如果通过,则显示信息

    当然,直接获取信息id是不友好的

    $list  =  select * from 中间表 where 父id = 当前用户的父id and 状态 = '审核通过'

    foreach ($list as $key=>$value){

      echo "我的代办事项".$value;

    }

    取到所有(代办事项)信息id

     

    二次开发必须满足的条件

    1、信息表

    2、流程表

    3、中间表(多个用户对与信息的审核反映)

     

  • 相关阅读:
    leetcode------Palindrome Number
    leetcode------Minimum Depth of Binary Tree
    leetcode------Binary Tree Level Order Traversal II
    leetcode------Plus One
    leetcode------Plus One
    leetcode------Min Stack
    leetcode------Binary Tree Level Order Traversal
    递归树与非递归树的不同实现【转载,个人感觉写的比较好的一篇,值得去思考】
    leetcode------Compare Version Numbers
    leetcode------Majority Element
  • 原文地址:https://www.cnblogs.com/hellowzd/p/5319851.html
Copyright © 2020-2023  润新知