CN117032772A - 流程处理方法、装置、设备和介质 - Google Patents
流程处理方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN117032772A CN117032772A CN202311038268.XA CN202311038268A CN117032772A CN 117032772 A CN117032772 A CN 117032772A CN 202311038268 A CN202311038268 A CN 202311038268A CN 117032772 A CN117032772 A CN 117032772A
- Authority
- CN
- China
- Prior art keywords
- flow
- node
- branch
- target
- condition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000005111 flow chemistry technique Methods 0.000 title claims abstract description 57
- 230000004048 modification Effects 0.000 claims description 27
- 238000012986 modification Methods 0.000 claims description 27
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012790 confirmation Methods 0.000 claims description 5
- 230000010365 information processing Effects 0.000 claims description 5
- 238000011064 split stream procedure Methods 0.000 claims description 4
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 17
- 238000013461 design Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明的实施例提供了一种流程处理方法、装置、设备和介质,涉及互联网技术领域,方法包括:确定是否存在与待处理的业务数据匹配的目标分支流,若是,在运行至目标分支流所在目标节点且满足分支流触发条件的情况下,切换至目标节点在目标分支流的分身执行。以及,响应于流程新增请求,判断是否已存在基础流,若是,创建分支流,并将分支流合并至基础流,以使分支流和基础流共用的目标节点具备在基础流和分支流中分别对应的信息和分支流触发条件。若否,基于流程新增请求中的各节点信息,创建基础流,并记录各节点在基础流中对应的信息。从而实现流程的便捷建立和运行。
Description
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种流程处理方法、装置、设备和介质。
背景技术
流程引擎目前广泛应用于各种场景,例如,在办公领域,可以通过对实际办公流程进行抽象建模,再通过信息技术将抽象模型在办公信息化系统加以实现,以达到无纸化、自动化办公的目的。
然而,随着各场景中业务的不断扩展,往往需要对现有流程定义进行调整升级,以适应新业务,该种情况下,一般由流程开发人员根据新业务,在原有流程定义上新增节点或者修改现有节点信息,以开发并运行新的分支流程。但是,随着业务的不断扩展,在流程定义上进行业务扩展时,会涉及到大量分支流程建模,实现较为复杂。
发明内容
本发明的目的之一包括,例如,提供了一种流程处理方法、装置、设备和介质,以至少部分地降低涉及大量分支流的场景中流程实现复杂度。
本发明的实施例可以这样实现:
第一方面,本发明提供一种流程处理方法,应用于电子设备,所述电子设备中存储有基础流和分支流的节点信息,以及分支流触发条件;所述方法包括:
确定是否存在与待处理的业务数据匹配的目标分支流;
若是,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行;其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
在可选的实施方式中,所述电子设备中还存储有流程分支数据,所述流程分支数据用于记录分支流和所述分支流触发条件;
所述确定是否存在与待处理的业务数据匹配的目标分支流,包括:
获取待处理的业务数据涉及的条件相关信息;
针对所述流程分支数据中的每个分支流,判断其分支流触发条件是否与所述条件相关信息匹配,将分支流触发条件与所述条件相关信息匹配的分支流确定为目标分支流。
在可选的实施方式中,所述流程分支数据还记录有分支流所适用的业务场景和分支流触发条件的变量;
所述获取待处理的业务数据涉及的条件相关信息,包括:获取待处理的业务数据对应的业务场景和业务变量;
所述针对所述流程分支数据中的每个分支流,判断其分支流触发条件是否与所述条件相关信息匹配,将分支流触发条件与所述条件相关信息匹配的分支流确定为目标分支流,包括:
针对所述流程分支数据中的每个分支流,判断其所适用的业务场景是否与所述业务数据对应的业务场景匹配,以及其分支流触发条件的变量是否与所述业务数据对应的业务变量匹配;
将所适用的业务场景与所述业务数据对应的业务场景匹配,且分支流触发条件的变量与所述业务数据对应的业务变量匹配的分支流确定为目标分支流。
在可选的实施方式中,所述节点信息包括节点连线数据和连线条件数据,所述电子设备中还存储有流程分支数据,所述流程分支数据用于记录分支流;
所述确定是否存在与待处理的业务数据匹配的目标分支流,包括:
根据所述节点连线数据,获取运行节点后续的连线;
针对后续存在多个连线的节点,根据所述流程分支数据,确定各所述连线是否属于分支流;
针对属于分支流的连线,确定该连线的连线条件数据是否与所述业务数据涉及的条件相关信息匹配,若是,将该连线所属分支流确定为目标分支流。
在可选的实施方式中,所述方法还包括:
若不存在与待处理的业务数据匹配的目标分支流,或者,不存在满足分支流触发条件的目标分支流,则直接运行所述基础流,并展示所述基础流;以及,
在切换至所述目标节点在所述目标分支流的分身执行的情况下,展示所述基础流和执行的所述目标分支流。
在可选的实施方式中,所述基础流中的节点信息包括节点的唯一标识、节点详情、节点的分支和连线;所述分支流中的节点信息包括节点的唯一标识、节点详情和连线,所述节点详情中包括节点的引用情况;
所述切换至所述目标节点在所述目标分支流的分身执行,包括:
解析所述目标节点在所述目标分支流中的节点详情,确定该节点详情中是否存在流引用,在存在流引用的情况下,查找到所引用的流中相应节点的节点详情并执行;在未存在流引用的情况下,执行该节点详情;
所述直接运行所述基础流,包括:直接获取所述基础流中节点的节点详情并执行。
第二方面,本发明实施例提供一种流程处理方法,应用于电子设备,所述方法包括:
响应于流程新增请求,判断是否已存在基础流;
若是,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件;
若否,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
在可选的实施方式中,所述将所述分支流合并至所述基础流,包括:
针对所述分支流中的每个节点,确定其是否为在所述基础流中已存在的目标节点,若为所述目标节点,新增所述目标节点在所述分支流中对应的信息,以及分支流触发条件;若非所述目标节点,将该节点新增至所述基础流;
其中,所述目标节点在所述基础流和分支流中分别对应的信息相互独立,且所述目标节点在所述分支流中对应的信息至少部分继承于所述目标节点在其他流中对应的信息。
在可选的实施方式中,所述将所述分支流合并至所述基础流,包括:
获取所述分支流中开始节点后续的连线,作为待分析连线;
判断在基础流中是否存在与所述待分析连线具有相同开始节点和结束节点的待匹配连线;
若是,确定所述基础流中该开始节点后续的连线数量,在连线数量为一条的情况下,将所述分支流记录在所述基础流中开始节点对应的分支中;在连线数量为两条以上的情况下,在所述基础流中对应连线的分支流触发条件中增加分支;
若否,确定所述待分析连线的结束节点在所述基础流中是否存在,如果存在,在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线;如果不存在,在所述基础流中补充所述结束节点,并在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线。
在可选的实施方式中,所述方法还包括:
响应于流程修改请求,若请求修改的为节点信息,判断请求修改的节点是否存在分身;
若是,获取所要修改的节点的分身,通过分身追踪算法,查询所述分身所涉及的目标流;
在针对所述分身的修改涉及所有所述目标流的情况下,对所要修改的节点的分身对应的节点信息进行修改;在针对所述分身的修改涉及部分所述目标流的情况下,复制所述节点的分身对应的节点信息,覆盖未涉及修改的目标流中该节点的节点信息后修改所述节点的分身对应的节点信息。
第三方面,本发明实施例提供一种流程处理装置,应用于电子设备,所述电子设备中存储有基础流和分支流的节点信息,以及分支流触发条件;所述流程处理装置包括:
信息确认模块,用于确定是否存在与待处理的业务数据匹配的目标分支流;
信息处理模块,用于在存在所述目标分支流的情况下,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行;其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
第四方面,本发明实施例提供一种流程处理装置,应用于电子设备,所述流程处理装置包括:
请求接收模块,用于响应于流程新增请求,判断是否已存在基础流;
请求处理模块,用于在存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件;在不存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
第五方面,本发明提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述实施方式任一项所述的流程处理方法。
第六方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,所述计算机程序运行时控制所述计算机可读存储介质所在电子设备执行前述实施方式任一项所述的流程处理方法。
本发明实施例的有益效果包括,例如:通过将分支流合并至基础流,针对存在分支流的目标节点设置分身,在需要运行分支流的情况下,只需切换至目标节点在目标分支流的分身执行便可,无需进行大量分支流程建模,降低了流程处理复杂度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的一种应用场景示意图。
图2示出了本发明实施例提供的一种流程处理方法的流程示意图。
图3示出了本发明实施例提供的一种图2中S120的流程示意图。
图4示出了本发明实施例提供的一种流转装置平台的架构示意图。
图5示出了本发明实施例提供的一种基于图4所示架构的流程处理方法的流程示意图。
图6示出了本发明实施例提供的一种SpareList算法的流程示意图。
图7示出了本发明实施例提供的一种分支流合并至基础流的流程示意图。
图8示出了本发明实施例提供的一种分支流与基础流的合并效果示意图。
图9示出了本发明实施例提供的一种流程处理方法的另一流程示意图。
图10示出了本发明实施例提供的一种流程处理方法的另一流程示意图。
图11示出了本发明实施例提供的一种流程展示示意图。
图12示出了本发明实施例提供的一种流程处理装置的示例性结构框图。
图13示出了本发明实施例提供的一种流程处理装置的另一示例性结构框图。
图标:100-电子设备;110-存储器;120-处理器;130-通信模块;140-流程处理装置;141-信息确认模块;142-信息处理模块;143-请求接收模块;144-请求处理模块。
具体实施方式
现今,随着业务的不断扩展,在流程定义上进行业务扩展时,会涉及到大量分支流程建模,实现较为复杂。
例如,随着流程复杂度不断增加,准确、方便、快速地根据业务场景识别相关的流程节点变得越来越困难。
又例如,若要再次扩展业务,需要开发人员对原有流程定义非常了解,否则很容易造成流程定义配置失败,引发流程运行异常。
为了改善上述问题,可以考虑研发包含多起点多分支流程的工作流引擎,支持多起点多分支流程的管控,流程运行时,由虚拟开始节点路由到不同分支的开始节点,并走向该分支的节点,最后走至虚拟结束节点。也可以考虑通过树形方式构建流程分支,一个父节点就是一个分支,子节点是该分支走向。还可以考虑通过数据模块,汇聚不同分支的数据,供终端做可视化数据报表分析。
然而,经研究发现,目前的流程处理方案主要用于解决一个流程多分支的绘制以及分支数据的汇聚,但是针对某个节点在不同分支场景下的不同行为,流程分支场景多,主流程叠加分支绘制难度大的问题,未进行研究探讨。
基于上述研究,本发明实施例提供一种流程处理方案,通过对流程处理方案的巧妙设计,实现了基础流和分支流的便捷合并、运行,降低流程处理复杂度。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在发明过程中做出的贡献。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅数据示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
应注意到:相似的标号和字母在下面的附图中数据示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
请参照图1,是本实施例提供的一种电子设备100的方框示意图,本实施例中的电子设备100可以为能够进行流程创建、业务运行、数据交互、处理的服务器、处理设备、处理平台等。所述电子设备100包括存储器110、处理器120及通信模块130。所述存储器110、处理器120以及通信模块130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。
通信模块130用于通过所述网络建立所述电子设备100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
应当理解的是,图1所示的结构仅为电子设备100的结构示意图,所述电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
请结合参阅图2,为本发明实施例提供的一种流程处理方法的流程示意图,可以由图1所述电子设备100执行,例如可以由电子设备100中的处理器120执行。该流程处理方法包括S110、S120和S130。
S110,响应于流程新增请求,判断是否已存在基础流。若是,执行S120;若否,执行S130。
S120,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件。
S130,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
通过在已存在基础流的情况下,基于流程新增请求创建分支流,并将分支流合并至基础流,从而无需进行复杂的分支流程建模,便捷地实现流程创建。
S110中,在基于流程新增请求进行流程新增的情况下,如果已存在基础流,则以分支流的形式进行流程新增。如果未存在基础流,如接收到流程新增请求时,无其他流程,则可以以基础流的形式进行流程新增。
本实施例中,基础流的确定方式可以灵活选择,例如,可以将首次新增的流程作为基础流。又例如,可以将用户指定的流程作为基础流。又例如,可以按自定义规则选择符合条件的流程作为基础流。
S120中,在已存在基础流的情况下,基于流程新增请求创建的均为分支流。基于本实施例中的方案,在进行流程设计过程中,只需关注当前业务,例如,针对当前业务新增独立的分支流,电子设备即可将分支流自动合并到基础流,形成整体流程。
将分支流合并至基础流可以灵活实现。例如,可以针对所述分支流中的每个节点,确定其是否为在所述基础流中已存在的目标节点,若为所述目标节点,新增所述目标节点在所述分支流中对应的信息,以及分支流触发条件。若非所述目标节点,将该节点新增至所述基础流。
其中,所述目标节点在所述基础流和分支流中分别对应的信息相互独立,且所述目标节点在所述分支流中对应的信息至少部分继承于所述目标节点在其他流中对应的信息。
本实施例中,可以通过节点信息确定分支流中的节点是否为目标节点。例如,节点信息可以包括节点的唯一标识NodeId,若分支流中某节点的唯一标识NodeId与基础流中某节点的唯一标识NodeId一致,则可以确定该节点为在基础流中已存在的目标节点,反之则非目标节点。针对目标节点,在基础流中新增目标节点在分支流中对应的信息,以及分支流触发条件,便可实现合并。
可以理解的是,目标节点针对基础流和分支流可以配置不同的内容,但该目标节点的基础信息基本一致,针对不同的流可能仅部分扩展内容不一致,如目标节点在基础流和分支流中有不同的行为配置。因而目标节点在分支流中对应的信息可以至少部分继承于目标节点在其他流,如基础流中对应的信息。
又例如,请结合参阅图3,将分支流合并至基础流可以通过S121至S126实现。
S121,获取所述分支流中开始节点后续的连线,作为待分析连线。
S122,判断在基础流中是否存在与所述待分析连线具有相同开始节点和结束节点的待匹配连线。若是,执行S123;若否,执行S124。
S123,确定所述基础流中该开始节点后续的连线数量,在连线数量为一条的情况下,将所述分支流记录在所述基础流中开始节点对应的分支中。在连线数量为两条以上的情况下,在所述基础流中对应连线的分支流触发条件中增加分支。
S124,确定所述待分析连线的结束节点在所述基础流中是否存在,如果存在,执行S125;如果不存在,执行S126。
S125,在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线。
S126,在所述基础流中补充所述结束节点,并在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线。
为了更为清楚地阐述本实施例中基础流和分支流的合并原理,现以下述场景为例,对实现流程进行举例说明。
基础流中各节点的基本结构以及与继承节点的关联结构可以如下:
基础流中,节点的唯一标识是NodeId,单个节点会记录节点详情DETAIL以及所继承该节点的分支FORK。
节点详情DETAIL主要记录该节点在基础流中的配置信息,如节点名称、行为、表单、事件等。如果节点详情DETAIL为空,表示该节点由后续业务扩展所引入,节点详情在对应业务分支中。
分支FORK表示该节点被不同的分支流继承,记录的可以是分支流ID列表。如果分支FORK字段为空,表示该节点未被分支流继承。
连线的基本结构可以如下:
基础流、分支流的连线记录该连线的起始(开始)节点-结束节点,代表流程走向。如果一个节点后续有多个连线,则可通过分支流触发条件(如条件表达式)自动判断节点结束后,后续所需执行的节点。
分支流合并到基础流时,如果对应的开始节点后续有多个连线,则在符合分支流的连线上基于原有条件(BASE_EXPRESS)追加分支条件(FORK_N),追加用或,即(||)。
分支流节点关联结构可以如下:
分支流与基础流一样,节点的唯一标识是NodeId,且节点可以继承基础流或者其他分支流。
在分支流的节点非继承时,节点详情Detail记录与基础流一致。在分支流的节点为继承时,节点详情Detail中记录继承源,例如,继承源为基础流Base、分支Fork_N。
基于上述定义,流程创建过程中的实现步骤如下:
流程定义开发完成后,如果需要新增分支,以新增分支独立流程创建独立的分支流(FORK-FLOW),在分支流中支持新增节点或者继承原有节点的全部或者部分属性。为了降低处理复杂度,避免发生死循环,基础节点可以通过SpareList算法,保证最多二级继承。
随着业务开展,在当前流转步骤流的配置日益复杂,或者不能很好体现不同的业务场景时,可以选择现有流转步骤流为基础流,即可新增分支流。示例性地,如果添加时,有且仅有一个流程,可以将该已有流程自动转为基础流,所新添加的流程即为分支流。如果添加时,有两个以上的流程,则直接创建分支流。
在添加分支流时,配置分支流对应的场景说明以及触发条件。其中,场景说明为该分支运行时的业务场景说明,通过添加场景说明,使得后续修改设计流程时,能快速定位所对应的业务场景中的分支流。触发条件为该分支流运行时,所需满足的条件。例如,在审批场景中,某分支流所适用场景为审批金额price大于5000,那么,该分支流触发条件即为审批金额price>5000。
分支流中,分支流所引用的节点可以继承基础流中的节点,也可以为不存在于基础流中的新增节点。
在分支流所引用的节点为继承基础流中的节点的场景下,对业务而言在基础流和分支流中该节点是同一个,该节点在不同业务场景中行为表现一致或者不一致。例如,参与人、提交动作等在不同业务场景中可能一致或者不一致。如果一致,则直接继承该节点,如果不一致,则继承以后可以修改,即节点可以有分身属性。例如,基础流中的某节点,如果存在于多个分支,那么,该节点可以有多个分身,在不同的分支中对应不同的分身。
由于基础流中的节点来源有原有的基础流以及由分支流合并至基础流的节点,且继承时部分分支会直接继承,部分分支继承以后会修改,故继承时可能会继承到分支业务场景,因而,选择继承基础流的节点时,确定选择继承的流,如选择继承节点在基础流中的信息、选择继承节点在某分支流中的分身信息。
在分支流所引用的节点为新增节点的场景下,对业务而言是新的业务节点,在基础流中不存在。
请结合参阅图4,在一种实现方式中,为了实现上述流程创建,电子设备中可以集成流转装置平台,流转装置平台主要包含流转设计器和分支基础流驱动器。
流转设计器主要用于针对独立的子业务场景设计分支流,并支持获取基础流中的任意节点供分支流继承使用。
分支基础流驱动器主要用于根据流转设计器的流转步骤,自动把同一流程的不同分支流合并到基础流,在流程运行时,驱动流程在基础流运转的同时做好分支隔离,同步基础流跟分支流的运转情况。
各节点信息、触发条件、流程分支数据等可以通过表单的形式存在。可以理解,相应数据还可以通过其他形式存在,如可以通过数据库、文本、编码等形式存在,本实施例对此不做限制。
请结合参阅图5,基于图4所示架构,流程处理方案可以包括S101、S102、S103和S104。
S101,流程定义开发完成后,如果需要新增分支,则在流转设计器中以新增分支独立流程创建独立分支流(FORK-FLOW),支持新增节点或者继承原有节点的全部或者部分属性。针对基础流中的节点,通过SpareList算法,确保继承最多二级继承。
S102,分支流设计完成以后,以开始节点为起始,逐步解析后续节点属性合并至基础流(BASE-FLOW),并进行全部继承、部分继承的引用关系以及分支流触发条件如分支表达式记录。
S103,业务变更时,可以在流程定义中继续新增分支、修改原有基础流、分支流,进行节点的增删改等编排操作,支持继承节点属性再次根据分身追踪算法进行分隔。
S104,流程运行时,默认以基础流运转,在符合分支流触发条件时,可动态切换节点所属分支的分身执行,同时展示基础流以及对应分支流,方便查看流程走向以及所对应业务场景。
请结合参阅图6,进行分支流创建过程中,选择节点后,若基础流中存在与其具备相同nodeId的节点,那么,根据基础流中该节点的Base、Fork信息,提供该节点可以继承的流,SpareList算法可以通过以下方式实现:如果节点nodeId的Base不为空,则把Base加入到SpareList,找对应的分支数据;如果节点nodeId的Base为空,则直接找对应的分支数据;如果分支数据不为空,则依次判断分支数据中的Detail字段;如果Detail字段为base,则继续找下一个分支数据;如果Detail值为Fork_N,则把该Fork_N值加入到SpareList;如果Detail值为详情,则把该Fork加入到SpareList;直至分支数据中的各分支遍历完成,返回SpareList。
分支流中的节点根据业务规则继承基础流中的节点并选择修改或者不修改,或者新增节点,从而完成分支流设计。分支流设计完成以后,以开始节点为起始,逐步解析后续节点属性合并至基础流(BASE-FLOW),并进行全部继承、部分继承的引用关系以及分支流触发条件(如表达式)记录。
按上述流程完成分支流设计后,分支流自动合并到基础流,以便业务做整体流程跟进。请结合参阅图7,为分支流合并至基础流的示例性实现逻辑,在电子设备中维护有开始节点列表StartNodeList、新开始节点列表New StartNodeList、后续连线列表StartLineList的情况下,分支流可以通过以下步骤合并至基础流:
以分支流中的开始节点为起始节点,放入StartNodeList(SNL)中,并清空NewStartNodeList(NSNL)。
依次取SNL中的StartNode,获取该节点在分支流中的后续连线列表StartLineList(SLL)。
判断SLL是否为空,如果SLL为空,则结束;如果SLL不为空,则判断该连线在基础流中是否存在,判断依据为连线的start-end节点一致。
如果连线在基础流中不存在,则判断该连线的EndNode在基础流中是否存在,如果在基础流中存在该EndNode,则在基础流中,在StartNode至EndNode之间追加连线,并在该连线的Express上追加Fork_N。如果在基础流中不存在该EndNode,则在基础流中补充该EndNode,其Detail为空,Fork为Fork_N。
如果该连线在基础流中存在,则判断基础流中的对应StartNode,对外连线是否只有一条。如果基础流中StartNode对外连线只有一条,则在基础流中的StartNode对应的Fork中记录该分支流的Fork_N,在NSNL中记录该连线的EndNode,并在SLL中移除该连线。如果基础流中的StartNode对外连线不止一条,则在基础流中对应的连线的Express中追加Fork_N,在NSNL中记录该连线的EndNode,并在SLL中移除该连线。
继续判断SLL是否为空,如果SLL不为空,则返回执行判断该连线在基础流中是否存在的步骤。如果SLL为空,则进入,则SNL=NSNL,且清空NSNL后,返回执行依次取SNL中的StartNode的步骤。
请结合参阅图8,为本实施例提供的一种分支流与基础流的合并效果示意图。
如图8所示,当新增分支流,引用基础流中的节点B时,可以选择的继承流即为基础流、分支流1、分支流2。
分支流合并到基础流以后,增加流程分支数据,如该流程的分支表,便于后续流程运行时,判断是基础流还是分支流,记录数据格式可以如下:
其中,Express为分支流触发条件;Remark为分支所适用的业务场景;Key为分支流触发条件的变量。
基于上述方式,便可实现分支流创建并将分支流合并至基础流。在此基础上,修改流程可以通过以下步骤实现:响应于流程修改请求,若请求修改的为节点信息,判断请求修改的节点是否存在分身。在请求修改的节点存在分身的情况下,获取所要修改的节点的分身,通过分身追踪算法,查询所述分身所涉及的目标流,在针对所述分身的修改涉及所有所述目标流的情况下,对所要修改的节点的分身对应的节点信息进行修改。在针对所述分身的修改涉及部分所述目标流的情况下,复制所述节点的分身对应的节点信息,覆盖未涉及修改的目标流中该节点的节点信息后修改所述节点的分身对应的节点信息。
示例性地,在业务变更时,可以在该流程定义中继续新增分支、修改原有基础流、分支流,进行节点的增删改等编排操作,支持继承节点属性再次根据分身追踪算法进行分隔。
随着业务变更,针对流程可以新增节点或者调整节点定义信息。例如,可以在基础流或者分支流上新增节点。又例如,支持在基础流或者分支流中进行节点定义修改,在节点拥有不同的分身的情况下,在节点修改时,明确所修改的分身,以及分身影响范围。示例性地,修改节点定义信息时,先选择所修改分身,基于SpareList算法选择对应的修改分身后,如是Base或者Fork_N,通过分身追踪算法,找到该分身所涉及的流。
其中,分身追踪算法如下:遍历SpareList的分身所对应的分支中,该节点的Detail为所选择分身,则把该Fork_N加入到分身追踪列(TraceList)。根据TraceList,选择该分身修改的范围,如果选择全部修改,则直接修改分身对应的Detail,其余引用关系不变。如果选择部分修改,则先复制该分身的Detail,覆盖不修改分支流中该节点的Detail后修改该分身Detail,覆盖部分的分支中该节点的引用关系不变。
采用本实施例上述流程处理方案,能够根据业务场景针对存在分身的节点进行配置隔离,流程设计只需关注当前业务,设计完成后可以自动合并到完整流程中,并能够根据业务场景自动识别和展示关联流程节点和相关配置,方便修改调整,从而支持快速准确的进行流程识别,简单高效的进行分支流程扩展。
在上述流程创建方案的基础上,请结合参阅图9,为本发明实施例提供的一种流程处理方法的流程示意图,用于实现上述完成创建的流程的运行,该流程处理方法可以由图1所述电子设备100执行,例如可以由电子设备100中的处理器120执行。电子设备100中存储有基础流和分支流的节点信息,以及分支流触发条件。该流程处理方法包括S210和S220。
S210,确定是否存在与待处理的业务数据匹配的目标分支流。若是,执行S120。
S220,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行;其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
对目标节点进行分身设计,实现分支流与基础流合并的基础上,在应用过程中,通过识别目标分支流,在满足分支流触发条件的情况下切换至目标节点在目标分支流的分身执行,便可实现分支流运行,实现较为便捷。
S210中,确定是否存在与待处理的业务数据匹配的目标分支流可以通过多种方式实现。
例如,在一种实现方式中,电子设备中还可以存储有流程分支数据,所述流程分支数据用于记录分支流和所述分支流触发条件。相应地,可以获取待处理的业务数据涉及的条件相关信息,针对所述流程分支数据中的每个分支流,判断其分支流触发条件是否与所述条件相关信息匹配,将分支流触发条件与所述条件相关信息匹配的分支流确定为目标分支流。
其中,流程分支数据还可以记录有分支流所适用的业务场景和分支流触发条件的变量,业务数据涉及的条件相关信息可以包括待处理的业务数据对应的业务场景和业务变量。相应地,可以针对所述流程分支数据中的每个分支流,判断其所适用的业务场景是否与所述业务数据对应的业务场景匹配,以及其分支流触发条件的变量是否与所述业务数据对应的业务变量匹配。将所适用的业务场景与所述业务数据对应的业务场景匹配,且分支流触发条件的变量与所述业务数据对应的业务变量匹配的分支流确定为目标分支流。
又例如,在另一实现方式中,节点信息可以包括节点连线数据和连线条件数据。所述电子设备中还可以存储有流程分支数据,所述流程分支数据用于记录分支流。相应地,可以根据所述节点连线数据,获取运行节点后续的连线,针对后续存在多个连线的节点,根据所述流程分支数据,确定各所述连线是否属于分支流。针对属于分支流的连线,确定该连线的连线条件数据是否与所述业务数据涉及的条件相关信息匹配,若是,将该连线所属分支流确定为目标分支流。
S220中,切换至所述目标节点在所述目标分支流的分身执行可以灵活实现。例如,基础流中的节点信息可以包括节点的唯一标识、节点详情、节点的分支和连线。所述分支流中的节点信息可以包括节点的唯一标识、节点详情和连线,所述节点详情中包括节点的继承源。相应地,切换至所述目标节点在所述目标分支流的分身执行可以包括:解析所述目标节点在所述目标分支流中的节点详情,确定该节点详情中是否存在流引用,在存在流引用的情况下,查找到所引用的流中相应节点的节点详情并执行;在未存在流引用的情况下,执行该节点详情。直接运行所述基础流可以包括:直接获取所述基础流中节点的节点详情并执行。
请结合参阅图10,为本发明实施例提供的一种流程处理方法的另一流程示意图,所述方法还包括若不存在与待处理的业务数据匹配的目标分支流,或者,不存在满足分支流触发条件的目标分支流,则执行S230。
S230,直接运行所述基础流,并展示所述基础流。
在切换至所述目标节点在所述目标分支流的分身执行的情况下,为了便于同时查看基础流以及分支流的整体运行情况,方便流程跟踪,还可以展示所述基础流和执行的所述目标分支流。
为了更为清楚地阐述本实施例中流程的运行原理,现以下述场景为例,对实现流程进行举例说明。
在基于前述基础流和分支流的合并原理,实现流程创建的情况下,在流程运行时,默认以基础流运转,在符合分支流触发条件时,可动态切换节点所属分支的分身执行,同时展示基础流以及对应分支流,方便查看流程走向以及所对应业务场景。
流程发起时,根据传入的业务数据字段,判断当前流程所运行的流,并根据流切换对应的节点分身。流程运行时,默认以基础流发起,发起时,根据业务数据,计算该业务数据所符合的流,计算规则如下:
获取该业务数据所有的key,即BusKeys。在流程分支数据为流程分支表的情况下,依次判断流程分支表中对应分支的Key是否存在于BusKeys;如果存在,则加入到符合的分支流列表,如ForkList。如果不存在,则继续获取下一个分支的key进行判断,直至流程分支表中的分支遍历完成。
返回ForkList,基于ForkList选择对应的运行流,计算规则如下:
如果ForkList为空,则表示当前传入的业务数据无对应的分支流,直接运行基础流。
如果ForkList不为空,依次判断对应分支条件,如果判断到一个分支满足,则直接返回该分支;如果ForkList所有分支都不满足,则直接返回基础流。
依据返回的运行流,流程发起运行,且在运行时,根据流切换节点分身,分身对应的Detail获取规则如下:
如果当前运行是基础流,则直接获取基础流中,该节点的DETAIL。
如果当前运行是分支流,则解析分支流中该节点DETAIL。
如果DETAIL存在流引用,则根据流引用找到对应流中该节点的DETAIL。
如果DETAIL不存在流引用,则直接采用该节点的DETAIL。
流程在运行时,部分场景下,业务数据是后续逐步补充完善的,未补充时,流程运行在基础流,表示还未达到对应的业务场景运行节点,故运行在基础流的流程,需要在当前节点提交以后,如果该节点有多个连线,再次判断连线条件,判断是否需要切换下一个节点的分身。判断计算规则如下:
依次获取后面连线的条件列表,即LineExpressList,遍历LineExpressList,解析每个连线表达式,获取该连线的ExpressList,并依次解析ExpressList的条件。
如果条件非Fork的,则直接判断该表达式是否满足,如果判断满足,则走该连线;如果不满足,则继续判断下一个条件。
如果条件是Frok的,则从分支表中获取该Frok条件进行判断,如果判断满足,则基础流后续节点切换至该Fork对应的分身,并唤起对应的分支流;如果判断不满足,则继续判断下一个条件。
如果流程运行在基础流,且节点无分身,则展示基础流的运行情况;如果流程运行分支流,则同时展示基础流整体流程以及该分支流的流程。
如图11所示,如果当前流程运行在分支流-触发条件1,流程展示为如图所示。即基础流中的节点无分身的,则按照基础流运行,节点有分身的(B节点),切换至对应的分身运行,同时可以查看基础流的整体以及分支流的运行情况,方便流程跟踪。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种流程处理装置的实现方式。请参阅图12,图12为本发明实施例提供的一种流程处理装置140的功能模块图,该流程处理装置140可以应用于图1所示电子设备100,电子设备100中存储有基础流和分支流的节点信息,以及分支流触发条件。需要说明的是,本实施例所提供的流程处理装置140,其基本原理及产生的技术效果和上述方法实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该流程处理装置140包括信息确认模块141和信息处理模块142。
其中,信息确认模块141用于确定是否存在与待处理的业务数据匹配的目标分支流。
信息处理模块142,用于在存在所述目标分支流的情况下,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行。
其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种流程处理装置的实现方式。请参阅图13,图13为本发明实施例提供的一种流程处理装置140的功能模块图,该流程处理装置140可以应用于图1所示电子设备100。需要说明的是,本实施例所提供的流程处理装置140,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该流程处理装置140包括请求接收模块143和请求处理模块144。
其中,请求接收模块143,用于响应于流程新增请求,判断是否已存在基础流。
请求处理模块144,用于在存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件;在不存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
本实施例中,图12所示流程处理装置和图13所示流程处理装置可以基于同一电子设备实现,也可以基于不同电子设备分别实现,本实施例对此不做限制。
在上述基础上,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,所述计算机程序运行时控制所述计算机可读存储介质所在电子设备执行上述的流程处理方法。
采用本发明实施例中的上述方案,支持同一个流程配置不同独立的分支流,自动合并至基础流,并支持根据场景进行自动识别和展示,方便做整体流程的跟踪审计以及业务场景维度的流程把控,降低了流程开发升级难度。通过节点分身模式,支持同一个节点在不同分支的个性行为不一致,且在流程运行时支持根据分支隔离运行,提升了流程运行的稳定性和便捷性。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代数据一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种流程处理方法,其特征在于,应用于电子设备,所述电子设备中存储有基础流和分支流的节点信息,以及分支流触发条件;所述方法包括:
确定是否存在与待处理的业务数据匹配的目标分支流;
若是,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行;其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
2.根据权利要求1所述的流程处理方法,其特征在于,所述电子设备中还存储有流程分支数据,所述流程分支数据用于记录分支流和所述分支流触发条件;
所述确定是否存在与待处理的业务数据匹配的目标分支流,包括:
获取待处理的业务数据涉及的条件相关信息;
针对所述流程分支数据中的每个分支流,判断其分支流触发条件是否与所述条件相关信息匹配,将分支流触发条件与所述条件相关信息匹配的分支流确定为目标分支流。
3.根据权利要求2所述的流程处理方法,其特征在于,所述流程分支数据还记录有分支流所适用的业务场景和分支流触发条件的变量;
所述获取待处理的业务数据涉及的条件相关信息,包括:获取待处理的业务数据对应的业务场景和业务变量;
所述针对所述流程分支数据中的每个分支流,判断其分支流触发条件是否与所述条件相关信息匹配,将分支流触发条件与所述条件相关信息匹配的分支流确定为目标分支流,包括:
针对所述流程分支数据中的每个分支流,判断其所适用的业务场景是否与所述业务数据对应的业务场景匹配,以及其分支流触发条件的变量是否与所述业务数据对应的业务变量匹配;
将所适用的业务场景与所述业务数据对应的业务场景匹配,且分支流触发条件的变量与所述业务数据对应的业务变量匹配的分支流确定为目标分支流。
4.根据权利要求1所述的流程处理方法,其特征在于,所述节点信息包括节点连线数据和连线条件数据,所述电子设备中还存储有流程分支数据,所述流程分支数据用于记录分支流;
所述确定是否存在与待处理的业务数据匹配的目标分支流,包括:
根据所述节点连线数据,获取运行节点后续的连线;
针对后续存在多个连线的节点,根据所述流程分支数据,确定各所述连线是否属于分支流;
针对属于分支流的连线,确定该连线的连线条件数据是否与所述业务数据涉及的条件相关信息匹配,若是,将该连线所属分支流确定为目标分支流。
5.根据权利要求1至4任意一项所述的流程处理方法,其特征在于,所述方法还包括:
若不存在与待处理的业务数据匹配的目标分支流,或者,不存在满足分支流触发条件的目标分支流,则直接运行所述基础流,并展示所述基础流;以及,
在切换至所述目标节点在所述目标分支流的分身执行的情况下,展示所述基础流和执行的所述目标分支流。
6.根据权利要求5所述的流程处理方法,其特征在于,所述基础流中的节点信息包括节点的唯一标识、节点详情、节点的分支和连线;所述分支流中的节点信息包括节点的唯一标识、节点详情和连线,所述节点详情中包括节点的引用情况;
所述切换至所述目标节点在所述目标分支流的分身执行,包括:
解析所述目标节点在所述目标分支流中的节点详情,确定该节点详情中是否存在流引用,在存在流引用的情况下,查找到所引用的流中相应节点的节点详情并执行;在未存在流引用的情况下,执行该节点详情;
所述直接运行所述基础流,包括:直接获取所述基础流中节点的节点详情并执行。
7.一种流程处理方法,其特征在于,应用于电子设备,所述方法包括:
响应于流程新增请求,判断是否已存在基础流;
若是,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件;
若否,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
8.根据权利要求7所述的流程处理方法,其特征在于,所述将所述分支流合并至所述基础流,包括:
针对所述分支流中的每个节点,确定其是否为在所述基础流中已存在的目标节点,若为所述目标节点,新增所述目标节点在所述分支流中对应的信息,以及分支流触发条件;若非所述目标节点,将该节点新增至所述基础流;
其中,所述目标节点在所述基础流和分支流中分别对应的信息相互独立,且所述目标节点在所述分支流中对应的信息至少部分继承于所述目标节点在其他流中对应的信息。
9.根据权利要求7所述的流程处理方法,其特征在于,所述将所述分支流合并至所述基础流,包括:
获取所述分支流中开始节点后续的连线,作为待分析连线;
判断在基础流中是否存在与所述待分析连线具有相同开始节点和结束节点的待匹配连线;
若是,确定所述基础流中该开始节点后续的连线数量,在连线数量为一条的情况下,将所述分支流记录在所述基础流中开始节点对应的分支中;在连线数量为两条以上的情况下,在所述基础流中对应连线的分支流触发条件中增加分支;
若否,确定所述待分析连线的结束节点在所述基础流中是否存在,如果存在,在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线;如果不存在,在所述基础流中补充所述结束节点,并在所述基础流中所述开始节点和结束节点之间的分支流触发条件中追加表征所述分支流的连线。
10.根据权利要求7所述的流程处理方法,其特征在于,所述方法还包括:
响应于流程修改请求,若请求修改的为节点信息,判断请求修改的节点是否存在分身;
若是,获取所要修改的节点的分身,通过分身追踪算法,查询所述分身所涉及的目标流;
在针对所述分身的修改涉及所有所述目标流的情况下,对所要修改的节点的分身对应的节点信息进行修改;在针对所述分身的修改涉及部分所述目标流的情况下,复制所述节点的分身对应的节点信息,覆盖未涉及修改的目标流中该节点的节点信息后修改所述节点的分身对应的节点信息。
11.一种流程处理装置,其特征在于,应用于电子设备,所述电子设备中存储有基础流和分支流的节点信息,以及分支流触发条件;所述流程处理装置包括:
信息确认模块,用于确定是否存在与待处理的业务数据匹配的目标分支流;
信息处理模块,用于在存在所述目标分支流的情况下,从基础流的开始节点运行,在运行至所述目标分支流所在目标节点且满足分支流触发条件的情况下,根据所述目标节点的节点信息,切换至所述目标节点在所述目标分支流的分身执行;其中,所述节点信息包括节点在基础流和分支流中分别对应的信息。
12.一种流程处理装置,其特征在于,应用于电子设备,所述流程处理装置包括:
请求接收模块,用于响应于流程新增请求,判断是否已存在基础流;
请求处理模块,用于在存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建分支流,并将所述分支流合并至所述基础流,以使所述分支流和基础流共用的目标节点具备在所述基础流和分支流中分别对应的信息,以及分支流触发条件;在不存在基础流的情况下,基于所述流程新增请求中的各节点信息,创建基础流,并记录各所述节点在所述基础流中对应的信息。
13.一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至10任一项所述的流程处理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,所述计算机程序运行时控制所述计算机可读存储介质所在电子设备执行权利要求1至10任一项所述的流程处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311038268.XA CN117032772A (zh) | 2023-08-16 | 2023-08-16 | 流程处理方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311038268.XA CN117032772A (zh) | 2023-08-16 | 2023-08-16 | 流程处理方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117032772A true CN117032772A (zh) | 2023-11-10 |
Family
ID=88644583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311038268.XA Pending CN117032772A (zh) | 2023-08-16 | 2023-08-16 | 流程处理方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117032772A (zh) |
-
2023
- 2023-08-16 CN CN202311038268.XA patent/CN117032772A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108090177B (zh) | 多轮问答系统的生成方法、设备、介质及多轮问答系统 | |
CN108920135B (zh) | 一种自定义业务生成方法、装置、计算机设备及存储介质 | |
CN112650766A (zh) | 数据库数据操作的方法、系统及服务器 | |
CN111966334B (zh) | 一种业务处理方法、装置及设备 | |
CN109947399A (zh) | 代码结构生成方法、装置、计算机装置及可读存储介质 | |
CN111144132B (zh) | 一种语义识别方法及装置 | |
US11704114B2 (en) | Data structures for managing configuration versions of cloud-based applications | |
CN115688715A (zh) | 一种报表生成方法、装置和计算机可读介质 | |
CN111144837A (zh) | 流程编排的方法、装置、存储介质及电子设备 | |
US20240111521A1 (en) | Code processing method and system, and computer cluster, medium, and program product | |
US20020103558A1 (en) | Method and computer program product for realizing a system specification which is described in a system description language | |
CN114385816A (zh) | 对话流挖掘方法、装置、电子设备及计算机存储介质 | |
CN114020840A (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN117453980A (zh) | 元数据管理、配置页面生成方法、服务器及存储介质 | |
CN111368206A (zh) | 一种业务推荐方法、装置、服务器及存储介质 | |
CN117032772A (zh) | 流程处理方法、装置、设备和介质 | |
CN114449063B (zh) | 一种报文处理方法、装置及设备 | |
CN113961181A (zh) | 代码在线编辑方法、装置、客户端、服务器和存储介质 | |
US6816866B2 (en) | Method of changing a parameter of an operating system of a computer system | |
CN112418796A (zh) | 子流程节点激活方法、装置、电子设备及存储介质 | |
CN114756224A (zh) | 一种活动执行方法及装置 | |
CN114265846A (zh) | 一种数据操作方法、装置、电子设备和存储介质 | |
CN113157262A (zh) | 代码生成方法、装置、代码生成器以及存储介质 | |
CN115687704A (zh) | 信息显示方法、装置、电子设备及计算机可读存储介质 | |
CN109933314B (zh) | 多轮问答系统的生成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |