zoukankan      html  css  js  c++  java
  • web工作流管理系统开发之十八 工作流会签的相关实现

     

    在工作流系统中,单步会签,多部门会签,会签百分比,加签,减签等等这些是必备的功能。尤其在办公管理的审批流程中,经常会用到这些。
    例如单步会签,在流程的某个环节需要多个人同时办理,不分先后次序的签署意见等。多部门会签,流程运行到某个环节需要多个部门的人同时办理,各部门不分先后次序的发表审批意见等。

    会签百分比,流程运行到某个环节需要多个人协助同时处理,但是只需要80%的人处理过,就可以通过了。这个百分比就

    是会签百分比,在流程定义的时候可以设置其值。

    加签,当流程实例运行到一个具体的环节时候,需要临时增加处理人。增加的处理人是流程定义的时候未定义的。

    减签,与加签相反,某个流程实例运行时候,按流程定义的规则,例如需要5个人同时办理,但这个个例只需要4个人办理过就可以了,则可以减少一个处理人。

    在eworkflow中是这样实现的。
    流程定义的时候,在需要产生会签的环节定义好任务主体信息,任务名称,任务类型(一般选择动态会签型),任务的执行人或参与人。可以是具体的人,或者角色或群组。

    当流程实例运行到此环节时,任务引擎就会按照定义的信息,创建任务信息,并按照任务的可执行人范围生成任务执行人的待办任务工单。

    当用户处理任务,完成工单后,任务即完成了。

    表结构:

    动态会签流程定义过程:



     

    会签步骤的动态会签定义过程,设置用户,角色群组,以及会签百分比



     

    加签、减签、会签百分比的实现

    当流程实例运行时,任务引擎根据定义的任务信息,生成具体执行人的任务工单,放入待办任务列表。当任务还未执行完成时,管理员或有相关权限的人可以根据具体的需求,加减任务的执行人,生成新的可执行人的工单。当所有人都执行完成后,任务即完成了。

    当任务设置了会签百分比,任务引擎会按照百分比来判断任务是否完成,即完成了任务工单的人占总体的百分比等于会签百分比,则任务就完成了。



     

  • 相关阅读:
    HDU4812 D Tree(树的点分治)
    BZOJ1834 [ZJOI2010]network 网络扩容(最小费用最大流)
    HDU4862 Jump(放大边权的费用流)
    SCU3185 Black and white(二分图最大点权独立集)
    HDU3729 I'm Telling the Truth(字典序最大的最大流)
    HDU3586 Information Disturbing(树形DP)
    HDU3657 Game(最小割)
    POJ3162 Walking Race(树形DP+尺取法+单调队列)
    SCU3312 Stockholm Knights(最大流)
    Codeforces 161D Distance in Tree(树的点分治)
  • 原文地址:https://www.cnblogs.com/webreport/p/1720939.html
Copyright © 2011-2022 走看看