CN115456446A - 一种基于配置的业务流处理方法和装置 - Google Patents

一种基于配置的业务流处理方法和装置 Download PDF

Info

Publication number
CN115456446A
CN115456446A CN202211174706.0A CN202211174706A CN115456446A CN 115456446 A CN115456446 A CN 115456446A CN 202211174706 A CN202211174706 A CN 202211174706A CN 115456446 A CN115456446 A CN 115456446A
Authority
CN
China
Prior art keywords
module
service
configuration
service flow
flow
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
Application number
CN202211174706.0A
Other languages
English (en)
Inventor
卢海涛
胡传言
张振宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Lepu Yunzhi Technology Co ltd
Original Assignee
Shanghai Lepu Yunzhi Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Lepu Yunzhi Technology Co ltd filed Critical Shanghai Lepu Yunzhi Technology Co ltd
Priority to CN202211174706.0A priority Critical patent/CN115456446A/zh
Publication of CN115456446A publication Critical patent/CN115456446A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/20ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Mathematical Physics (AREA)
  • Epidemiology (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Development Economics (AREA)
  • Primary Health Care (AREA)
  • Educational Administration (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computational Linguistics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例涉及一种基于配置的业务流处理方法和装置,所述方法包括:接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据;根据第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;根据第一配置文件创建对应的第一业务流转图并保存;根据预设的业务参数池和第一配置文件进行业务流执行处理并在业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;在业务流执行处理过程中根据第一流转模块序列对第一业务流转图进行更新。通过本发明提高了业务流的配置效率,降低了开发、维护成本。

Description

一种基于配置的业务流处理方法和装置
技术领域
本发明涉及数据处理技术领域,特别涉及一种基于配置的业务流处理方法和装置。
背景技术
虽然医院的科室结构近似、科室业务板块近似,但具体到业务流程上各家医院又不尽相同。例如,每家医院都有心脏内科,每个心脏内科都有动态心电检查这个业务,但有的医院动态心电检查的业务流程由戴机采样、数据处理、数据分析和报告生成几个模块构成,有的又是由戴机采样、数据处理、数据分析、诊断/转诊几个模块构成。基于这种现状,为医疗机构提供信息系统的供应商在初期只能针对各家的业务流程进行业务流定制开发,这样产生的系统属于定制系统;该类系统的特点是层级简单:仅由前置的业务发起端+后台的业务服务器构成,其中的业务服务器采用固化流程完成各项业务流的整体运行;该类系统的缺点非常明显:通用性很差,倘若一个供应商同时为多家医疗机构服务,就会产生大量的冗余开发工作量,且系统的整体版本维护难度也较大。
为改善这种情况,信息系统供应商在后期提出对医院业务流进行模块化提炼,融合各家的特点将各个业务流拆分成多个基础模块,诸如将动态心电检查业务流分拆成:戴机采样、数据处理、数据分析、报告生成、诊断/转诊等模块,再基于各家的实际需求进行模块整合。由此产生的改良信息系统由前置的业务发起端+中间的机构服务器+后台的模块服务器构成。改良后的模块服务器基于微服务架构向外提供对应的服务接口;新增的机构服务器基于各家的业务流逻辑定制开发固化的业务流组件,并由业务流组件调用不同的服务接口来完成模块整合。这种系统结构提高了模块调用灵活度、减少了基础模块的冗余开发,但还是需要为各家定制开发固化的业务流组件,由此产生的开发工作量和版本维护工作量也不小。
发明内容
本发明的目的,就是针对现有技术的缺陷,提供一种基于配置的业务流处理方法、装置、电子设备及计算机可读存储介质,通过可编辑的配置文件建立业务流逻辑,通过对配置文件进行解析完成模块调用和业务流运行,通过业务参数池完成模块间的参数传递。通过本发明,对业务流的定制基于简单的文件编辑方式即可实现,无需再为业务流组件的开发和版本维护消耗工作量。
为实现上述目的,本发明实施例第一方面提供了一种基于配置的业务流处理方法,所述方法包括:
接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据;
根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;
根据所述第一配置文件创建对应的第一业务流转图并保存;
根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;
在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新。
优选的,所述业务流配置数据库包括多个第一业务流配置记录;所述第一业务流配置记录包括第一业务URL数据和所述第一配置文件;
所述第一配置文件包括多个第一配置模块;
所述第一配置模块包括第一模块名称、第一模块类型和第一模块索引;所述第一模块类型包括流程类型和网关类型;
所述第一模块索引为预设的起始模块索引时,对应的所述第一配置模块为所述第一配置文件的起始配置模块,所述起始配置模块的数量唯一;所述第一模块索引为预设的结束模块索引时,对应的所述第一配置模块为所述第一配置文件的结束配置模块,所述结束配置模块的数量唯一;所述起始配置模块和所述结束配置模块的所述第一模块类型均为流程类型;
所述第一模块类型为流程类型时,所述第一配置模块还包括下一模块索引、第一服务URL数据、第一接口URL数据和第一输入参数列表;所述第一输入参数列表包括多个第一输入参数标识;所述结束配置模块的所述下一模块索引、所述第一服务URL数据、所述第一接口URL数据和所述第一输入参数列表全为空;
所述第一模块类型为网关类型时,所述第一配置模块还包括多个第一转发分支且各个所述第一转发分支互斥;所述第一转发分支包括第一逻辑表达式和下一模块索引;所述第一逻辑表达式包括多个第一表达式变量标识;
所述业务参数池包括多个第一业务参数记录;所述第一业务参数记录包括第一业务参数标识和第一业务参数数据。
优选的,所述方法还包括:
提供文本编辑工具对所述业务流配置数据库的所述第一业务流配置记录进行内容编辑。
优选的,所述根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件,具体包括:
根据所述第一申请业务URL数据查询所述业务流配置数据库,将所述业务流配置数据库中所述第一业务URL数据与所述第一申请业务URL数据匹配的所述第一业务流配置记录的所述第一配置文件作为查询结果输出。
优选的,所述根据所述第一配置文件创建对应的第一业务流转图并保存,具体包括:
根据所述第一配置文件中所述第一配置模块的顺序连接和网关转发关系进行业务流转图绘制处理生成对应的所述第一业务流转图并保存;
其中,所述第一业务流转图包括多个第一模块图形;所述第一模块图形与所述第一配置模块一一对应;所述第一模块图形对应的所述第一配置模块为所述起始配置模块或所述结束配置模块时,所述第一模块图形的图形形状为预设的第一形状;所述第一模块图形对应的所述第一配置模块既不为所述起始配置模块也不为所述结束配置模块且对应的所述第一模块类型为流程类型时,所述第一模块图形的图形形状为预设的第二形状;所述第一模块图形对应的所述第一配置模块的所述第一模块类型为网关类型时,所述第一模块图形的图形形状为预设的第三形状;所述第一模块图形的图形边框颜色初始化为预设的第一颜色;所述第一模块图形内的显示文本初始化为对应的所述第一配置模块的所述第一模块名称;相互连接的两个所述第一模块图形中,上一个所述第一模块图形对应的所述第一配置模块的一个或多个所述下一模块索引中有且只有一个所述下一模块索引,为下一个所述第一模块图形对应的所述第一配置模块的所述第一模块索引。
优选的,所述根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列,具体包括:
步骤61,初始化所述第一流转模块序列为空;并将所述第一配置文件的所述起始配置模块作为当前配置模块;
步骤62,将所述当前配置模块的所述第一模块类型作为对应的当前模块类型;并对所述当前模块类型进行识别,若所述当前模块类型为流程类型则转至步骤63,若所述当前模块类型为网关类型则转至步骤67;
步骤63,对所述当前配置模块的所述第一输入参数列表的各个所述第一输入参数标识进行遍历;遍历时,将当前遍历的所述第一输入参数标识作为对应的当前输入参数标识;并从所述业务参数池中获取所述第一业务参数标识与所述当前输入参数标识匹配的所述第一业务参数记录的所述第一业务参数数据作为对应的第一参数数据;并由所述当前输入参数标识和所述第一参数数据组成对应的第一参数键值对;遍历结束时,将得到的多个所述第一参数键值对组成对应的第一参数键值对集合;
步骤64,按预设的服务接口请求报文格式,根据所述当前配置模块的所述第一服务URL数据、所述第一接口URL数据和所述第一参数键值对集合进行请求报文封装生成对应的第一请求报文向所述第一服务URL数据对应的模块服务器分发;并接收所述模块服务器回发的第一回执报文;并从所述第一回执报文中提取出第一结果键值对集合;所述第一结果键值对集合包括多个第一结果键值对;所述第一结果键值对包括第一结果参数标识和第一结果参数数据;
步骤65,对所述第一结果键值对集合的各个所述第一结果键值对进行遍历;遍历时,将当前遍历的所述第一结果键值对作为对应的当前结果键值对;并从所述当前结果键值对中提取出所述第一结果参数标识作为对应的所述第一业务参数标识,提取出所述第一结果参数数据作为对应的所述第一业务参数数据,并由得到的所述第一业务参数标识和所述第一业务参数数据组成对应的当前业务参数记录;并将所述当前业务参数记录添加到所述业务参数池中;
步骤66,将所述当前配置模块的所述下一模块索引作为当前下一模块索引并转至步骤68;
步骤67,对所述当前配置模块的各个所述第一逻辑表达式进行遍历;轮询时,将当前遍历的所述第一逻辑表达式作为对应的当前逻辑表达式,并将所述当前逻辑表达式对应的所述第一转发分支作为对应的当前转发分支;并从所述业务参数池中获取与所述当前逻辑表达式的各个所述第一表达式变量标识匹配的所述第一业务参数标识对应的所述第一业务参数记录的所述第一业务参数数据作为对应的第一表达式变量数据;并将得到的所有所述第一表达式变量数据代入所述当前逻辑表达式进行逻辑运算生成对应的第一逻辑运算结果;若所述第一逻辑运算结果为真则停止遍历,并将所述当前转发分支的所述下一模块索引作为所述当前下一模块索引并转至步骤68;若所述第一逻辑运算结果为假则继续对下一个所述第一逻辑表达式进行遍历直到最后一个所述第一逻辑表达式为止;
步骤68,将所述当前配置模块的所述第一模块名称作为对应的第一流转模块名称向所述第一流转模块序列添加;并将所述第一模块索引为所述当前下一模块索引的所述第一配置模块作为新的所述当前配置模块;并对所述当前配置模块是否为所述结束配置模块进行识别,若是则结束所述业务流执行处理,若否则返回步骤62。
优选的,所述在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新,具体包括:
在所述业务流执行处理过程中,按预设的数据获取频率对最新的所述第一流转模块序列进行获取;并将所述第一业务流转图上与所述第一流转模块序列的各个所述第一流转模块名称对应的所述第一模块图形的图形边框颜色改为预设的第二颜色;并对修改后的所述第一业务流转图进行保存。
本发明实施例第二方面提供了一种实现上述第一方面所述的方法的装置,所述装置包括:业务申请接收模块、配置文件获取模块、业务流转图处理模块和业务流处理模块;
所述业务申请接收模块用于接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据;
所述配置文件获取模块用于根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;
所述业务流转图处理模块用于根据所述第一配置文件创建对应的第一业务流转图并保存;
所述业务流处理模块用于根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;
所述业务流转图处理模块还用于在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新。
本发明实施例第三方面提供了一种电子设备,包括:存储器、处理器和收发器;
所述处理器用于与所述存储器耦合,读取并执行所述存储器中的指令,以实现上述第一方面所述的方法步骤;
所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
本发明实施例第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行上述第一方面所述的方法的指令。
本发明实施例提供了一种基于配置的业务流处理方法、装置、电子设备及计算机可读存储介质,通过可编辑的配置文件建立业务流逻辑,通过对配置文件进行解析完成模块调用和业务流运行,通过业务参数池完成模块间的参数传递。通过本发明,对业务流的定制基于简单的文件编辑方式即可实现,提高了业务流的配置效率;另外,也无需再为业务流组件的开发和版本维护消耗工作量,降低了开发、维护成本。
附图说明
图1为本发明实施例一提供的一种基于配置的业务流处理方法示意图;
图2为本发明实施例二提供的一种基于配置的业务流处理装置的模块结构图;
图3为本发明实施例三提供的一种电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
医疗机构的信息系统由前置的业务发起端、中间的机构服务器和后台的模块服务器组成;机构服务器通过本发明实施例一提供的一种基于配置的业务流处理方法,通过可编辑的配置文件来建立业务流逻辑,并通过解析配置文件来完成模块的调用和业务流的运行,并通过业务参数池解决模块流转时的参数传递问题;基于本发明实施例一提供的方法,既可以提高面向客户的业务流配置效率,又可以降低机构服务器的开发、维护成本;图1为本发明实施例一提供的一种基于配置的业务流处理方法示意图,如图1所示,本方法主要包括如下步骤:
步骤1,接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据。
这里,第一业务申请报文即是由医院工作人员通过前置的业务发起端发送的业务流激活报文,该报文默认采用http或https的超文本协议报文格式;在该报文中带有与当前申请启动的业务流相关的激活接口也就是第一申请业务URL数据。
步骤2,根据第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;
其中,业务流配置数据库包括多个第一业务流配置记录;第一业务流配置记录包括第一业务URL数据和第一配置文件;
具体包括:根据第一申请业务URL数据查询业务流配置数据库,将业务流配置数据库中第一业务URL数据与第一申请业务URL数据匹配的第一业务流配置记录的第一配置文件作为查询结果输出。
这里,业务流配置数据库为本地数据库、远程数据库服务器或微服务架构里的数据库服务端;业务流配置数据库用于存储各家机构的业务流逻辑配置文件;每个第一业务流配置记录对应一个业务流逻辑配置文件也就是第一配置文件,该配置文件有一个对应的业务激活接口也就是第一业务URL数据;通过第一申请业务URL数据查询业务流配置数据库就能得到与当前申请启动的业务流相关的业务流逻辑配置文件也就是第一配置文件。
需要说明的是,本发明实施例还提供文本编辑工具对业务流配置数据库的第一业务流配置记录进行内容编辑。在对第一业务流配置记录进行内容编辑时,该文本编辑工具支持对第一业务URL数据和第一配置文件的内容进行编辑。
本发明实施例的第一配置文件是一个文本文件,其文件格式有多种,诸如txt、xml、json等,可根据工程实施要求进行定制,在此不做进一步赘述。下文主要针本发明实施例对第一配置文件自定义的配置规则和元素结构进行说明。
第一配置文件包括多个第一配置模块;第一配置模块包括第一模块名称、第一模块类型和第一模块索引;第一模块类型包括流程类型和网关类型;第一模块索引为预设的起始模块索引时,对应的第一配置模块为第一配置文件的起始配置模块,起始配置模块的数量唯一;第一模块索引为预设的结束模块索引时,对应的第一配置模块为第一配置文件的结束配置模块,结束配置模块的数量唯一;起始配置模块和结束配置模块的第一模块类型均为流程类型;预设的起始模块索引默认为1,预设的结束模块索引默认为0;
第一模块类型为流程类型时,第一配置模块还包括下一模块索引、第一服务URL数据、第一接口URL数据和第一输入参数列表;第一输入参数列表包括多个第一输入参数标识;结束配置模块的下一模块索引、第一服务URL数据、第一接口URL数据和第一输入参数列表全为空;
第一模块类型为网关类型时,第一配置模块还包括多个第一转发分支且各个第一转发分支互斥;第一转发分支包括第一逻辑表达式和下一模块索引;第一逻辑表达式包括多个第一表达式变量标识。
此处,第一配置模块为第一配置文件的基础元素;第一配置模块基于第一模块类型分为两类模块元素:流程类型模块元素和网关类型模块元素;本发明实施例的第一配置文件不但支持顺序模块执行的单向业务流逻辑,还支持带有条件判断的多分支业务流逻辑;流程类型模块元素即第一模块类型为流程类型的第一配置模块常规用于对应一个基础业务模块,例如动态心电检查业务流的戴机采样、数据处理、数据分析、报告生成、诊断/转诊等模块,通过解析该类模块的配置信息可实现对模块服务器的服务接口调用;网关类型模块元素即第一模块类型为网关类型的第一配置模块对应一个条件判断模块,通过解析该类模块的条件配置信息可实现业务流分支的动态选择;
这两类模块元素的通用属性包括第一模块名称、第一模块类型和第一模块索引,其中,第一模块名称、第一模块索引是对应模块的名称与索引信息,第一模块类型则是对应模块的类型信息;
这两类模块元素还有各自的个性属性:
对于流程类型模块元素而言,其个性属性包括下一模块索引、第一服务URL数据、第一接口URL数据和第一输入参数列表;其中,下一模块索引为当前模块执行完成后要跳转的下一个模块的索引信息;第一服务URL数据、第一接口URL数据分别为当前配置模块对应的模块服务器上发布的URL格式的服务套接字信息和接口套接字信息;第一输入参数列表则是第一服务URL数据+第一接口URL数据组成的服务接口套接字所需携带的变量序列;每个第一输入参数标识实际就是一个变量标识,后续通过业务参数池来获取各个变量的具体取值;
对于网关类型模块元素而言,其个性属性由多个互斥的条件判断分支即第一转发分支构成;第一转发分支的第一逻辑表达式用来处理当前分支的条件判断,下一模块索引用来处理当前分支的跳转,本发明实施例规定在第一逻辑表达式为真时由对应的下一模块索引来确定要跳转的下一个模块的索引信息;第一逻辑表达式中包括多个变量、常量和逻辑运算符,其中各个变量都有一个唯一的变量标识符即第一表达式变量标识,通过业务参数池可以获得各个变量的具体取值;在处理当前分支的条件判断时,先通过业务参数池获取各个变量的取值,再将变量取值代入第一逻辑表达式中进行逻辑运算就可得到当次的逻辑运算结果(真或假),若为真则直接转至下一模块索引对应的第一配置模块,若为假则对下一个第一转发分支进行判断;
另外,为方便后续能基于第一配置文件构建监督业务流执行进度的业务流转图,本发明实施示例还定义了两个特殊的流程类型模块元素:起始配置模块和结束配置模块;起始配置模块对应业务流程的起始节点,常规情况下都是类似初始数据获取这样的处理模块,起始配置模块的第一模块索引始终与预设的起始模块索引保持一致,起始配置模块的个性化属性不为空;结束配置模块对应业务流程的结束节点,常规情况下这个结束节点没有具体的业务流模块调用任务,结束配置模块的第一模块索引始终与预设的结束模块索引保持一致,结束配置模块的个性化属性可全为空。
步骤3,根据第一配置文件创建对应的第一业务流转图并保存;
具体包括:根据第一配置文件中第一配置模块的顺序连接和网关转发关系进行业务流转图绘制处理生成对应的第一业务流转图并保存;
其中,第一业务流转图包括多个第一模块图形;第一模块图形与第一配置模块一一对应;第一模块图形对应的第一配置模块为起始配置模块或结束配置模块时,第一模块图形的图形形状为预设的第一形状;第一模块图形对应的第一配置模块既不为起始配置模块也不为结束配置模块且对应的第一模块类型为流程类型时,第一模块图形的图形形状为预设的第二形状;第一模块图形对应的第一配置模块的第一模块类型为网关类型时,第一模块图形的图形形状为预设的第三形状;第一模块图形的图形边框颜色初始化为预设的第一颜色;第一模块图形内的显示文本初始化为对应的第一配置模块的第一模块名称;相互连接的两个第一模块图形中,上一个第一模块图形对应的第一配置模块的一个或多个下一模块索引中有且只有一个下一模块索引,为下一个第一模块图形对应的第一配置模块的第一模块索引。
这里,本发明实施例根据第一配置文件中起始配置模块和各个中间的第一配置模块的下一模块索引识别出模块间的顺序连接和多头跳转的连接关系;并基于起始、结束配置模块以及各个中间的第一配置模块的模块类型确定出各模块的图形形状:起始配置模块或结束配置模块对应的第一模块图形的图形形状为预设的第一形状(默认为圆形,也可别设为其他形状),第一模块类型为流程类型的第一配置模块(起始配置模块和结束配置模块除外)对应的第一模块图形的图形形状为预设的第二形状(默认为长方形,也可别设为其他形状),第一模块类型为网关类型的第一配置模块对应的第一模块图形的图形形状为预设的第三形状(默认为菱形,也可别设为其他形状);再使用图形绘制组件或流程图绘制组件根据模块间的顺序连接和多头跳转的连接关系以及各第一模块图形的图形形状进行模块连接图绘制得到第一业务流转图;再在第一业务流转图上将各第一模块图形的图形边框颜色设为预设的第一颜色(默认为灰色或黑色,也可别设为其他颜色),再将各第一模块图形内的文本设为对应的第一配置模块的第一模块名称,需要说明的是,对于起始、结束配置模块对应的第一模块图形而言其图形内的文本可不做设置。
步骤4,根据预设的业务参数池和第一配置文件进行业务流执行处理并在业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;
具体包括:步骤41,初始化第一流转模块序列为空;并将第一配置文件的起始配置模块作为当前配置模块;
这里,本发明实施例默认从起始配置模块开始,对起始配置模块及后续各个模块进行逐一执行;
步骤42,将当前配置模块的第一模块类型作为对应的当前模块类型;并对当前模块类型进行识别,若当前模块类型为流程类型则转至步骤43,若当前模块类型为网关类型则转至步骤47;
这里,当前配置模块的第一模块类型若为流程类型说明当前模块对应一个具体的基础模块,由后续步骤43-46对其进行解析;若为网关类型说明当前模块是一个条件判断模块,由后续步骤47进行条件判断处理;
步骤43,对当前配置模块的第一输入参数列表的各个第一输入参数标识进行遍历;遍历时,将当前遍历的第一输入参数标识作为对应的当前输入参数标识;并从业务参数池中获取第一业务参数标识与当前输入参数标识匹配的第一业务参数记录的第一业务参数数据作为对应的第一参数数据;并由当前输入参数标识和第一参数数据组成对应的第一参数键值对;遍历结束时,将得到的多个第一参数键值对组成对应的第一参数键值对集合;
其中,业务参数池包括多个第一业务参数记录;第一业务参数记录包括第一业务参数标识和第一业务参数数据;
这里,本发明实施例基于异步传输的消息队列(Message queue,MQ)机制实现业务参数池,业务参数池为本地消息队列、远程消息服务器或微服务架构里的消息服务端;本发明实施例基于消息订阅方式从业务参数池获取第一业务参数记录,并基于消息发布方式向业务参数池添加第一业务参数记录;本发明实施例业务参数池还会在每个第一业务参数记录分配一个参数状态,每次添加/发布一个第一业务参数记录时会将其对应的参数状态设为发布状态,每次获取/订阅一个第一业务参数记录时会将其对应的参数状态设为已订阅状态;这里每个第一输入参数标识对应一个发布在业务参数池中的第一业务参数标识;
步骤44,按预设的服务接口请求报文格式,根据当前配置模块的第一服务URL数据、第一接口URL数据和第一参数键值对集合进行请求报文封装生成对应的第一请求报文向第一服务URL数据对应的模块服务器分发;并接收模块服务器回发的第一回执报文;并从第一回执报文中提取出第一结果键值对集合;第一结果键值对集合包括多个第一结果键值对;第一结果键值对包括第一结果参数标识和第一结果参数数据;
这里,服务接口请求报文格式默认为http或https格式,具体的报文结构和报文参数设置可基于工程实施要求进行自定义;向模块服务器分发第一请求报文,实际就是调用模块服务器以第一参数键值对集合为输入执行一个与第一服务URL数据+第一接口URL数据匹配的本地应用或服务,并将执行结果的输出变量按约定的变量名(第一结果参数标识)+变量值(第一结果参数数据)的键值对格式组成第一结果键值对集合返回;
步骤45,对第一结果键值对集合的各个第一结果键值对进行遍历;遍历时,将当前遍历的第一结果键值对作为对应的当前结果键值对;并从当前结果键值对中提取出第一结果参数标识作为对应的第一业务参数标识,提取出第一结果参数数据作为对应的第一业务参数数据,并由得到的第一业务参数标识和第一业务参数数据组成对应的当前业务参数记录;并将当前业务参数记录添加到业务参数池中;
这里,本发明实施例基于消息发布方式向业务参数池添加业务参数记录;并会为新增的业务参数记录分配一个参数状态,并将其设为发布状态;
步骤46,将当前配置模块的下一模块索引作为当前下一模块索引并转至步骤48;
步骤47,对当前配置模块的各个第一逻辑表达式进行遍历;轮询时,将当前遍历的第一逻辑表达式作为对应的当前逻辑表达式,并将当前逻辑表达式对应的第一转发分支作为对应的当前转发分支;并从业务参数池中获取与当前逻辑表达式的各个第一表达式变量标识匹配的第一业务参数标识对应的第一业务参数记录的第一业务参数数据作为对应的第一表达式变量数据;并将得到的所有第一表达式变量数据代入当前逻辑表达式进行逻辑运算生成对应的第一逻辑运算结果;若第一逻辑运算结果为真则停止遍历,并将当前转发分支的下一模块索引作为当前下一模块索引并转至步骤48;若第一逻辑运算结果为假则继续对下一个第一逻辑表达式进行遍历直到最后一个第一逻辑表达式为止;
这里,每个第一表达式变量标识对应一个发布在业务参数池中的第一业务参数标识;在第一逻辑表达式中描述第一表达式变量标识的方式有多种,例如以特殊字符“%…%”、“@…@”、“/…/”等作为修饰符进行描述;
步骤48,将当前配置模块的第一模块名称作为对应的第一流转模块名称向第一流转模块序列添加;并将第一模块索引为当前下一模块索引的第一配置模块作为新的当前配置模块;并对当前配置模块是否为结束配置模块进行识别,若是则结束业务流执行处理转至步骤5,若否则返回步骤42;
这里,转至当前步骤时说明当前配置模块的模块调用或条件判断已经执行完毕,对应的向反映业务流模块流转状态的第一流转模块序列中增加一个已执行完毕的配置模块名称。
步骤5,在业务流执行处理过程中根据第一流转模块序列对第一业务流转图进行更新;
具体包括:在业务流执行处理过程中,按预设的数据获取频率对最新的第一流转模块序列进行获取;并将第一业务流转图上与第一流转模块序列的各个第一流转模块名称对应的第一模块图形的图形边框颜色改为预设的第二颜色;并对修改后的第一业务流转图进行保存。
这里,数据获取频率为一个预先设置的频率参数,在每次获得最新的第一流转模块序列之后,都基于当前第一流转模块序列的各个第一流转模块名称对第一业务流转图进行状态更新,更新时将各个第一流转模块名称对应的第一模块图形的图形边框颜色改为预设的第二颜色(默认为绿色)。
这里,为更好地说明本发明实施例的配置文件解析操作,给出以下业务流A及其对应的一种文本格式的配置文件为示例进行说明;
设业务流A由2个基础模块分别为:模块a、b;
模块a的服务URL为“www.serviceA.com/”,接口URL为“API/a/”,输入参数为p1、输出参数为p2、p3;模块a对应的模块服务器URL为服务URL“www.serviceA.com/”;
模块b的服务URL为“www.serviceB.com/”,接口URL为“API/b/”,输入参数为p3、输出参数为p4;模块b对应的模块服务器URL为服务URL“www.serviceB.com/”;
业务流A的业务逻辑为,先以参数p1为输入、调用模块a的服务接口得到对应的输出参数p2、p3;若p2=1,则以参数p3为输入、调用模块b的服务接口得到对应的输出参数p4,并在得到p4后结束业务流A;若p2=2,则结束业务流A;
业务流A的配置文件B采用一种自定义的文本格式,其元素结构满足本发明实施例对第一配置文件的自定义要求;配置文件B的内容如下所示:
Figure BDA0003864771710000161
Figure BDA0003864771710000171
另外,在业务参数池中存在一个第一业务参数标识为p1、第一业务参数数据为100的第一业务参数记录(p1,100);
对上述配置文件B的解析过程如下:
执行步骤41,由前文可知起始配置模块的第一模块索引默认为1,所以当前配置模块为name=‘模块a’的模块元素block;初始化第一流转模块序列为空;
执行步骤42,当前配置模块的第一模块类型为1为流程类型,转至步骤43-46;
执行步骤43-46,对第一输入参数列表{‘p1’}进行遍历,并从业务参数池中获得第一业务参数标识=‘p1’的第一业务参数记录的第一业务参数数据作为对应的第一参数数据为100,从而得到一个对应的第一参数键值对KV1:‘p1’=100;第一参数键值对集合为{KV1};
当前配置模块的第一服务URL数据=‘www.serviceA.com/’,第一接口URL数据=‘API/a/’,第一参数键值对集合为{KV1},第一请求报文为:‘www.serviceA.com/API/a/?p1=100’;设接收到的第一回执报文中的第一结果键值对集合为{KV2,KV3},KV2为p2=1、KV3为p3=30,那么就可以得到返回的两个变量p2、p3的值(1、30);
对第一结果键值对集合{KV2,KV3}进行遍历,向业务参数池添加两个第一业务参数记录分别为(p2,1)、(p3,30);
将当前配置模块的下一模块索引=2作为当前下一模块索引并转至步骤48;
执行步骤48,将当前配置模块的第一模块名称作为对应的第一流转模块名称向第一流转模块序列添加,得到的第一流转模块序列为{‘模块a’},新的当前配置模块为ID=2的name=‘条件模块1’的模块元素block;并返回步骤42;
执行步骤42,当前配置模块的第一模块类型为2为网关类型,转至步骤47;
执行步骤47,当前配置模块有2个第一逻辑表达:(%p2%=1)==1、(%p2%=2)==1,对这2个第一逻辑表达进行遍历;当前逻辑表达式为(%p2%=1)==1时,第一表达式变量标识为p2,第一表达式变量数据为1,也就是说当前逻辑表达式为真,此时停止遍历、得到当前下一模块索引=3并转至步骤48;
执行步骤48,将当前配置模块的第一模块名称作为对应的第一流转模块名称向第一流转模块序列添加,得到的第一流转模块序列为{‘模块a’,‘条件模块1’},新的当前配置模块为ID=3的name=‘模块b’的模块元素block;并返回步骤42;
执行步骤42,当前配置模块的第一模块类型为1为流程类型,转至步骤43-46;
执行步骤43-46,对第一输入参数列表{‘p3’}进行遍历,并从业务参数池中获得第一业务参数标识=‘p3’的第一业务参数记录的第一业务参数数据作为对应的第一参数数据为30,从而得到一个对应的第一参数键值对KV4:‘p3’=30;第一参数键值对集合为{KV4};
当前配置模块的第一服务URL数据=‘www.serviceB.com/’,第一接口URL数据=‘API/b/’,第一参数键值对集合为{KV1},第一请求报文为:‘www.serviceB.com/API/b/?p3=30’;设接收到的第一回执报文中的第一结果键值对集合为{KV5},KV5为p4=90,那么就可以得到返回的1个变量p4的值为90;
对第一结果键值对集合为{KV5}进行遍历,向业务参数池添加一个第一业务参数记录为(p4,90);
将当前配置模块的下一模块索引=0作为当前下一模块索引并转至步骤48;
执行步骤48,将当前配置模块的第一模块名称作为对应的第一流转模块名称向第一流转模块序列添加,得到的第一流转模块序列为{‘模块a’,‘条件模块1’,‘模块b’},新的当前配置模块为ID=0为结束配置模块则结束业务流执行处理。
由上述示例的步骤分解可以看出,本发明实施例通过解析配置文件来完成基础模块调用和业务流运行的处理方式非常灵活,基于异步通信机制的业务参数池也不会因为通信阻塞产生数据丢失问题,不但支持单向顺序业务流、还支持基于条件判断的多头分支业务流。
需要说明的是,本发明实施例的业务参数池为提高消息队列的访问效率,会定期将队列里参数状态为已订阅状态的第一业务参数记录作为过期记录删除。
图2为本发明实施例二提供的一种基于配置的业务流处理装置的模块结构图,该装置可以为实现本发明实施例方法的终端设备或者服务器,也可以为与上述终端设备或者服务器连接的实现本发明实施例方法的装置,例如该装置可以是上述终端设备或者服务器的装置或芯片系统。如图2所示,基于配置的业务流处理装置包括:业务申请接收模块201、配置文件获取模块202、业务流转图处理模块203和业务流处理模块204。
业务申请接收模块201用于接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据。
配置文件获取模块202用于根据第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件。
业务流转图处理模块203用于根据第一配置文件创建对应的第一业务流转图并保存。
业务流处理模块204用于根据预设的业务参数池和第一配置文件进行业务流执行处理并在业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列。
业务流转图处理模块203还用于在业务流执行处理过程中根据第一流转模块序列对第一业务流转图进行更新。
本发明实施例提供的一种基于配置的业务流处理装置,可以执行上述方法实施例中的方法步骤,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,数据接收模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所描述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个数字信号处理器(Digital Signal Processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(System-on-a-chip,SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本发明实施例所描述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。上述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,上述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线路(Digital Subscriber Line,DSL))或无线(例如红外、无线、蓝牙、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。上述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。上述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
图3为本发明实施例三提供的一种电子设备的结构示意图。该电子设备可以为前述的终端设备或者服务器,也可以为与前述终端设备或者服务器连接的实现本发明实施例方法的终端设备或服务器。如图3所示,该电子设备可以包括:处理器301(例如CPU)、存储器302、收发器303;收发器303耦合至处理器301,处理器301控制收发器303的收发动作。存储器302中可以存储各种指令,以用于完成各种处理功能以及实现本发明上述实施例中提供的方法和处理过程。优选的,本发明实施例涉及的电子设备还包括:电源304、系统总线305以及通信端口306。系统总线305用于实现元件之间的通信连接。上述通信端口306用于电子设备与其他外设之间进行连接通信。
在图3中提到的系统总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(Random Access Memory,RAM),也可能还包括非易失性存储器(Non-Volatile Memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器CPU、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
需要说明的是,本发明实施例还提供一种计算机可读存储介质,该存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中提供的方法和处理过程。
本发明实施例还提供一种运行指令的芯片,该芯片用于执行上述实施例中提供的方法和处理过程。
本发明实施例提供了一种基于配置的业务流处理方法、装置、电子设备及计算机可读存储介质,通过可编辑的配置文件建立业务流逻辑,通过对配置文件进行解析完成模块调用和业务流运行,通过业务参数池完成模块间的参数传递。通过本发明,对业务流的定制基于简单的文件编辑方式即可实现,提高了业务流的配置效率;另外,也无需再为业务流组件的开发和版本维护消耗工作量,降低了开发、维护成本。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于配置的业务流处理方法,其特征在于,所述方法包括:
接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据;
根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;
根据所述第一配置文件创建对应的第一业务流转图并保存;
根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;
在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新。
2.根据权利要求1所述的基于配置的业务流处理方法,其特征在于,
所述业务流配置数据库包括多个第一业务流配置记录;所述第一业务流配置记录包括第一业务URL数据和所述第一配置文件;
所述第一配置文件包括多个第一配置模块;
所述第一配置模块包括第一模块名称、第一模块类型和第一模块索引;所述第一模块类型包括流程类型和网关类型;
所述第一模块索引为预设的起始模块索引时,对应的所述第一配置模块为所述第一配置文件的起始配置模块,所述起始配置模块的数量唯一;所述第一模块索引为预设的结束模块索引时,对应的所述第一配置模块为所述第一配置文件的结束配置模块,所述结束配置模块的数量唯一;所述起始配置模块和所述结束配置模块的所述第一模块类型均为流程类型;
所述第一模块类型为流程类型时,所述第一配置模块还包括下一模块索引、第一服务URL数据、第一接口URL数据和第一输入参数列表;所述第一输入参数列表包括多个第一输入参数标识;所述结束配置模块的所述下一模块索引、所述第一服务URL数据、所述第一接口URL数据和所述第一输入参数列表全为空;
所述第一模块类型为网关类型时,所述第一配置模块还包括多个第一转发分支且各个所述第一转发分支互斥;所述第一转发分支包括第一逻辑表达式和下一模块索引;所述第一逻辑表达式包括多个第一表达式变量标识;
所述业务参数池包括多个第一业务参数记录;所述第一业务参数记录包括第一业务参数标识和第一业务参数数据。
3.根据权利要求2所述的基于配置的业务流处理方法,其特征在于,所述方法还包括:
提供文本编辑工具对所述业务流配置数据库的所述第一业务流配置记录进行内容编辑。
4.根据权利要求2所述的基于配置的业务流处理方法,其特征在于,所述根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件,具体包括:
根据所述第一申请业务URL数据查询所述业务流配置数据库,将所述业务流配置数据库中所述第一业务URL数据与所述第一申请业务URL数据匹配的所述第一业务流配置记录的所述第一配置文件作为查询结果输出。
5.根据权利要求2所述的基于配置的业务流处理方法,其特征在于,所述根据所述第一配置文件创建对应的第一业务流转图并保存,具体包括:
根据所述第一配置文件中所述第一配置模块的顺序连接和网关转发关系进行业务流转图绘制处理生成对应的所述第一业务流转图并保存;
其中,所述第一业务流转图包括多个第一模块图形;所述第一模块图形与所述第一配置模块一一对应;所述第一模块图形对应的所述第一配置模块为所述起始配置模块或所述结束配置模块时,所述第一模块图形的图形形状为预设的第一形状;所述第一模块图形对应的所述第一配置模块既不为所述起始配置模块也不为所述结束配置模块且对应的所述第一模块类型为流程类型时,所述第一模块图形的图形形状为预设的第二形状;所述第一模块图形对应的所述第一配置模块的所述第一模块类型为网关类型时,所述第一模块图形的图形形状为预设的第三形状;所述第一模块图形的图形边框颜色初始化为预设的第一颜色;所述第一模块图形内的显示文本初始化为对应的所述第一配置模块的所述第一模块名称;相互连接的两个所述第一模块图形中,上一个所述第一模块图形对应的所述第一配置模块的一个或多个所述下一模块索引中有且只有一个所述下一模块索引,为下一个所述第一模块图形对应的所述第一配置模块的所述第一模块索引。
6.根据权利要求4所述的基于配置的业务流处理方法,其特征在于,所述根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列,具体包括:
步骤61,初始化所述第一流转模块序列为空;并将所述第一配置文件的所述起始配置模块作为当前配置模块;
步骤62,将所述当前配置模块的所述第一模块类型作为对应的当前模块类型;并对所述当前模块类型进行识别,若所述当前模块类型为流程类型则转至步骤63,若所述当前模块类型为网关类型则转至步骤67;
步骤63,对所述当前配置模块的所述第一输入参数列表的各个所述第一输入参数标识进行遍历;遍历时,将当前遍历的所述第一输入参数标识作为对应的当前输入参数标识;并从所述业务参数池中获取所述第一业务参数标识与所述当前输入参数标识匹配的所述第一业务参数记录的所述第一业务参数数据作为对应的第一参数数据;并由所述当前输入参数标识和所述第一参数数据组成对应的第一参数键值对;遍历结束时,将得到的多个所述第一参数键值对组成对应的第一参数键值对集合;
步骤64,按预设的服务接口请求报文格式,根据所述当前配置模块的所述第一服务URL数据、所述第一接口URL数据和所述第一参数键值对集合进行请求报文封装生成对应的第一请求报文向所述第一服务URL数据对应的模块服务器分发;并接收所述模块服务器回发的第一回执报文;并从所述第一回执报文中提取出第一结果键值对集合;所述第一结果键值对集合包括多个第一结果键值对;所述第一结果键值对包括第一结果参数标识和第一结果参数数据;
步骤65,对所述第一结果键值对集合的各个所述第一结果键值对进行遍历;遍历时,将当前遍历的所述第一结果键值对作为对应的当前结果键值对;并从所述当前结果键值对中提取出所述第一结果参数标识作为对应的所述第一业务参数标识,提取出所述第一结果参数数据作为对应的所述第一业务参数数据,并由得到的所述第一业务参数标识和所述第一业务参数数据组成对应的当前业务参数记录;并将所述当前业务参数记录添加到所述业务参数池中;
步骤66,将所述当前配置模块的所述下一模块索引作为当前下一模块索引并转至步骤68;
步骤67,对所述当前配置模块的各个所述第一逻辑表达式进行遍历;轮询时,将当前遍历的所述第一逻辑表达式作为对应的当前逻辑表达式,并将所述当前逻辑表达式对应的所述第一转发分支作为对应的当前转发分支;并从所述业务参数池中获取与所述当前逻辑表达式的各个所述第一表达式变量标识匹配的所述第一业务参数标识对应的所述第一业务参数记录的所述第一业务参数数据作为对应的第一表达式变量数据;并将得到的所有所述第一表达式变量数据代入所述当前逻辑表达式进行逻辑运算生成对应的第一逻辑运算结果;若所述第一逻辑运算结果为真则停止遍历,并将所述当前转发分支的所述下一模块索引作为所述当前下一模块索引并转至步骤68;若所述第一逻辑运算结果为假则继续对下一个所述第一逻辑表达式进行遍历直到最后一个所述第一逻辑表达式为止;
步骤68,将所述当前配置模块的所述第一模块名称作为对应的第一流转模块名称向所述第一流转模块序列添加;并将所述第一模块索引为所述当前下一模块索引的所述第一配置模块作为新的所述当前配置模块;并对所述当前配置模块是否为所述结束配置模块进行识别,若是则结束所述业务流执行处理,若否则返回步骤62。
7.根据权利要求6所述的基于配置的业务流处理方法,其特征在于,所述在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新,具体包括:
在所述业务流执行处理过程中,按预设的数据获取频率对最新的所述第一流转模块序列进行获取;并将所述第一业务流转图上与所述第一流转模块序列的各个所述第一流转模块名称对应的所述第一模块图形的图形边框颜色改为预设的第二颜色;并对修改后的所述第一业务流转图进行保存。
8.一种用于实现权利要求1-7任一项所述的基于配置的业务流处理方法的装置,其特征在于,所述装置包括:业务申请接收模块、配置文件获取模块、业务流转图处理模块和业务流处理模块;
所述业务申请接收模块用于接收第一业务申请报文;并从第一业务申请报文中提取出第一申请业务URL数据;
所述配置文件获取模块用于根据所述第一申请业务URL数据查询预设的业务流配置数据库获得对应的第一配置文件;
所述业务流转图处理模块用于根据所述第一配置文件创建对应的第一业务流转图并保存;
所述业务流处理模块用于根据预设的业务参数池和所述第一配置文件进行业务流执行处理并在所述业务流执行处理中生成反映业务流模块流转状态的第一流转模块序列;
所述业务流转图处理模块还用于在所述业务流执行处理过程中根据所述第一流转模块序列对所述第一业务流转图进行更新。
9.一种电子设备,其特征在于,包括:存储器、处理器和收发器;
所述处理器用于与所述存储器耦合,读取并执行所述存储器中的指令,以实现权利要求1-7任一项所述的方法步骤;
所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行权利要求1-7任一项所述的方法的指令。
CN202211174706.0A 2022-09-26 2022-09-26 一种基于配置的业务流处理方法和装置 Pending CN115456446A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211174706.0A CN115456446A (zh) 2022-09-26 2022-09-26 一种基于配置的业务流处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211174706.0A CN115456446A (zh) 2022-09-26 2022-09-26 一种基于配置的业务流处理方法和装置

Publications (1)

Publication Number Publication Date
CN115456446A true CN115456446A (zh) 2022-12-09

Family

ID=84305981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211174706.0A Pending CN115456446A (zh) 2022-09-26 2022-09-26 一种基于配置的业务流处理方法和装置

Country Status (1)

Country Link
CN (1) CN115456446A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115878648A (zh) * 2023-02-22 2023-03-31 成都成电医星数字健康软件有限公司 数据逻辑时序自动调整方法、装置、电子设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115878648A (zh) * 2023-02-22 2023-03-31 成都成电医星数字健康软件有限公司 数据逻辑时序自动调整方法、装置、电子设备及存储介质
CN115878648B (zh) * 2023-02-22 2023-05-05 成都成电医星数字健康软件有限公司 数据逻辑时序自动调整方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US8656417B2 (en) Interface for telecommunication services using uniform resource identifiers
US7584499B2 (en) Policy algebra and compatibility model
US20030233477A1 (en) Extensible infrastructure for manipulating messages communicated over a distributed network
KR101602099B1 (ko) 사물인터넷에서 레스트 기반의 서비스 연동 시스템 및 그 방법
CN115456446A (zh) 一种基于配置的业务流处理方法和装置
CN112214967A (zh) 一种报文格式转换方法及装置
CN113238740A (zh) 代码生成方法、代码生成装置、存储介质及电子设备
CN115114044A (zh) 消息推送方法、装置、设备和介质
US20220245080A1 (en) Method for communication of a componentized application, computing device and computer storage medium
CN110457132B (zh) 一种功能对象的创建方法、装置和终端设备
CN111324619A (zh) 微服务系统中的对象更新方法、装置、设备和存储介质
US7818431B2 (en) Efficient exchange of service requests and responses
US20140215011A1 (en) Message exchange via generic tlv generator and parser
WO2021135404A1 (zh) 配置信息订阅方法及装置
WO2017084515A1 (zh) 数据码流发送方法及装置
CN114816376A (zh) 一种基于流程引擎的拖拽式服务编排方法及系统
CN113448751A (zh) 基于dsl的接口响应方法、装置、设备及介质
CN113486099A (zh) 一种内存计算服务框架及实现系统
CN111736807A (zh) 租户功能定制方法、装置及基于租户的办公系统
CN113760487A (zh) 一种业务处理方法和装置
CN112306984A (zh) 一种数据源路由方法和装置
CN114996345B (zh) 基于ogc网络处理服务的在线服务组合方法
CN114202046B (zh) 基于sap系统生成二维码的方法、装置、设备及介质
CN112887390B (zh) 一种网络请求方法
CN117435177B (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