本发明涉及流程动态控制技术领域,尤其是涉及一种结合权限管理的流程引擎的实现方法及流程引擎系统。
背景技术:
随着管理信息化的普遍应用和迅速发展,对流程管理和流程自动化提出了更高的要求,为了应对不断变化的企业内外环境和流程需求,各种用于流程管理的流程引擎不断涌现。
在现有技术中,业务流程引擎是固化的,开发人员根据需求生成业务流程引擎的功能模块,并将功能模块进行封装形成业务流程引擎。对用户而言,业务流程引擎是封闭的,用户在使用时只能使用其设置好的功能进行操作。然而,对于不同的企业,业务流程是千差万别的,固化的业务流程引擎无法满足不同用户的个性化需求,从而导致用户使用业务流程引擎的体验不好。
同时,但凡涉及流程审批,必然会涉及各级用户之间的权限管理问题,目前的流程引擎中,权限管理大多交由用户,一般为运维人员,来完成,由于一个企业或院校会产生的业务流程是多种多样的,这就造成了用户权限分配的复杂性,不止费时费力,而且一旦因运维人员的疏忽导致权限分配错误,还容易造成严重的后果。
技术实现要素:
本发明的目的在于克服现有技术不足,提供了一种结合权限管理的流程引擎的实现方法及流程引擎系统,可以自动根据用户提供的流程图完成业务流程的流转工作,同时还能自动根据各个业务流程的需求自动分配用户权限,减少了用户的工作量。
本发明为实现上述目的采用以下的技术方案:
第一方面,本发明提供了一种结合权限管理的流程引擎的实现方法,包括:
获取用户设定的流程定义图,并存储到预设数据库中;
获取第一用户发送的第一控制指令及第一用户信息,记所述第一控制指令为触发指令,记所述第一用户信息为触发用户信息;
根据所述触发指令从所述预设数据库中获取匹配的流程定义图,记为触发流程图;
根据所述触发指令、所述触发用户信息执行所述触发流程图中各个节点对应的操作;
当获取到流程结束信息时;
向所述第一用户反馈流程结束信息。
在本发明一实施例中,所述流程定义图包括起始节点,至少一个结束节点,至少一个泳道;所述泳道中包括至少一个任务节点,至少一个网关,及至少一个与所述网关相连下级任务节点;
则,所述一种结合权限管理的流程引擎的实现方法,还包括:
从所述预设数据库中获取任一流程定义图;
获取预设的组织架构图,其中,所述组织架构图中包括至少一个部门信息,其中,所述部门信息包括至少一个角色信息;
从所获取的流程定义图中获取所有泳道信息,并根据所获取泳道信息获取匹配的部门信息;
获取泳道中所有任务节点,记其中涉及角色信息的任务节点为角色节点,记其中不涉及角色信息的节点为系统节点;
记节点后跟随有网关的角色节点为权限节点;
获取部门信息中与所述权限节点匹配的角色信息,记为权限角色;
根据所述权限角色及与所述权限角色匹配的权限节点的任务内容分别生成与各个权限绝限匹配的角色权限表;
获取用户信息,其中,所述用户信息中包括用户角色信息;
根据用户角色信息获取匹配的角色权限表;
根据所获取的角色权限表,在预设用户权限表中将所述角色权限表中的权限赋值给匹配的用户。
在本发明一实施例中,所述一种结合权限管理的流程引擎的实现方法,还包括:
当获取到组织架构图变更信息时,记新获取到的组织架构图为更新组织架构图;
获取用户发送的流程定义图,记为更新流程定义图;
根据所述更新组织架构图及所述更新流程生成新的角色权限表,记为更新权限表;
获取用户权限表中包含所述更新权限表中权限内容的用户信息,记为旧权限用户;
当所述旧权限用户信息中的角色信息与更新权限表匹配时;
判断所述旧权限用户权限无需变更。
在本发明一实施例中,所述一种结合权限管理的流程引擎的实现方法,还包括:
当所述旧权限用户信息中的角色信息与更新权限表不匹配时;
删除所述旧权限用户的用户权限表中与所述更新权限表匹配的权限内容;
获取用户信息中角色信息与所述更新权限表匹配的用户,记为新权限用户;
根据所述更新权限表,在预设用户权限表中将所述更新权限表中的权限赋值给所述新权限用户。
在本发明一实施例中,所述根据所述触发指令、所述触发用户信息执行所述触发流程图中各个节点对应的操作,具体包括:
根据所述触发用户信息,从所述触发流程图中获取匹配的任务节点、与所述任务节点相连的网关信息,及至少一个与所述网关相连的下级任务节点,其中所述网关信息中包括至少两个流转条件;
根据所述触发指令及流转条件获取匹配的下级节点记为目标节点;
当所述目标节点不为流程结束节点时,根据所述目标节点信息获取匹配的第二用户信息;
将所述第一用户信息及所述触发指令发送给所述第二用户;
获取第二用户发送的第二控制指令及第二用户信息;
获取与所述第二用户匹配的用户权限表;
根据所述预设用户权限表对所述第二控制指令的进行确权判断;当判断所述第二控制指令为有权指令时,记所述第二控制指令为触发指令,记所述第二用户信息为触发用户信息;
重复上述步骤,直到所述所述目标节点为结束节点;
当所述目标节点为结束节点时,根据所述目标节点信息及流程中所有触发指令及触发用户信息生成流程结束信息。
第二方面,本发明提供了一种结合权限管理的流程引擎系统,包括流程定义图获取模块、用户指令获取模块、流程触发响应模块、流程流转模块及反馈模块;
其中,所述流程定义图获取模块,用于获取用户设定的流程定义图,并存储到预设数据库中;
所述用户指令获取模块,用于获取第一用户发送的第一控制指令及第一用户信息,记所述第一控制指令为触发指令,记所述第一用户信息为触发用户信息;
所述流程触发响应模块,用于根据所述触发指令从所述预设数据库中获取匹配的流程定义图,记为触发流程图;
所述流程流转模块,用于根据所述触发指令、所述触发用户信息执行所述触发流程图中各个节点对应的操作;
所述反馈模块,用于当获取到流程结束信息时,向所述第一用户反馈流程结束信息。
在本发明一实施例中,所述流程定义图包括起始节点,至少一个结束节点,至少一个泳道;所述泳道中包括至少一个任务节点,至少一个网关,及至少一个与所述网关相连下级任务节点;
则,所述结合权限管理的流程引擎系统,还包括组织架构图获取模块,部门信息获取模块,任务节点获取模块,权限节点获取模块,权限角色获取模块,角色权限表获取模块,用户角色信息获取模块及权限分配模块;
所述流程定义图获取模块,还用于从所述预设数据库中获取任一流程定义图;
所述组织架构图获取模块,用于获取预设的组织架构图,其中,所述组织架构图中包括至少一个部门信息,其中,所述部门信息包括至少一个角色信息;
所述部门信息获取模块,用于从所获取的流程定义图中获取所有泳道信息,并根据所获取泳道信息获取匹配的部门信息;
所述任务节点获取模块,用于获取所述泳道中所有任务节点,并记其中涉及角色信息的任务节点为角色节点,记其中不涉及角色信息的节点为系统节点;
所述权限节点获取模块,用于记节点后跟随有网关的角色节点为权限节点;
权限角色获取模块,用于获取部门信息中与所述权限节点匹配的角色信息,记为权限角色;
所述角色权限表获取模块,用于根据所述权限角色及与所述权限角色匹配的权限节点的任务内容分别生成与各个权限绝限匹配的角色权限表;
所述用户角色信息获取模块,用于获取用户信息,其中,所述用户信息中包括用户角色信息;
所述用户角色信息获取模块,还用于根据用户角色信息获取匹配的角色权限表;
所述权限分配模块,用于根据所获取的角色权限表,在预设用户权限表中将所述角色权限表中的权限赋值给匹配的用户。
在本发明一实施例中,所述结合权限管理的流程引擎系统,还包括权限表更新模块,旧权限用户获取模块;
其中,所述组织架构图获取模块,还用于当获取到组织架构图变更信息时,记新获取到的组织架构图为更新组织架构图
所述流程定义图获取模块,还用于获取用户发送的流程定义图,记为更新流程定义图;
所述权限表更新模块,用于根据所述更新组织架构图及所述更新流程生成新的角色权限表,记为更新权限表;
所述旧权限用户获取模块,用于获取用户权限表中包含所述更新权限表中权限内容的用户信息,记为旧权限用户;
所述权限分配模块,还用于将所述旧权限用户信息中的角色信息与更新权限表进行比较;
当所述旧权限用户信息中的角色信息与更新权限表匹配时,所述权限分配模块,判断所述旧权限用户权限无需变更。
在本发明一实施例中,所述结合权限管理的流程引擎系统,还包括新权限用户获取模块;
其中,当所述旧权限用户信息中的角色信息与更新权限表不匹配时,所述权限分配模块,还用于删除所述旧权限用户的用户权限表中与所述更新权限表匹配的权限内容;
所述新权限用户获取模块,用于获取用户信息中角色信息与所述更新权限表匹配的用户,记为新权限用户;
所述权限分配模块,还用于获取所述新权限用户的用户权限表,记为待更新权限表;
所述权限分配模块,还用于根据所述更新权限表,在预设用户权限表中将所述更新权限表中的权限赋值给所述新权限用户。
在本发明一实施例中,所述流程流转模块包括,流转信息获取单元、流转判断单元、节点流转单元,任务权限表获取单元,确权单元;
其中,所述流转信息获取单元,用于根据所述触发用户信息,从所述触发流程图中获取匹配的任务节点、与所述任务节点相连的网关信息,及至少一个与所述网关相连的下级任务节点,其中所述网关信息中包括至少两个流转条件;
所述流转判断单元,用于根据所述触发指令及流转条件获取匹配的下级节点记为目标节点;
当所述目标节点不为流程结束节点时,所述节点流转单元用于,根据所述目标节点信息获取匹配的第二用户信息;
所述节点流转单元,还用于将所述第一用户信息及所述触发指令发送给所述第二用户;
所述用户指令获取模块,还用于获取第二用户发送的第二控制指令及第二用户信息,
所述任务权限表获取单元,用于获取与所述触发流程图匹配的任务权限表;
所述确权单元,用于根据所述预设用户权限表对第二控制指令的进行确权判断;
当所述确权单元判断所述第二控制指令为有权指令时,
所述用户指令获取模块,还用于记所述第二控制指令为触发指令,记所述第二用户信息为触发用户信息;
当所述目标节点为结束节点时,所述节点流转单元,还用于根据所述目标节点信息及流程中所有触发指令及触发用户信息生成流程结束信息。
与现有技术相比,本发明的有益效果在于:
本发明所提供的一种结合权限管理的流程引擎的实现方法及流程引擎系统,能够根据设定的流程定义图自动实现流程流转工作,能够响应不同业务需求下的用户流程审批需求;
同时,本发明所提供的一种结合权限管理的流程引擎的实现方法及流程引擎系统,还能够根据用户设定流程图及预先输入的组织架构图自动进行权限的分配工作,避免了人工操作时发生的权限分配错误的情况,进一步的降低了运维人员的工作量。
附图说明
图1为本发明一实施例中一种结合权限管理的流程引擎的实现方法的流程示意图;
图2为本发明一实施例中所述流程定义图的示意图;
图3为本发明一实施例中一种结合权限管理的流程引擎的流转方法示意图;
图4为本发明一实施例中一种结合权限管理的流程引擎系统的结构示意图。
具体实施方式
下面结合附图以及具体实施例对本发明做进一步说明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。
需要说明的是,在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。
第一方面,如图1所示,第一方面,本发明提供了一种结合权限管理的流程引擎的实现方法,包括:
s100:获取用户设定的流程定义图,并存储到预设数据库中;
s200:获取第一用户发送的第一控制指令及第一用户信息,记所述第一控制指令为触发指令,记所述第一用户信息为触发用户信息;
s300:根据所述触发指令从所述预设数据库中获取匹配的流程定义图,记为触发流程图;
s400:根据所述触发指令、所述触发用户信息执行所述触发流程图中各个节点对应的操作;
s500:当获取到流程结束信息时,向所述第一用户反馈流程结束信息。
在本发明一实施例中,所述流程定义图包括起始节点,至少一个结束节点,至少一个泳道;所述泳道中包括至少一个任务节点,至少一个网关,及至少一个与所述网关相连下级任务节点;
则,所述一种结合权限管理的流程引擎的实现方法,还包括:
从所述预设数据库中获取任一流程定义图;
获取预设的组织架构图,其中,所述组织架构图中包括至少一个部门信息,其中,所述部门信息包括至少一个角色信息;
从所获取的流程定义图中获取所有泳道信息,并根据所获取泳道信息获取匹配的部门信息;
获取泳道中所有任务节点,记其中涉及角色信息的任务节点为角色节点,记其中不涉及角色信息的节点为系统节点;
记节点后跟随有网关的角色节点为权限节点;
获取部门信息中与所述权限节点匹配的角色信息,记为权限角色;
根据所述权限角色及与所述权限角色匹配的权限节点的任务内容分别生成与各个权限绝限匹配的角色权限表;
获取用户信息,其中,所述用户信息中包括用户角色信息;
根据用户角色信息获取匹配的角色权限表;
根据所获取的角色权限表,在预设用户权限表中将所述角色权限表中的权限赋值给匹配的用户。
具体的,在本发明一具体应用场景中,本发明第一方面所提供的方法由后台服务器完成;
当用户完成初始的流程定义图配置及组织架构图配置后,后台服务器根据数据库中存储的用户预设的流程定义图及组织架构图完成权限配置工作;如后台服务器从数据库中获取到用户预设的采购流程定义图,如图2所示,后台服务器获取到采购流程定义图包括3个泳道信息,分别为项目组泳道、科技处泳道及仓管部泳道,并同时从用户预设的组织架构图中获取匹配的部门信息分别为项目组、科技处及仓管部;同时,后台服务器获取各个泳道中的任务节点,并根据任务节点中的信息判断其中“计算订单金额”节点、“订单完成”节点及“进入订单异常流程”节点为系统节点,其余均为角色节点,其中角色节点中,跟随有网管的角色节点有“科技处处长审核”节点及“仓管员入库”节点,后台服务器将这两个节点记为权限节点;则,后台服务器根据所述权限节点从所获取的部门信息中获取匹配的权限角色分别为科技处处长及仓管员,同时后台服务器根据权限节点中的任务信息生成与所述权限角色匹配的角色权限表;
然后,后台服务器获取所有的注册用户信息,并从中分别获取出用户角色信息为科技处处长及仓管员的用户,并在预设用户权限表中将相应的角色权限表的权限内容赋值给相关用户,如:
在本发明一实施例中,所述一种结合权限管理的流程引擎的实现方法,还包括:
当获取到组织架构图变更信息时,记新获取到的组织架构图为更新组织架构图;
获取用户发送的流程定义图,记为更新流程定义图;
根据所述更新组织架构图及所述更新流程生成新的角色权限表,记为更新权限表;
获取用户权限表中包含所述更新权限表中权限内容的用户信息,记为旧权限用户;
当所述旧权限用户信息中的角色信息与更新权限表匹配时;
判断所述旧权限用户权限无需变更。
具体的,在本发明一具体应用场景中,当用户的组织架构发生变化时,用户将新的组织架构图及涉及改动的流程定义图发送给所述后台服务器;后台服务器根据获取到的新的组织架构图替换已有的组织架构图,并记为更新组织架构图,同时将新获取到的流程定义图替换已有的流程定义图,并记为更新流程定义图;然后,后台服务器根据所述更新组织架构图及更新流程定义图获取相应的角色权限表,记为更新权限表;
如,沿用上例,用户将原来组织架构图中的科技处更名为设备管理处,并对相关用户注册时的角色信息进行了更新,同时提交了新的采购流程定义图,此时,后台服务器获取到的新的角色权限表分别包括设备管理处处长权限表及仓管员权限表,其中设备管理处处长权限表中包含的权限内容为“采购订单审批”,仓管员权限表中包含的权限内容为“入库情况确认”;
则,后台服务器分别根据上述权限内容从用户权限表中获取匹配用户信息,如权限内容包括“采购订单审批”的用户为张三,权限内容包括“入库情况确认”的用户为李四;
后台服务器将所述张三、李四记为旧权限用户,并获取所述旧权限用户当前的角色信息,其中,获取到张三的当前角色信息包括设备管理处处长,后台服务器判断与权限内容包括“采购订单审批”的角色权限表,设备管理处处长权限表,的角色信息一致,李四的当前角色信息包括仓管员,后台服务器判断与权限内容包括“入库情况确认”的角色权限表,仓管员权限表,的角色信息一致;因此,后台服务器判断本次组织架构的调整不涉及权限变化,无需对用户权限进行变更。
在本发明一实施例中,所述一种结合权限管理的流程引擎的实现方法,还包括:
当所述旧权限用户信息中的角色信息与更新权限表不匹配时;
删除所述旧权限用户的用户权限表中与所述更新权限表匹配的权限内容;
获取用户信息中角色信息与所述更新权限表匹配的用户,记为新权限用户;
根据所述更新权限表,在预设用户权限表中将所述更新权限表中的权限赋值给所述新权限用户。
具体的,在本发明一具体应用场景中,用户在新的组织架构图中新增加了一个部门为设备管理处,用于管理采购订单的审批工作,并委任王五为设备管理处的处长;
沿用上例,则此时,后台服务器获取到的旧权限用户中,张三的角色信息与设备管理处处长权限表的角色信息不一致,后台服务器判断此时张三不再具备相应的权限操作,因此在用户权限表中,将张三的“采购订单审批”权限删除,并获取角色信息为设备管理处处长的用户,王五,并在角色权限表中,将“采购订单审批”权限赋值给王五。
在本发明一实施例中,所述步骤s400,具体包括:
s410:根据所述触发用户信息,从所述触发流程图中获取匹配的任务节点、与所述任务节点相连的网关信息,及至少一个与所述网关相连的下级任务节点,其中所述网关信息中包括至少两个流转条件;
s420:根据所述触发指令及流转条件获取匹配的下级节点记为目标节点;
s430:当所述目标节点不为流程结束节点时,根据所述目标节点信息获取匹配的第二用户信息;
s440:将所述第一用户信息及所述触发指令发送给所述第二用户;
s450:获取第二用户发送的第二控制指令及第二用户信息;
s460:获取与所述第二用户匹配的用户权限表;
s470:根据所述预设用户权限表对所述第二控制指令的进行确权判断;当判断所述第二控制指令为有权指令时,记所述第二控制指令为触发指令,记所述第二用户信息为触发用户信息;
s480:重复上述步骤,直到所述所述目标节点为结束节点;
s490:当所述目标节点为结束节点时,根据所述目标节点信息及流程中所有触发指令及触发用户信息生成流程结束信息。
第二方面,本发明提供了一种结合权限管理的流程引擎系统,包括流程定义图获取模块100、用户指令获取模块200、流程触发响应模块300、流程流转模块400及反馈模块500;
其中,所述流程定义图获取模块100,用于获取用户设定的流程定义图,并存储到预设数据库中;
所述用户指令获取模块200,用于获取第一用户发送的第一控制指令及第一用户信息,记所述第一控制指令为触发指令,记所述第一用户信息为触发用户信息;
所述流程触发响应模块300,用于根据所述触发指令从所述预设数据库中获取匹配的流程定义图,记为触发流程图;
所述流程流转模块400,用于根据所述触发指令、所述触发用户信息执行所述触发流程图中各个节点对应的操作;
所述反馈模块500,用于当获取到流程结束信息时,向所述第一用户反馈流程结束信息。
在本发明一实施例中,所述流程定义图包括起始节点,至少一个结束节点,至少一个泳道;所述泳道中包括至少一个任务节点,至少一个网关,及至少一个与所述网关相连下级任务节点;
则,所述结合权限管理的流程引擎系统,还包括组织架构图获取模块,部门信息获取模块,任务节点获取模块,权限节点获取模块,权限角色获取模块,角色权限表获取模块,用户角色信息获取模块及权限分配模块;
所述流程定义图获取模块100,还用于从所述预设数据库中获取任一流程定义图;
所述组织架构图获取模块,用于获取预设的组织架构图,其中,所述组织架构图中包括至少一个部门信息,其中,所述部门信息包括至少一个角色信息;
所述部门信息获取模块,用于从所获取的流程定义图中获取所有泳道信息,并根据所获取泳道信息获取匹配的部门信息;
所述任务节点获取模块,用于获取所述泳道中所有任务节点,并记其中涉及角色信息的任务节点为角色节点,记其中不涉及角色信息的节点为系统节点;
所述权限节点获取模块,用于记节点后跟随有网关的角色节点为权限节点;
权限角色获取模块,用于获取部门信息中与所述权限节点匹配的角色信息,记为权限角色;
所述角色权限表获取模块,用于根据所述权限角色及与所述权限角色匹配的权限节点的任务内容分别生成与各个权限绝限匹配的角色权限表;
所述用户角色信息获取模块,用于获取用户信息,其中,所述用户信息中包括用户角色信息;
所述用户角色信息获取模块,还用于根据用户角色信息获取匹配的角色权限表;
所述权限分配模块,用于根据所获取的角色权限表,在预设用户权限表中将所述角色权限表中的权限赋值给匹配的用户。
具体的,在本发明一具体应用场景中,本发明第二方面所提供的系统集成在后台服务器中;
当用户完成初始的流程定义图配置及组织架构图配置后,后台服务器根据数据库中存储的用户预设的流程定义图及组织架构图完成权限配置工作;如后台服务器从数据库中获取到用户预设的采购流程定义图,如图2所示,后台服务器获取到采购流程定义图包括3个泳道信息,分别为项目组泳道、科技处泳道及仓管部泳道,并同时从用户预设的组织架构图中获取匹配的部门信息分别为项目组、科技处及仓管部;同时,后台服务器获取各个泳道中的任务节点,并根据任务节点中的信息判断其中“计算订单金额”节点、“订单完成”节点及“进入订单异常流程”节点为系统节点,其余均为角色节点,其中角色节点中,跟随有网管的角色节点有“科技处处长审核”节点及“仓管员入库”节点,后台服务器将这两个节点记为权限节点;则,后台服务器根据所述权限节点从所获取的部门信息中获取匹配的权限角色分别为科技处处长及仓管员,同时后台服务器根据权限节点中的任务信息生成与所述权限角色匹配的角色权限表;
然后,后台服务器获取所有的注册用户信息,并从中分别获取出用户角色信息为科技处处长及仓管员的用户,并在预设用户权限表中将相应的角色权限表的权限内容赋值给相关用户,如:
在本发明一实施例中,所述结合权限管理的流程引擎系统,还包括权限表更新模块,旧权限用户获取模块;
其中,所述组织架构图获取模块,还用于当获取到组织架构图变更信息时,记新获取到的组织架构图为更新组织架构图
所述流程定义图获取模块100,还用于获取用户发送的流程定义图,记为更新流程定义图;
所述权限表更新模块,用于根据所述更新组织架构图及所述更新流程生成新的角色权限表,记为更新权限表;
所述旧权限用户获取模块,用于获取用户权限表中包含所述更新权限表中权限内容的用户信息,记为旧权限用户;
所述权限分配模块,还用于将所述旧权限用户信息中的角色信息与更新权限表进行比较;
当所述旧权限用户信息中的角色信息与更新权限表匹配时,所述权限分配模块,判断所述旧权限用户权限无需变更。
具体的,在本发明一具体应用场景中,当用户的组织架构发生变化时,用户将新的组织架构图及涉及改动的流程定义图发送给所述后台服务器;后台服务器根据获取到的新的组织架构图替换已有的组织架构图,并记为更新组织架构图,同时将新获取到的流程定义图替换已有的流程定义图,并记为更新流程定义图;然后,后台服务器根据所述更新组织架构图及更新流程定义图获取相应的角色权限表,记为更新权限表;
如,沿用上例,用户将原来组织架构图中的科技处更名为设备管理处,并对相关用户注册时的角色信息进行了更新,同时提交了新的采购流程定义图,此时,后台服务器获取到的新的角色权限表分别包括设备管理处处长权限表及仓管员权限表,其中设备管理处处长权限表中包含的权限内容为“采购订单审批”,仓管员权限表中包含的权限内容为“入库情况确认”;
则,后台服务器分别根据上述权限内容从用户权限表中获取匹配用户信息,如权限内容包括“采购订单审批”的用户为张三,权限内容包括“入库情况确认”的用户为李四;
后台服务器将所述张三、李四记为旧权限用户,并获取所述旧权限用户当前的角色信息,其中,获取到张三的当前角色信息包括设备管理处处长,后台服务器判断与权限内容包括“采购订单审批”的角色权限表,设备管理处处长权限表,的角色信息一致,李四的当前角色信息包括仓管员,后台服务器判断与权限内容包括“入库情况确认”的角色权限表,仓管员权限表,的角色信息一致;因此,后台服务器判断本次组织架构的调整不涉及权限变化,无需对用户权限进行变更。
在本发明一实施例中,所述结合权限管理的流程引擎系统,还包括新权限用户获取模块;
其中,当所述旧权限用户信息中的角色信息与更新权限表不匹配时,所述权限分配模块,还用于删除所述旧权限用户的用户权限表中与所述更新权限表匹配的权限内容;
所述新权限用户获取模块,用于获取用户信息中角色信息与所述更新权限表匹配的用户,记为新权限用户;
所述权限分配模块,还用于获取所述新权限用户的用户权限表,记为待更新权限表;
所述权限分配模块,还用于根据所述更新权限表,在预设用户权限表中将所述更新权限表中的权限赋值给所述新权限用户。
具体的,在本发明一具体应用场景中,用户在新的组织架构图中新增加了一个部门为设备管理处,用于管理采购订单的审批工作,并委任王五为设备管理处的处长;
沿用上例,则此时,后台服务器获取到的旧权限用户中,张三的角色信息与设备管理处处长权限表的角色信息不一致,后台服务器判断此时张三不再具备相应的权限操作,因此在用户权限表中,将张三的“采购订单审批”权限删除,并获取角色信息为设备管理处处长的用户,王五,并在角色权限表中,将“采购订单审批”权限赋值给王五。
在本发明一实施例中,所述流程流转模块400包括,流转信息获取单元、流转判断单元、节点流转单元,任务权限表获取单元,确权单元;
其中,所述流转信息获取单元,用于根据所述触发用户信息,从所述触发流程图中获取匹配的任务节点、与所述任务节点相连的网关信息,及至少一个与所述网关相连的下级任务节点,其中所述网关信息中包括至少两个流转条件;
所述流转判断单元,用于根据所述触发指令及流转条件获取匹配的下级节点记为目标节点;
当所述目标节点不为流程结束节点时,所述节点流转单元用于,根据所述目标节点信息获取匹配的第二用户信息;
所述节点流转单元,还用于将所述第一用户信息及所述触发指令发送给所述第二用户;
所述用户指令获取模块200,还用于获取第二用户发送的第二控制指令及第二用户信息,
所述任务权限表获取单元,用于获取与所述触发流程图匹配的任务权限表;
所述确权单元,用于根据所述预设用户权限表对第二控制指令的进行确权判断;
当所述确权单元判断所述第二控制指令为有权指令时,
所述用户指令获取模块200,还用于记所述第二控制指令为触发指令,记所述第二用户信息为触发用户信息;
当所述目标节点为结束节点时,所述节点流转单元,还用于根据所述目标节点信息及流程中所有触发指令及触发用户信息生成流程结束信息。
显然,上述实施例仅仅是为了更清楚的表达本发明技术方案所作的举例,而非对本发明实施方式的限定。对于本领域技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,在不脱离本发明构思的前提下,这些都属于本发明的保护范围。因此本发明专利的保护范围应以所附权利要求为准。