一种基于工作流的业务回退集成系统及其实现方法

xiaoxiao2020-10-23  14

一种基于工作流的业务回退集成系统及其实现方法
【技术领域】
[0001]本发明涉及一种业务回退技术,特别是涉及一种基于工作流的业务回退集成系统及其实现方法。
【背景技术】
[0002]随着工作流技术的发展,越来越多的业务系统引入了工作流引擎,规范了业务流程,增强了业务的灵活应变能力,自动引导业务办理步骤。
[0003]虽然在开发上工作流引擎提供的独立的接口,让业务与流程得以解耦,但是从另一方面来说,目前主流的工作流都是需要独立的数据库库表支撑的,并且需要开发和使用很多的流程维护功能。加上目前的绝大多数的业务的流程成熟度不是很高,在业务办理过程中涉及到人为干预,即所谓的“中国特色工作流”,这也是工作流系统的窘境,会大大的增加了系统的学习成本和维护成本。
[0004]业务的复杂度、经办人员的业务与技能素质等等因素都会影响到业务操作的正确性,业务的误操作成了一种常态,不能把所有错误都通过数据库级别的纠正,这在实际生产环境中也存在权限管理问题,会加大系统运行的风险,此时,回退功能成了一种友好的用户体验。
[0005]传统的业务系统针对这种业务需求都会提供业务操作对应的回退操作,在引入了工作流技术之后,流程必定也需要类似的回退操作,由于是两套数据,两套接口,如何将工作流回退与业务回退集成起来提供统一的回退方法是现行工作流系统亟待解决的问题。
[0006]此外,以前在没有应用工作流技术之前,业务操作都是逐级或者逐步回退的,但是在应用了工作流程技术之后,因为工作流引擎提供了业务执行的完整过程,系统可以通过其运行轨迹路径进行反向执行从而实现一次操作回退多步甚至多个业务的需求。
[0007]为了解决系统回退的问题,现有的技术都是通过独立提供业务回退和工作流回退的方法来维护。每当用户遇到业务回退的情况时,都要进入不同的功能进行操作,进行多次回退时,还需要人为判断回退操作的先后顺序,复杂的业务回退操作,由于业务约束报错,经常出现用户不知所措的状况。

【发明内容】

[0008]本发明的目的在于克服现有技术的不足,提供一种基于工作流的业务回退集成系统及其实现方法,用以解决工作流与业务回退需分别操作,无法进行多步回退,无法人为干预灵活控制,无法真正展示业务全生命周期的运行轨迹等问题,克服现有工作流系统中业务回退操作遇到的困难。
[0009]本发明的目的是通过以下技术方案来实现的:一种基于工作流的业务回退集成系统,所述系统包括:
回退校验单元,对回退参数进行回退范围的校验以及业务回退对象的校验;
回退执行路径分析单元,通过流程实例的流转记录,结合业务规则以及回退参数的约定,来分析流程回退的回退执行路径;
回退服务解析单元,对流程回退的回退执行路径所对应流程节点上,所配置的业务回退服务进行解析,形成业务回退服务的执行队列;
回退服务执行单元,根据流程回退的回退执行路径,分别调用工作流的业务回退服务接口和业务回退服务进行集成回退。
[0010]所述系统还包括回退数据迀移单元,所述回退数据迀移单元用于:在集成回退执行前,将回退的流程数据进行迀移,以确保流程的回退过程进行记录。
[0011]所述系统还包括视图处理单元,联合流程数据和回退数据构建业务流程视图,通过图像的方式展示流程的实际执行和回退路径的全过程。
[0012]所述回退执行路径包括逐步回退、逐级回退和回退至指定节点。
[0013]一种基于工作流的业务回退集成的实现方法,所述方法包括以下多个步骤:
51:获取回退参数,进行回退参数校验,在校验通过后,创建业务回退对象,构造回退服务入参,圈定回退范围;
52:在回退参数校验通过后,计算出需要回退的流程实例和流程节点,并根据当前回退节点和目录节点计算出回退范围内所有流程实例的回退执行路径;
53:在计算出业务回退的回退执行路径后,根据回退执行路径对应的流程节点上配置的业务回退服务,解析为具体的业务回退服务;
54:根据工作流回退规则和业务回退规则将回退执行路径构造为业务回退的执行队列,并装载业务回退对象;
55:根据回退执行路径和业务回退的执行队列,分别调用工作流引擎的业务回退服务接口和业务回退服务,按顺序执行业务的集成回退。
[0014]在执行集成回退之前,还包括回退数据迀移步骤:将回退的流程数据进行迀移,记录回退日志,保存工作流回退的流转数据。
[0015]所述回退执行路径包括逐步回退、逐级回退和回退至指定节点。
[0016]本发明的有益效果是:
I)本发明通过回退校验单元对回退参数进行回退范围的校验以及业务回退对象的校验,根据流程实例的流转记录,结合业务规则以及回退参数的约定,采用回退执行路径分析单元来分析流程回退的回退执行路径;再通过回退服务解析单元对流程回退的回退执行路径对应流程节点上所配置的业务回退服务进行解析,形成业务回退服务的执行队列;回退服务执行单元再根据回退执行路径和执行队列,调用工作流的业务回退服务接口和业务回退服务进行集成回退。
[0017]2)本发明还通过视图处理单元对业务流和业务回退进行视图展示,视图处理单元联合流程数据和回退数据构建业务流程视图,通过图像的方式展示流程的实际执行和回退路径的全过程。
[0018]3)本发明使得业务回退与工作流的流转、终止集成到一起,不需要开发单独的业务回退功能,简化系统结构,同时有效降低系统的成本。本发明将业务回退和工作流回退集成为一个统一入口,极大地简化操作步骤,并且可以灵活地控制业务回退操作步骤。
【附图说明】
[0019]图1为本发明中业务回退集成系统的系统框图;
图2为本发明中业务回退集成实现方法的流程示意图;
图3为本发明中的一种具体实施例的流程示意图。
【具体实施方式】
[0020]下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
[0021](一)业务回退集成系统如图1所示,一种基于工作流的业务回退集成系统,所述系统包括:
回退校验单元,对回退参数进行回退范围的校验以及业务回退对象的校验;
回退执行路径分析单元,通过流程实例的流转记录,结合业务规则以及回退参数的约定,来分析流程回退的回退执行路径;
回退服务解析单元,对流程回退的回退执行路径所对应流程节点上,所配置的业务回退服务进行解析,形成业务回退服务的执行队列;
回退服务执行单元,根据流程回退的回退执行路径,分别调用工作流的业务回退服务接口和业务回退服务进行集成回退。
[0022]所述系统还包括回退数据迀移单元,所述回退数据迀移单元用于:在集成回退执行前,将回退的流程数据进行迀移,以确保流程的回退过程进行记录。
[0023]所述回退执行路径包括逐步回退、逐级回退和回退至指定节点。
[0024]本发明中,在业务流程建模时,需要对流程节点配置业务回退服务,需要在框架层面定义统一的业务回退服务接口,该接口的参数必须标准化,所有业务的回退都可以通过标准化的业务参数进行各自业务回退,业务回退服务的具体实现由对应业务的开发人员进行实现。
[0025]在工作流系统中启动业务流程办理业务,通过工作流引擎驱动业务的办理,通过业务流程模型定义业务的办理环节以及先后顺序。
[0026]在办理过程中,通过工作流引擎可以进行回退上一办理环节操作,此时,工作流系统可以是流转到原来执行过的节点,也可以是上一个节点的执行撤销,无论是那种方法,都会获取上一节点配置的业务回退服务,回退上一步的业务操作,进入待办业务可以进行重新执行上一步的操作。
[0027]在完成任务后,可以进行撤销操作,在调用工作流引擎进行业务撤销时同调用当前任务对应流程节点配置的业务回退服务进行业务撤销。
[0028]在不满足业务条件时,可以进行业务终止操作,在待办任务的办理过程中或者流程管理的相关功能,根据实际需要有操作人员终止业务流程或者有业务规则触发业务流程终止,都会调用当前流程实例执行轨迹中节点配置的业务回退服务反向执行,进行业务数据的撤销,如果涉及子流程,可根据业务实际情况进行跳过。如果实际过程中一个流程关联多个子业务,子业务是否回退并不影响当前业务的操作,也没有其必要,所以在回退集成时具体实现要考虑这种灵活性。
[0029]在需要进行多步回退时,通过专门的功能进 行操作,一般情况下工作流系统需要提供特定功能,满足任意运行节点到任意目标节点的回退需求,并且可以人为干预之间过程的业务回退过程,达到工作流业务回退的集成入口统一与灵活控制。
[0030]业务的办理过程和回退过程都可以同流程视图进行展示,在工作流引擎进行流转回退时,需要保存原来的流程流转记录,但无需保存流程变量与临时运行数据,并且通过实际运行数据和回退的运行数据构造一个统一的视图,在业务办理记录查询时可以完整的展示流程的实际运行记录以及回退记录,具体形态可以是文字列表,也可以是流程流转轨迹图,实际节点与回退节点可以通过不同的样式进行区别。
[0031](二)业务回退集成实现方法
如图2所示,一种基于工作流的业务回退集成的实现方法,包括以下多个步骤。
[0032]步骤1:获取回退参数,进行回退参数校验,在校验通过后,创建业务回退对象,构造回退服务入参,圈定回退范围;特定的回退参数用于满足回退灵活性的设置,能够影响到实际回退的执行路径,比如是否一次回退多步,是否跳过子流程的回退,而特定的业务数据是业务回退的前提条件。
[0033]步骤2:在回退参数校验通过后,计算出需要回退的流程实例和流程节点,并根据当前回退节点和目录节点计算出回退范围内所有流程实例的回退执行路径。
[0034]步骤3:在计算出业务回退的回退执行路径后,根据回退执行路径对应的流程节点上配置的业务回退服务,解析为具体的业务回退服务。
[0035]步骤4:根据工作流回退规则和业务回退规则将回退执行路径构造为业务回退的执行队列,并装载业务回退对象。
[0036]如果一个节点反复流转过多次,或者,业务回退服务支持逐步回退,则计算最新的节点,如果业务回退服务不支持逐步回退,只支持逐级回退,则计算最老的节点。
[0037]逐步回退和逐级回退的区别在于,逐步回退是操作一次都要执行对应的回退,逐级回退是只从高级次的回退服务开始,如果前面低于当前级次则进行回退,否则忽略;目标节点所属的流程实例必回退;回退节点所属的流程实例必回退;主流程实例的节点必回退;默认子流程实例不回退,除非回退参数明确指出;最后根据流程实例划分计算出回退执行路径。
[0038]步骤5:将回退的流程数据进行迀移,记录回退日志,保存工作流回退的流转数据。在执行集成回退之前,持久化流程回退数据,主要是流转数据,不包括流程变量、流程运行等数据,业务流程视图可以通过构造运行于回退数据的统一视图进行实际过程和回退过程的呈现。
[0039]步骤6:根据回退执行路径和业务回退的执行队列,分别调用工作流引擎的业务回退服务接口和业务回退服务,按顺序执行业务的集成回退。
[0040](三)具体实施例
如图3所示,本发明的一种具体实施例,具有如下五个实施步骤。
[0041]Pl:在业务流程模型中,配置每个业务环节即流程节点的业务回退服务,采用统一标准化的业务回退服务接口。
[0042]P2:在业务办理过程中:
①若业务回退服务支持逐步回退或逐级回退,则待办任务的业务处理界面具有表示打回上一环节的选项,选择该表示打回上一环节的选项,流程跳转到上一环节,上一环节的业务数据被回退。
[0043]②在当前业务处理界面保存业务数据之后,如果发现业务有误,可以进行撤销,选择业务处理界面上的表示已办任务撤销的选项,刚才操作的业务数据被回退。
[0044]③如果当前任务处理界面被关掉了,可以在已办任务功能查找到该任务,并完成该任务的撤销操作,该撤销操作的前提是该任务的后续环节尚未开始办理,如果开始办理,只能由后续节点的办理人执行回退。
[0045]④在业务处理界面能够根据实际需要进行流程的终止,根据业务回退服务接口解析参数,终止操作无需进行流程数据的迀移,只需要构造业务的回退队列进行业务回退即可,因为一般情况下流程终止是不可逆的。
[0046]⑤如果需要回退到特定的流程节点,需选择业务处理界面上的表示流程回退到指定节点的选项,将流程回退到指定的节点,该指定节点的业务数据被回退。
[0047]以上所有的操作都是通过调用统一的业务回退服务接口来实现工作流与业务的统一回退。
[0048]不同的操作获取到当前待回退节点实例和目标节点实例以及其他约束条件都是不定,但是业务回退服务接口需要的参数对象是统一的。
[0049]在业务办理的各个环节,视图处理单元可以联合流程数据和回退数据构建业务流程视图,精确体现流程的实际执行和回退线路的全过程,具体的展现方式可以根据应用系统的特点来确定,本发明不作限定。
[0050]对于开发人员来说,本发明使得业务回退与工作流的流转、终止集成到一起,使得流程开发人员不用关心工作流的操作如何进行业务回退的控制,而业务开发人员不需要开发单独的业务回退功能,也不用关心如何进行多步的回退。而对于用户来说,本发明将业务回退和工作流回退集成为一个统一入口,极大地简化操作步骤,并且可以根据业务办理规范灵活地控制业务的回退步骤。
【主权项】
1.一种基于工作流的业务回退集成系统,其特征在于,所述系统包括: 回退校验单元,对回退参数进行回退范围的校验以及业务回退对象的校验; 回退执行路径分析单元,通过流程实例的流转记录,结合业务规则以及回退参数的约定,来分析流程回退的回退执行路径; 回退服务解析单元,对流程回退的回退执行路径所对应流程节点上,所配置的业务回退服务进行解析,形成业务回退服务的执行队列; 回退服务执行单元,根据流程回退的回退执行路径,分别调用工作流的业务回退服务接口和业务回退服务进行集成回退。2.根据权利要求1所述的种基于工作流的业务回退集成系统,其特征在于:所述系统还包括回退数据迀移单元,所述回退数据迀移单元用于:在集成回退执行前,将回退的流程数据进行迀移,以确保流程的回退过程进行记录。3.根据权利要求1所述的种基于工作流的业务回退集成系统,其特征在于:所述系统还包括视图处理单元,联合流程数据和回退数据构建业务流程视图,通过图像的方式展示流程的实际执行和回退路径的全过程。4.根据权利要求1所述的种基于工作流的业务回退集成系统,其特征在于:所述回退执行路径包括逐步回退、逐级回退和回退至指定节点。5.—种基于工作流的业务回退集成的实现方法,其特征在于,所述方法包括以下多个步骤: 51:获取回退参数,进行回退参数校验,在校验通过后,创建业务回退对象,构造回退服务入参,圈定回退范围; 52:在回退参数校验通过后,计算出需要回退的流程实例和流程节点,并根据当前回退节点和目录节点计算出回退范围内所有流程实例的回退执行路径; 53:在计算出业务回退的回退执行路径后,根据回退执行路径对应的流程节点上配置的业务回退服务,解析为具体的业务回退服务; 54:根据工作流回退规则和业务回退规则将回退执行路径构造为业务回退的执行队列,并装载业务回退对象; 55:根据回退执行路径和业务回退的执行队列,分别调用工作流引擎的业务回退服务接口和业务回退服务,按顺序执行业务的集成回退。6.根据权利要求5所述的一种基于工作流的业务回退集成的实现方法,其特征在于,在执行集成回退之前,还包括回退数据迀移步骤:将回退的流程数据进行迀移,记录回退日志,保存工作流回退的流转数据。7.根据权利要求5所述的一种基于工作流的业务回退集成的实现方法,其特征在于:所述回退执行路径包括逐步回退、逐级回退和回退至指定节点。
【专利摘要】本发明公开了一种基于工作流的业务回退集成系统及其实现方法,通过回退校验单元对回退参数进行回退范围的校验以及业务回退对象的校验;根据流程实例的流转记录,结合业务规则以及回退参数的约定,再通过回退执行路径分析单元分析流程回退的回退执行路径;采用回退服务解析单元,对流程回退的回退执行路径所对应流程节点上,所配置的业务回退服务进行解析,形成业务回退服务的执行队列;最后通过回退服务执行单元,根据流程回退的回退执行路径,分别调用工作流的业务回退服务接口和业务回退服务,完成业务流程的集成回退。本发明使得业务回退与工作流的流转、终止集成到一起,解决了工作流与业务回退需分别操作时无法进行多步回退等问题。
【IPC分类】G06Q10/06
【公开号】CN104881759
【申请号】CN201510348314
【发明人】詹开明, 林隆永, 黄永华
【申请人】四川久远银海软件股份有限公司
【公开日】2015年9月2日
【申请日】2015年6月23日
转载请注明原文地址:https://www.famiwei.com/read-8138317.html

最新回复(0)