CN116523457A - 基于业务流程的工作流处理方法、装置、设备及存储介质 - Google Patents
基于业务流程的工作流处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116523457A CN116523457A CN202310365250.4A CN202310365250A CN116523457A CN 116523457 A CN116523457 A CN 116523457A CN 202310365250 A CN202310365250 A CN 202310365250A CN 116523457 A CN116523457 A CN 116523457A
- Authority
- CN
- China
- Prior art keywords
- flow
- workflow
- service
- information
- business
- 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 177
- 230000008569 process Effects 0.000 title claims abstract description 141
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 230000004048 modification Effects 0.000 claims abstract description 68
- 238000012986 modification Methods 0.000 claims abstract description 68
- 238000012545 processing Methods 0.000 claims abstract description 46
- 230000008439 repair process Effects 0.000 claims abstract description 22
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000011161 development Methods 0.000 abstract description 11
- 239000002699 waste material Substances 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请实施例提供了一种基于业务流程的工作流处理方法、装置、设备及存储介质,该方法包括:获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;接收业务申请,其中,所述业务申请携带有目标流程标识;响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。本申请实施例能够降低开发难度、提高业务处理效率和避免造成资源浪费。
Description
技术领域
本申请涉及但不限于业务处理技术领域,尤其涉及一种基于业务流程的工作流处理方法、装置、设备及存储介质。
背景技术
目前,工作流技术的应用领域很广,涉及金融、教育、科技、物流及安全等领域。在各个领域的系统中,通常采用基于BPMN技术的工作流框架处理工作流,基于BPMN技术的工作流框架支持处理复杂的工作流;但是,中小型系统涉及的工作流通常较为简易,若采用基于BPMN技术的工作流框架,框架结构复杂,工作流修改的过程复杂,开发难度较高,另外,基于BPMN技术的工作流框架内置有多个数据库表,每个工作流的调用过程都需要查找数据库,导致业务处理效率低,还会造成资源浪费,因此,亟需一种轻量级的工作流框架。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本申请实施例提供了一种基于业务流程的工作流处理方法、装置、设备及存储介质,能够降低开发难度、提高业务处理效率和避免造成资源浪费。
为实现上述目的,本申请实施例的第一方面提出了一种基于业务流程的工作流处理方法,包括:获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;接收业务申请,其中,所述业务申请携带有目标流程标识;响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。
在一些实施例中,所述业务流程信息包括若干个任务内容和各个所述任务内容的执行顺序;所述根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流,包括:针对任一所述业务流程信息,基于预设的流程创建策略,根据各个所述任务内容生成对应的流程节点,以及根据所述执行顺序建立各个所述流程节点之间的流程关系;针对任一所述业务流程信息,根据各个所述流程节点和所述流程关系,确定对应的业务工作流。
在一些实施例中,所述流程节点包括运行节点、判断节点和信号节点,所述流程创建策略配置在预设的QLExpress规则引擎中;所述基于预设的流程创建策略,根据各个所述任务内容生成对应的流程节点,包括:根据所述QLExpress规则引擎和各个所述任务内容,判断各个所述任务内容的任务类型,其中,所述任务类型包括运行任务型、判断任务型和信号任务型;当所述任务内容的任务类型为运行任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述运行节点;当所述任务内容的任务类型为判断任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述判断节点,并设置所述判断节点的判断条件;当所述任务内容的任务类型为信号任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述信号节点,并设置所述信号节点的触发条件。
在一些实施例中,所述获取多个业务流程信息和流程标识的步骤之后,还包括:针对任一所述业务流程信息,根据各个所述任务内容和所述执行顺序,生成所述业务流程信息的流程字符串;根据所述流程字符串和所述流程标识,生成配置文件,其中,所述配置文件为可扩展标记语言文件,所述配置文件用于生成所述业务工作流。
在一些实施例中,所述热修复框架包括Groovy代码编辑器;所述在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流,包括:基于预设的热修复框架,接收来自所述Groovy代码编辑器的内容修改信息,其中,所述内容修改信息包括流程修改信息;在确定所述内容修改信息为所述流程修改信息的情况下,根据所述流程修改信息更新所述流程关系。
在一些实施例中,所述内容修改信息还包括源码修改信息;所述在确定所述内容修改信息为所述流程修改信息的情况下,根据所述流程修改信息更新所述流程关系的步骤之后,还包括:在确定所述内容修改信息为所述源码修改信息的情况下,根据所述源码修改信息更新所述流程节点,其中,所述流程节点的源码由JAVA编程语言编写。
在一些实施例中,所述当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流,包括:监听预设的SpringBoot框架的应用程序启动事件;当监听到所述应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流。
为实现上述目的,本申请实施例的第二方面提出了一种基于业务流程的工作流处理装置,包括:获取单元,用于获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;链路生成单元,用于当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;链路更新单元,用于在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;接收单元,用于接收业务申请,其中,所述业务申请携带有目标流程标识;处理单元,用于响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。
为实现上述目的,本申请实施例的第三方面提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于业务流程的工作流处理方法。
为实现上述目的,本申请实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的基于业务流程的工作流处理方法。
本申请提出的基于业务流程的工作流处理方法、装置、设备及存储介质,本申请实施例包括:获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;接收业务申请,其中,所述业务申请携带有目标流程标识;响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。根据本申请实施例提供的方案,通过监听应用程序启动事件,通过流程创建策略和业务流程信息,完成初始化操作,生成业务流程信息对应的业务工作流,在运行阶段,基于业务请求,调用由业务申请携带的目标流程标识确定目标业务工作流,由于业务工作流可存储在内存中,无需要查找数据库,实现了业务工作流的快速调用,能够提高业务处理效率,还能够避免造成资源浪费,而且无需配置多个数据库表,框架结构简单,开发难度小,另外,可以通过热修复框架在线修改所述业务工作流,修改过程简单,能够进一步减少开发难度和提高业务处理效率。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1是本申请一个实施例提供的基于业务流程的工作流处理方法的流程图;
图2是本申请另一个实施例提供的一种确定业务工作流的方法的流程图;
图3是本申请另一个实施例提供的一种生成流程节点的方法的流程图;
图4是本申请另一个实施例提供的一种生成业务工作流的方法的流程图;
图5是本申请另一个实施例提供的一种更新流程关系的方法的流程图;
图6是本申请另一个实施例提供的一种生成业务工作流的具体方法的流程图;
图7是本申请另一个实施例提供的业务流程信息的流程图;
图8是本申请另一个实施例提供的业务工作流的示意图;
图9是本申请另一个实施例提供的基于业务流程的工作流处理装置的结构示意图;
图10是本申请另一个实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
在本申请的描述中,若干个的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书、权利要求书或上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
目前,工作流技术的应用领域很广,涉及金融、教育、科技、物流及安全等领域。在各个领域的系统中,通常采用基于BPMN技术的工作流框架处理工作流,基于BPMN技术的工作流框架支持处理复杂的工作流;但是,中小型系统涉及的工作流通常较为简易,若采用基于BPMN技术的工作流框架,框架结构复杂,工作流修改的过程复杂,开发难度较高,另外,基于BPMN技术的工作流框架内置有多个数据库表,每个工作流的调用过程都需要查找数据库,导致业务处理效率低,还会造成资源浪费,因此,亟需一种轻量级的工作流框架。
针对开发难度较高、业务处理效率低和造成资源浪费的问题,本申请提供了一种基于业务流程的工作流处理方法、装置、设备及存储介质,该方法包括:获取多个业务流程信息和流程标识,其中,流程标识和业务流程信息对应;当监听到应用程序启动事件时,根据预设的流程创建策略和各个业务流程信息,生成对应的业务工作流;在接收到内容修改信息情况下,基于预设的热修复框架,根据内容修改信息更新业务工作流;接收业务申请,其中,业务申请携带有目标流程标识;响应于业务申请,根据目标流程标识,在各个业务工作流中确定目标业务工作流,根据目标业务工作流对业务申请进行处理。根据本申请实施例提供的方案,通过监听应用程序启动事件,通过流程创建策略和业务流程信息,完成初始化操作,生成业务流程信息对应的业务工作流,在运行阶段,基于业务请求,调用由业务申请携带的目标流程标识确定目标业务工作流,由于业务工作流可存储在内存中,无需要查找数据库,实现了业务工作流的快速调用,能够提高业务处理效率,还能够避免造成资源浪费,而且无需配置多个数据库表,框架结构简单,开发难度小,另外,可以通过热修复框架在线修改业务工作流,修改过程简单,能够进一步减少开发难度和提高业务处理效率。
本申请实施例提供的基于业务流程的工作流处理方法、装置、设备及存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的基于业务流程的工作流处理方法。
本申请实施例提供的基于业务流程的工作流处理方法,涉及数据处理技术领域。本申请实施例提供的基于业务流程的工作流处理方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现基于业务流程的工作流处理方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关法律法规和标准。此外,当本申请实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的用户相关数据。
下面结合附图,对本申请实施例作进一步阐述。
如图1所示,图1为本申请一个实施例提供的一种基于业务流程的工作流处理方法的流程图,该基于业务流程的工作流处理方法可以由服务器执行,或者也可以由终端执行,或者也可以由服务器配合终端执行,该基于业务流程的工作流处理方法包括但不限于以下步骤S110至步骤S150:
步骤S110,获取多个业务流程信息和流程标识,其中,流程标识和业务流程信息对应;
步骤S120,当监听到应用程序启动事件时,根据预设的流程创建策略和各个业务流程信息,生成对应的业务工作流;
步骤S130,在接收到内容修改信息情况下,基于预设的热修复框架,根据内容修改信息更新业务工作流;
步骤S140,接收业务申请,其中,业务申请携带有目标流程标识;
步骤S150,响应于业务申请,根据目标流程标识,在各个业务工作流中确定目标业务工作流,根据目标业务工作流对业务申请进行处理。
可以理解的是,业务流程信息是指业务处理过程中所涉及的运行内容、步骤和条件,流程标识用于区分各个业务流程信息,流程创建策略是指按照业务理过程中所涉及的运行内容、步骤和条件,生成相应的业务工作流,基于热修复框架,可在网页上在线修改业务工作流;基于此,通过监听应用程序启动事件,通过流程创建策略和业务流程信息,完成初始化操作,生成业务流程信息对应的业务工作流,在运行阶段,基于业务请求,调用由业务申请携带的目标流程标识确定目标业务工作流,由于业务工作流可存储在内存中,无需要查找数据库,实现了业务工作流的快速调用,能够提高业务处理效率,还能够避免造成资源浪费,而且无需配置多个数据库表,框架结构简单,开发难度小,另外,可以通过热修复框架在线修改业务工作流,修改过程简单,能够进一步减少开发难度和提高业务处理效率。
另外,参照图2,在一实施例中,业务流程信息包括若干个任务内容和各个任务内容的执行顺序;图1所示实施例中的步骤S120,包括但不限于有以下步骤:
步骤S210,针对任一业务流程信息,基于预设的流程创建策略,根据各个任务内容生成对应的流程节点,以及根据执行顺序建立各个流程节点之间的流程关系;
步骤S220,针对任一业务流程信息,根据各个流程节点和流程关系,确定对应的业务工作流。
可以理解的是,一个业务工作流相当于一条执行链路,每个任务内容能够确定一个流程节点,生成的执行链路包括多个流程节点,当一个流程节点运行完成后,会根据执行链路中箭头的方向继续执行下一个流程节点,执行链路中箭头的方向由流程关系确定,运行流程节点是指完成相应的任务内容。
另外,参照图3,在一实施例中,流程节点包括运行节点、判断节点和信号节点,流程创建策略配置在预设的QLExpress规则引擎中;图2所示实施例中的步骤S210,包括但不限于有以下步骤:
步骤S310,根据QLExpress规则引擎和各个任务内容,判断各个任务内容的任务类型,其中,任务类型包括运行任务型、判断任务型和信号任务型;
步骤S320,当任务内容的任务类型为运行任务型时,根据QLExpress规则引擎和任务内容,生成运行节点;
步骤S330,当任务内容的任务类型为判断任务型时,根据QLExpress规则引擎和任务内容,生成判断节点,并设置判断节点的判断条件;
步骤S340,当任务内容的任务类型为信号任务型时,根据QLExpress规则引擎和任务内容,生成信号节点,并设置信号节点的触发条件。
可以理解的是,利用QLExpress规则引擎的扩展性,定义了三种流程节点,分别是运行节点、判断节点和信号节点,其中,运行节点用于运行完成任务内容的代码,判断节点用于运行完成任务内容的代码以获取返回值,然后通过返回值确定是否执行下一个流程节点的代码,信号节点用于中断工作流的运行,直至满足触发条件时才执行下一个流程节点的代码,框架结构简单,开发难度小,例如,对于流程标识为“审核流程”的业务流程信息,运行节点的任务内容为“写入审核人员”,信息节点的任务内容为“等待审核结果”,信息节点的作用为“当审核结果被触发时才执行下一个流程节点的代码”,判断节点的任务内容为“判断审核结果”,判断节点的作用为“当返回值为1时,执行通过的流程节点,当返回值为0时,执行不通过的流程节点”。
另外,参照图4,在一实施例中,图1所示实施例中的步骤S110之后,还包括但不限于有以下步骤:
步骤S410,针对任一业务流程信息,根据各个任务内容和执行顺序,生成业务流程信息的流程字符串;
步骤S420,根据流程字符串和流程标识,生成配置文件,其中,配置文件为可扩展标记语言文件,配置文件用于生成业务工作流。
可以理解的是,为了提高业务流程信息的处理效率,将业务流程信息转换为流程字符串,例如,流程字符串为RUN(保存预约信息,写入审核人员,WAIT(等待审核结果,5).THEN(WITCH(判断审核结果).CASE(true,通过).CASE(false,不通过)).TIMEOUT(通过);然后结合流程标识,生成文件格式为可扩展标记语言XML的配置文件,在后续的流程创建策略的处理过程中,能够快速读取配置文件内的业务流程信息。
另外,参照图5,在一实施例中,热修复框架包括Groovy代码编辑器;图1所示实施例中的步骤S130,包括但不限于有以下步骤:
步骤S510,基于预设的热修复框架,接收来自Groovy代码编辑器的内容修改信息,其中,内容修改信息包括流程修改信息;
步骤S520,在确定内容修改信息为流程修改信息的情况下,根据流程修改信息更新流程关系。
可以理解的是,在处理线上的系统时,通过构建热修复框架来自在线更新业务工作流,在网页上添加了Groovy代码编辑器,而且使用CodeMirror作为前端脚本的开发的基本库,实现脚本的高亮显示、语法提醒、换行缩进等功能,需要修改流程关系时,在Groovy代码编辑器上直接编辑流程关系的代码,进而更新流程关系,无需对代码重新打包,实现了代码的热更新,能够提高处理效率。
另外,在一实施例中,内容修改信息还包括源码修改信息;图5所示实施例中的步骤S520之后,还包括但不限于有以下步骤:
在确定内容修改信息为源码修改信息的情况下,根据源码修改信息更新流程节点,其中,流程节点的源码由JAVA编程语言编写。
可以理解的是,需要修改流程节点的代码时,在Groovy代码编辑器上直接编辑流程节点的JAVA代码,进而更新流程节点,无需对代码重新打包,实现了代码的热更新,能够提高处理效率。
另外,参照图6,在一实施例中,图1所示实施例中的步骤S120,包括但不限于有以下步骤:
步骤S610,监听预设的SpringBoot框架的应用程序启动事件;
步骤S620,当监听到应用程序启动事件时,根据预设的流程创建策略和各个业务流程信息,生成对应的业务工作流。
可以理解的是,SpringBoot框架内置有多个事件,通过监听SpringBoot框架内置的ApplicationStartedEvent事件来确定是否对业务工作流进行初始化,即监听应用程序启动事件,应用程序启动事件用于指示应用内组件全部已经初始化,通过流程创建策略进行初始化时,会遍历项目文件下的所有配置文件,配置文件中记录着业务流程信息,进而生成业务工作流。
另外,参照图7和图8,图7是本申请另一个实施例提供的业务流程信息的流程图,图8是本申请另一个实施例提供的业务工作流的示意图;
可以理解的是,业务工作流的结构清晰,工作流框架基于JAVA、Groovy和SpringBoot技术进行开发,工作流框架结构简单,能够提高业务处理效率,还能够避免造成资源浪费,开发难度小。
另外,参考图9,本申请还提供了一种基于业务流程的工作流处理装置900,包括:
获取单元910,用于获取多个业务流程信息和流程标识,其中,流程标识和业务流程信息对应;
链路生成单元920,用于当监听到应用程序启动事件时,根据预设的流程创建策略和各个业务流程信息,生成对应的业务工作流;
链路更新单元930,用于在接收到内容修改信息情况下,基于预设的热修复框架,根据内容修改信息更新业务工作流;
接收单元940,用于接收业务申请,其中,业务申请携带有目标流程标识;
处理单元950,用于响应于业务申请,根据目标流程标识,在各个业务工作流中确定目标业务工作流,根据目标业务工作流对业务申请进行处理。
可以理解的是,该基于业务流程的工作流处理装置900的具体实施方式与上述基于业务流程的工作流处理方法的具体实施例基本相同,在此不再赘述。
另外,参照图10,图10示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器1001,可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器1002,可以采用只读存储器(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(Random Access Memory,RAM)等形式实现。存储器1002可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1002中,并由处理器1001来调用执行本申请实施例的基于业务流程的工作流处理方法,例如,执行以上描述的图1中的方法步骤S110至步骤S150、图2中的方法步骤S210至步骤S220、图3中的方法步骤S310至步骤S340、图4中的方法步骤S410至S420、图5中的方法步骤S510至S520、图6中的方法步骤S610至S620;
输入/输出接口1003,用于实现信息输入及输出;
通信接口1004,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线1005,在设备的各个组件(例如处理器1001、存储器1002、输入/输出接口1003和通信接口1004)之间传输信息;
其中处理器1001、存储器1002、输入/输出接口1003和通信接口1004通过总线1005实现彼此之间在设备内部的通信连接。
本申请实施例还提供了一种存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述基于业务流程的工作流处理方法,例如,执行以上描述的图1中的方法步骤S110至步骤S150、图2中的方法步骤S210至步骤S220、图3中的方法步骤S310至步骤S340、图4中的方法步骤S410至S420、图5中的方法步骤S510至S520、图6中的方法步骤S610至S620。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例提供的基于业务流程的工作流处理方法、装置、设备及存储介质,其通过获取多个业务流程信息和流程标识,其中,流程标识和业务流程信息对应;当监听到应用程序启动事件时,根据预设的流程创建策略和各个业务流程信息,生成对应的业务工作流;在接收到内容修改信息情况下,基于预设的热修复框架,根据内容修改信息更新业务工作流;接收业务申请,其中,业务申请携带有目标流程标识;响应于业务申请,根据目标流程标识,在各个业务工作流中确定目标业务工作流,根据目标业务工作流对业务申请进行处理。基于此,通过监听应用程序启动事件,通过流程创建策略和业务流程信息,完成初始化操作,生成业务流程信息对应的业务工作流,在运行阶段,基于业务请求,调用由业务申请携带的目标流程标识确定目标业务工作流,由于业务工作流可存储在内存中,无需要查找数据库,实现了业务工作流的快速调用,能够提高业务处理效率,还能够避免造成资源浪费,而且无需配置多个数据库表,框架结构简单,开发难度小,另外,可以通过热修复框架在线修改业务工作流,修改过程简单,能够进一步减少开发难度和提高业务处理效率。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1至图6中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。
Claims (10)
1.一种基于业务流程的工作流处理方法,其特征在于,包括:
获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;
当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;
在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;
接收业务申请,其中,所述业务申请携带有目标流程标识;
响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。
2.根据权利要求1所述的方法,其特征在于,所述业务流程信息包括若干个任务内容和各个所述任务内容的执行顺序;所述根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流,包括:
针对任一所述业务流程信息,基于预设的流程创建策略,根据各个所述任务内容生成对应的流程节点,以及根据所述执行顺序建立各个所述流程节点之间的流程关系;
针对任一所述业务流程信息,根据各个所述流程节点和所述流程关系,确定对应的业务工作流。
3.根据权利要求2所述的方法,其特征在于,所述流程节点包括运行节点、判断节点和信号节点,所述流程创建策略配置在预设的QLExpress规则引擎中;所述基于预设的流程创建策略,根据各个所述任务内容生成对应的流程节点,包括:
根据所述QLExpress规则引擎和各个所述任务内容,判断各个所述任务内容的任务类型,其中,所述任务类型包括运行任务型、判断任务型和信号任务型;
当所述任务内容的任务类型为运行任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述运行节点;
当所述任务内容的任务类型为判断任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述判断节点,并设置所述判断节点的判断条件;
当所述任务内容的任务类型为信号任务型时,根据所述QLExpress规则引擎和所述任务内容,生成所述信号节点,并设置所述信号节点的触发条件。
4.根据权利要求2所述的方法,其特征在于,所述获取多个业务流程信息和流程标识的步骤之后,还包括:
针对任一所述业务流程信息,根据各个所述任务内容和所述执行顺序,生成所述业务流程信息的流程字符串;
根据所述流程字符串和所述流程标识,生成配置文件,其中,所述配置文件为可扩展标记语言文件,所述配置文件用于生成所述业务工作流。
5.根据权利要求2所述的方法,其特征在于,所述热修复框架包括Groovy代码编辑器;所述在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流,包括:
基于预设的热修复框架,接收来自所述Groovy代码编辑器的内容修改信息,其中,所述内容修改信息包括流程修改信息;
在确定所述内容修改信息为所述流程修改信息的情况下,根据所述流程修改信息更新所述流程关系。
6.根据权利要求5所述的方法,其特征在于,所述内容修改信息还包括源码修改信息;所述在确定所述内容修改信息为所述流程修改信息的情况下,根据所述流程修改信息更新所述流程关系的步骤之后,还包括:
在确定所述内容修改信息为所述源码修改信息的情况下,根据所述源码修改信息更新所述流程节点,其中,所述流程节点的源码由JAVA编程语言编写。
7.根据权利要求1所述的方法,其特征在于,所述当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流,包括:
监听预设的SpringBoot框架的应用程序启动事件;
当监听到所述应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流。
8.一种基于业务流程的工作流处理装置,其特征在于,包括:
获取单元,用于获取多个业务流程信息和流程标识,其中,所述流程标识和所述业务流程信息对应;
链路生成单元,用于当监听到应用程序启动事件时,根据预设的流程创建策略和各个所述业务流程信息,生成对应的业务工作流;
链路更新单元,用于在接收到内容修改信息情况下,基于预设的热修复框架,根据所述内容修改信息更新所述业务工作流;
接收单元,用于接收业务申请,其中,所述业务申请携带有目标流程标识;
处理单元,用于响应于所述业务申请,根据所述目标流程标识,在各个所述业务工作流中确定目标业务工作流,根据所述目标业务工作流对所述业务申请进行处理。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的基于业务流程的工作流处理方法。
10.一种存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于业务流程的工作流处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310365250.4A CN116523457A (zh) | 2023-04-06 | 2023-04-06 | 基于业务流程的工作流处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310365250.4A CN116523457A (zh) | 2023-04-06 | 2023-04-06 | 基于业务流程的工作流处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116523457A true CN116523457A (zh) | 2023-08-01 |
Family
ID=87407386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310365250.4A Pending CN116523457A (zh) | 2023-04-06 | 2023-04-06 | 基于业务流程的工作流处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116523457A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116739327A (zh) * | 2023-08-11 | 2023-09-12 | 长沙睿展数据科技有限公司 | 一种动态业务流程中的轻量级的流程引擎实现方法 |
CN117252559A (zh) * | 2023-11-20 | 2023-12-19 | 迈为技术(珠海)有限公司 | 业务流程的处理方法、装置、计算机设备、存储介质 |
CN117670263A (zh) * | 2024-02-01 | 2024-03-08 | 北京谷器数据科技有限公司 | 一种审批流程的批注方法、装置、设备及介质 |
-
2023
- 2023-04-06 CN CN202310365250.4A patent/CN116523457A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116739327A (zh) * | 2023-08-11 | 2023-09-12 | 长沙睿展数据科技有限公司 | 一种动态业务流程中的轻量级的流程引擎实现方法 |
CN116739327B (zh) * | 2023-08-11 | 2023-10-27 | 长沙睿展数据科技有限公司 | 一种动态业务流程中的轻量级的流程引擎实现方法 |
CN117252559A (zh) * | 2023-11-20 | 2023-12-19 | 迈为技术(珠海)有限公司 | 业务流程的处理方法、装置、计算机设备、存储介质 |
CN117670263A (zh) * | 2024-02-01 | 2024-03-08 | 北京谷器数据科技有限公司 | 一种审批流程的批注方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116523457A (zh) | 基于业务流程的工作流处理方法、装置、设备及存储介质 | |
CN106156186B (zh) | 一种数据模型管理装置、服务器及数据处理方法 | |
CN107317724B (zh) | 基于云计算技术的数据采集系统及方法 | |
US10642913B2 (en) | Intent and bot based query guidance | |
US10169005B2 (en) | Consolidating and reusing portal information | |
CN110659057B (zh) | 应用程序热更新方法、装置、存储介质及计算机设备 | |
US10175954B2 (en) | Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information | |
CN113157315A (zh) | 一种软件不同版本的差异信息识别方法、装置、设备及介质 | |
CN110362305B (zh) | 一种表单组件状态切换方法及装置 | |
CN113515715B (zh) | 埋点事件编码的生成方法、处理方法及相关设备 | |
CN114527993A (zh) | 应用程序部署方法、装置、设备及介质 | |
CN112667491B (zh) | 虚拟机的功能测试方法及装置 | |
CN113434119A (zh) | 一种基于流程控制的业务处理方法及其装置 | |
CN116263717A (zh) | 基于事件的订单业务处理方法及装置 | |
CN112765188A (zh) | 配置信息处理方法、配置管理系统、电子设备及存储介质 | |
CN108874625B (zh) | 信息处理方法及装置、电子设备、存储介质 | |
CN112862245A (zh) | 数据交换方法、装置以及电子设备 | |
CN112799797A (zh) | 一种任务管理的方法和装置 | |
CN111324472B (zh) | 对待检测信息作垃圾项目判断的方法和装置 | |
WO2024065778A1 (en) | Method, apparatus, device, and medium for building knowledge graph and executing workflow | |
CN110287434B (zh) | 网站处理方法、装置及存储介质 | |
CN113158031B (zh) | 用户资源信息的确定方法及装置、计算机存储介质、终端 | |
CN116755745A (zh) | 代码编辑器的插件更新方法、装置、设备及存储介质 | |
US11868382B1 (en) | Software utility toolbox for client devices | |
CN116382678A (zh) | 一种基于iframe的页面构建方法及装置 |
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 |