c#版工作流之审批节点选人(5)

在工作流流转过程中,工作流引擎选中执行路径后,需要获取到职权匹配的人员参与特定节点审批。在这过程中将涉及到企业的组织结构维度,在合同与法律事务管理平台中,采用了独立组织,部门,岗位,组织群,部门群,岗位群,人员组,人员,组织上下级,部门上下级,岗位上下级,人员上下级等模式构建整个组织架构。解决了树型组织结构描述,跨树节点组织结构表述,以及企业内部临时团队组建业务。

审批节点选人,,首先基于组织结构构件业务规则,结构相应数据模型体系下的上下级关系,为工作流引擎提供智能选人服务提供完善支持。

在工作流引擎中,审批节点选人是一个多维度组合方案。

1).我们把组织架构模型作为审批节点的第一个描述维度【执行者,执行者类型】,执行者类型将对于组织结构中的【独立组织,部门,岗位,组织群,部门群,岗位群,人员组,人员】。

2).在审批过程中,发起人在流程实例中是已知的。或者业务单据主表中的特定字段数据是已知的。所有可以为工作流引擎提供基础数据参照依据。所以在审批节点选人的第二个维度数据就是参照数据:提供了审批节参照与业务字段参照两种模式。

3).基于执行者集合,上下级关系【组织上下级,部门上下级,岗位上下级,人员上下级】,工作流引擎将自动完成最终执行者数据提取。【执行者集合与参照对象以及参照对象的上下级关系的交集为最终执行者】。

4).由于业务单据数据在特定环节中是固定不变的。所以审批节点的执行者也可以是直取特定单据字段信息,有参照模式直接提供数据。

5).针对特殊的业务,节点环节是固定的,但固化方式多样化,工作流引擎无法预知。所以在正常获取执行者集合后,开放了选人截面干预环节,使后续的开发人员能针对特定的业务场景自主干预工作流引擎选人结果。

所以,选人的整体过程为【审批执行者集合获取-->参照集合获取-->执行者集合与参照集合及参照上下级集合交集获取-->开发人员自定义修正】四个层次获取

原文地址:https://www.cnblogs.com/thubier/p/11944272.html