CN112488855A - 一种基于规则模板的业务校验方法及设备 - Google Patents
一种基于规则模板的业务校验方法及设备 Download PDFInfo
- Publication number
- CN112488855A CN112488855A CN202011322857.7A CN202011322857A CN112488855A CN 112488855 A CN112488855 A CN 112488855A CN 202011322857 A CN202011322857 A CN 202011322857A CN 112488855 A CN112488855 A CN 112488855A
- Authority
- CN
- China
- Prior art keywords
- rule
- template
- rule template
- service
- product
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012795 verification Methods 0.000 title claims abstract description 56
- 230000006870 function Effects 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000011161 development Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 13
- 238000012423 maintenance Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 1
- 235000014552 Cassia tora Nutrition 0.000 description 1
- 244000201986 Cassia tora Species 0.000 description 1
- 238000012356 Product development Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000002715 modification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Economics (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书一个或多个实施例提供一种基于规则模板的业务校验方法及设备;所述方法包括:接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;从数据库中读取预先存储的规则模板;校验所述产品绑定规则与所述规则模板的匹配性;生成规则校验结果,返回给所述出单程序,完成业务校验。本方法通过改进规则模板配套的规则校验流程,匹配验证业务产品的绑定规则和规则模板,保证了业务的正确、有序实施;同时,通过创建规则模板,批量定义不同条件的规则,大幅缩减了规则定义的工作量;此外,通过类加载器实现了规则模板的热加载功能,在不停机升级的情况下就可以进行代码的在线新增与变更,提高了运维与更新的时效性。
Description
技术领域
本说明书一个或多个实施例涉及保单信息处理技术领域,尤其涉及一种基于规则模板的业务校验方法。
背景技术
企业级管理者可能会在系统生产过程中调整生产策略、物料采购策略等,因此对企业IT系统的开发有着很高的要求,例如为了提高效率,管理流程必须自动化;为了应对市场规则的变化,IT系统必须依据业务规则的变化进行快速、低成本的更新;为了快速、低成本的更新,业务人员应能直接管理IT系统中的规则,而不需要程序开发人员参与。规则引擎技术正是应用于上述动态环境中的一种解决方法。
规则引擎技术通过事先定义一系列规则,在企业业务发生时进行验证,从而确保企业的业务正确无误的开展。在当前的领域中商业产品有ILOG、开源产品有Drools。
现有的规则引擎中的业务校验流程尚不完善,不能完全保证业务正确、有序的进行,亟需改进;同时,每一个规则都有其独立的条件与参数,对于新增的每一个规则都需要单独定义,工作量庞大;此外,传统的规则引擎在配置规则模板后,需要重新发版并重启,无法实现动态修改规则模板,这对一些时效性比较强的规则模板来说较为困难。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种基于规则模板的业务校验方法及设备,以解决规则校验的流程不够完善、规则定义的工作量大的问题。
基于上述目的,本说明书一个或多个实施例提供了一种基于规则模板的业务校验方法,包括:
接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;
从数据库中读取预先存储的规则模板;
校验所述产品绑定规则与所述规则模板的匹配性;
生成规则校验结果,返回给所述出单程序,完成业务校验。
基于同一发明构思,本说明书一个或多个实施例还提供了一种基于规则模板的业务校验装置,包括:
产品绑定规则获取模块,被配置为接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;
规则模板读取模块,被配置为从数据库中读取预先存储的规则模板;
规则校验模块,被配置为校验所述产品绑定规则与所述规则模板的匹配性;
校验结果生成模块,被配置为生成规则校验结果,返回给所述出单程序,完成业务校验。
基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的方法。
基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任意一项所述的方法。
从上面所述可以看出,本说明书一个或多个实施例提供的一种基于规则模板的业务校验方法及设备,通过改进规则模板配套的规则校验流程,保证了业务的正确、有序实施;同时,通过创建规则模板,批量定义不同条件的规则,大幅缩减了规则定义的工作量;此外,通过类加载器实现了规则模板的热加载功能,在不停机升级的情况下就可以进行代码的在线新增与变更,提高了运维与更新的时效性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的基于规则模板的业务校验方法的流程图;
图2为本说明书一个或多个实施例的基于规则模板的业务校验方法的数据流图;
图3为本说明书一个或多个实施例的存储规则模板的流程图;
图4为本说明书一个或多个实施例的定义规则的流程图;
图5为本说明书一个或多个实施例的规则校验的流程图;
图6为本说明书一个或多个实施例的装置结构示意图;
图7为本说明书一个或多个实施例的电子设备结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
规则引擎可以在应用系统中分离商业决策者的商业决策逻辑和应用开发者的技术决策,并将这些商业决策放在中心数据库中进行动态地修改和管理,从而提供软件系统的柔性和适应性。
如背景技术部分所述,规则引擎技术通过事先定义一系列规则,在企业发生业务时进行验证,从而确保企业的业务正确无误的开展。而现有的规则引擎中的规则校验流程尚不完善,不能完全保证业务正确、有序的进行,亟需改进。此外,每一个规则都有其独立的条件与参数,对于新增的每一个规则都需要单独定义,工作量庞大。
针对于上述现有技术存在的问题,本发明通过改进规则模板配套的规则校验流程,匹配验证业务产品的绑定规则和规则模板,保证了业务的正确、有序实施;同时,通过创建规则模板,批量定义不同条件的规则,大幅缩减了规则定义的工作量;此外,通过类加载器实现了规则模板的热加载功能,在不停机升级的情况下就可以进行代码的在线新增与变更,提高了运维与更新的时效性。
以下,通过具体的实施例来详细说明本说明书一个或多个实施例的技术方案。
本说明书一个或多个实施例提供了一种基于规则模板的业务校验方法。参考图1、2,所述的基于规则模板的业务校验方法,包括以下步骤:
步骤S1、接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则。
本实施例中,外部接入系统首先向内部系统的出单程序发送业务出单请求报文,出单程序再将业务出单请求报文转递给规则引擎。规则引擎在接收到业务出单请求报文后,通过解析报文,获取业务中包含的产品的产品绑定规则。
步骤S2、从数据库中读取预先存储的规则模板。
本步骤中,规则引擎从数据库中读取开发人员预先上传的规则模板,作为后续规则校验的校验实体。作为一个可选的实施例,参考图3,规则模板的存储具体包括以下10个子步骤:
S201、接收开发人员上传到网络附属存储(NAS)的规则模板类(class)文件的zip压缩包。
S202、判断规则模板的名称、类型、标签和文件名是否为空。
本实施例中,若规则引擎判断出规则模板的名称、类型、标签或文件名中的至少一项为空,则直接返回规则模板添加失败信息“名称/类型/标签/文件名为空”,规则模板添加失败。若规则模板的各项均不为空,则继续执行步骤S203。
S203、解压zip压缩包中的class文件到NAS的临时路径temporayPath文件夹中。
S204、判断zip压缩包中是否只有一个规则。
本步骤中,若规则引擎判断出zip压缩包中有多于一个规则存在,则直接返回规则模板添加失败信息“只能添加一个规则”,规则模板添加失败。若zip压缩包中只有一个规则,则继续执行步骤S205。
S205、判断zip压缩包中的文件类型是否有别于api、class和sql三种。
本实施例中,若规则引擎搜索到zip压缩包中的文件类型有除api、class或sql三种以外的其他文件类型,则直接返回规则模板添加失败信息“只能使用规定的三种文件类型”,规则模板添加失败。若zip压缩包中只存在api、class或sql这三种文件类型中的至少一种,则继续执行步骤S206。
S206、判断规则模板的名称和类名称是否和数据库里生效的规则模板重复。
本步骤中,若规则引擎查询到规则模板的名称或类名称中的至少一项与数据库中已经生效的规则模板重复,则直接返回规则模板添加失败信息“规则模板的名称和类名称不能重复”,规则模板添加失败。若新添加的规则模板与数据库中已经生效的规则模板不重复,则继续执行步骤S207。
S207、加载temporayPath文件夹中的规则模板class文件,获取模板中的@TargetMethod注解修饰的方法的形参名称,放在notename字段中,用于存库。
本实施例中,规则引擎通过加载规则模板的class文件获取class中的规则模板信息,并将方法形参存放在notename字段中,用于后续存储到数据库的单独一个字段中。
S208、将规则模板实例注册到spring中,交由spring管理。
本步骤中,规则引擎将新增的规则模板实例注册到spring框架中,通过FactoryBean进行class的实例化和管理。其中,spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架,使用基本的JavaBean即可完成EJB的所有工作,能够解决企业应用开发的复杂性。
S209、将规则模板信息存储到数据库中。
本实施例中,规则引擎将规则模板信息存储到数据库中,生成rul_template表。
S210、将temporayPath文件夹中的文件复制到permanentPath文件夹中,并将原文件删除。
本步骤中,规则引擎将临时路径文件夹中的规则模板的全部相关文件复制到永久路径文件夹中做长时备份,并删除原文件。至此,规则模板在数据库中存储并备份成功。
作为一个可选的实施例,规则引擎通过规则模板管理接口对规则模板进行管理,管理内容包括:上传zip文件、新增规则模板、修改规则模板、删除规则模板、查询带分页的规则模板、查询所有规则模板、通过id查询规则模板。
具体的,根据规则模板名称或者规则模板类型即可查询带分页的规则模板;查询所有规则模板用于新增规则时绑定规则模板使用;通过id查询模板则用于查询或者编辑规则模板时使用。使用规则模板管理接口可以实现规则模板的动态修改,提高了规则变更的时效性。
作为一个可选的实施例,出单规则模板包括但不限于下述5种类型:
年龄规则模板,可以设置不同的年龄段对被保人进行限制。
性别规则模板,可以设置不同的性别段对被保人进行限制。
购买份数规则模板,可以设置不同的购买份数对购买用户进行限制购买。
生效日期规则模板,可以设置指定的生效日期。
互斥规则模板,可以对购买用户设置购买的险种之间的互斥关系。
本实施例中的出单规则模板包含了部分业务出单中需要用到的限制条件,保证了出单业务能够正确有序的进行。
作为一个可选的实施例,规则引擎使用Java的类加载器(ClassLoader)将规则模板的class文件加载进内存区域,实现规则模板的热加载功能。ClassLoader主要对类的请求提供服务,当Java虚拟机(JVM)需要某类时,它根据名称向ClassLoader要求这个类,然后由ClassLoader返回这个类的class对象。通过ClassLoader的热加载,在不停机升级的情况下就可以对代码进行在线新增与变更,提高了运维与更新的时效性。
作为一个可选的实施例,规则引擎根据业务人员的指令需求,利用规则模板批量定义规则,并存储在数据库中。具体的,参考图4,业务人员首先选择合适的规则模板,并让规则引擎读取所选规则模板的规则参数。若读取失败,则返回规则模板选择失败信息,并令业务人员重新选择规则模板;若读取成功,则根据业务人员的设置批量定义规则。最后,规则引擎将规则存储到数据库中,完成规则定义。定义的不同条件的规则可以在业务人员配置新的业务产品时有选择的绑定在业务产品上,丰富了产品的规则限制条件,产出了更多种类的产品。
可选的,在产品开发阶段,业务人员从数据库中提取全部规则,从中挑选与产品相匹配的,配置在产品内。开发完毕的产品内包含的全部规则,即为产品绑定规则。
步骤S3、校验所述产品绑定规则与所述规则模板的匹配性。
本步骤中,规则引擎通过验证产品绑定规则与数据库中的规则模板的匹配性,判断业务产品是否合规。具体的,参考图5,产品绑定规则的校验具体包括以下5个子步骤:
S301、根据产品id查询产品是否配置规则组。
本实施例中,规则引擎在解析获得产品绑定规则后,通过查询T_Product_Template_CONF表中的ruleid是否不为空,来判断产品是否配置了规则组。若ruleid为空,则表明产品未配置规则组,无需进行后续规则校验流程,可以直接通过规则校验。若ruleid不为空,则继续执行步骤S302。
S302、根据产品id查询产品绑定规则列表是否为空。
本步骤中,规则引擎通过将T_Product_Template_CONF表,与T_Rule_Group表、rul_instance表和rul_template表四表联查,判断产品是否配置了规则。若产品绑定规则列表为空,则表明产品未配置规则,无需进行后续规则校验流程,可以直接通过规则校验。若产品绑定规则列表不为空,则继续执行步骤S303。
S303、根据门店id查询门店绑定规则列表,并与产品绑定规则列表合并为规则列表。
本实施例中,规则引擎通过将T_Store表,与rul_instance表和rul_template表三表联查,得到门店绑定规则列表。再将门店绑定规则列表与产品绑定规则列表合并,得到规则列表(ruleVaildList表)。
S304、根据规则列表中的规则id查询得到规则参数对应的参数表。
本步骤中,规则引擎根据ruleVaildList表中的规则id查询得到参数表(rul_instance_param表),参数表中的规则参数与规则列表中的规则一一对应。至此,以参数表中的规则参数作为产品绑定规则进行后续校验流程。
S305、循环遍历验证每一个规则参数与数据库中的规则模板的匹配性。
具体的,规则引擎首先反射数据库中读取到的规则模板,获取规则模板中的@TargetMethod注解对应的方法形参。然后对方法形参进行赋值操作,其中赋予的值为rul_instance_param参数表中取出来的对应数据。再对规则模板的成员变量contvo赋值,其中contvo为规则模板的校验实体。最后,校验方法形参和成员变量的逻辑,遍历每一个规则。
步骤S4、生成规则校验结果,返回给所述出单程序,完成业务校验。
本实施例中,规则引擎在规则校验结束后,生成规则校验结果。只要有一个规则的校验失败,则规则校验不通过,生成规则校验失败信息“规则校验未通过,产品不合规”;若所有规则顺利完成遍历,则规则校验通过,生成规则校验完成信息“规则校验通过,产品合规”。规则引擎将失败信息或完成信息返回给出单程序,全部业务校验流程完成。
出单程序在接收到业务校验信息后,判断产品是否合规。若产品合规,则向外部接入系统返回业务出单信息,开始业务出单流程;如果产品不合规,则向外部接入系统返回拒绝业务出单信息,终止业务出单流程,并向服务器发送拒绝原因,记录产品信息和失效规则信息。
以用户通过移动端App购买保险为例,未成年用户在移动端App上点击下单购买“成人健康险”,App将业务出单请求报文通过网络发送给出单程序,再转递给规则引擎。规则引擎通过解析业务出单请求报文获取“成人健康险”这个产品的产品绑定规则,其中一个规则为“年龄:18周岁及以上”。通过规则校验流程,规则引擎查询到“年龄:18周岁及以上”规则与数据库中的年龄规则模板不匹配,规则校验失败,向出单程序返回“产品不合规”失败信息。出单程序向移动端App发送拒绝出单信息“投保人年龄不合规”,并记录产品信息和失效规则信息。可见,上述基于规则模板的业务处理方法,保证了业务的正确、有序实施。
由上述实施例可见,本说明书一个或多个实施例提供的一种基于规则模板的业务校验方法,通过改进规则模板配套的规则校验流程,匹配验证业务产品的绑定规则和规则模板,保证了业务的正确、有序实施;同时,通过创建规则模板,批量定义不同条件的规则,大幅缩减了规则定义的工作量;此外,通过类加载器实现了规则模板的热加载功能,在不停机升级的情况下就可以进行代码的在线新增与变更,提高了运维与更新的时效性。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,本说明书一个或多个实施例还提供了一种基于规则模板的业务校验装置。参考图6,所述的基于规则模板的业务校验装置,包括:
产品绑定规则获取模块601,被配置为接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;
规则模板读取模块602,被配置为从数据库中读取预先存储的规则模板;
规则校验模块603,被配置为校验所述产品绑定规则与所述规则模板的匹配性;
校验结果生成模块604,被配置为生成规则校验结果,返回给所述出单程序,完成业务校验。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的基于规则模板的业务校验方法。
图7示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任意一实施例所述的基于规则模板的业务校验方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种基于规则模板的业务校验方法,其特征在于,包括:
接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;
从数据库中读取预先存储的规则模板;
校验所述产品绑定规则与所述规则模板的匹配性;
生成规则校验结果,返回给所述出单程序,完成业务校验。
2.根据权利要求1所述的一种基于规则模板的业务校验方法,其特征在于,所述规则模板的预先存储,具体包括:
接收开发人员上传到网络存储服务器的规则模板类文件的压缩包;
解压所述压缩包中的所述类文件,存放到所述网络存储服务器的临时路径文件夹中;
判断所述规则模板、所述压缩包和所述类文件的有效性;
若有效,加载所述类文件,获取所述类文件中的规则模板信息;
将所述规则模板注册到应用开发框架中进行管理;
将所述规则模板信息存储到数据库中;
将所述临时路径文件夹中的全部文件复制到永久路径文件夹中,并删除所述临时路径文件夹中的全部文件。
3.根据权利要求2所述的一种基于规则模板的业务校验方法,其特征在于,所述判断所述规则模板、所述压缩包和所述类文件的有效性,具体包括:
判断所述规则模板的名称、类型、标签或文件名是否为空,若为是,则无效,返回第一添加失败信息;
判断所述压缩包中是否只有一个规则,若为否,则无效,返回第二添加失败信息;
判断所述压缩包中的文件类型是否有别于应用编程函数、类文件或结构化查询语言三种,若为是,则无效,返回第三添加失败信息;
判断所述规则模板的名称或类名称是否和所述数据库里生效的规则模板重复,若为是,则无效,返回第四添加失败信息。
4.根据权利要求1所述的一种基于规则模板的业务校验方法,其特征在于,所述规则模板使用类加载器将所述类文件加载进内存区域,实现在线热加载功能在不停机升级的情况下进行规则代码的新增与变更。
5.根据权利要求1所述的一种基于规则模板的业务校验方法,其特征在于,所述校验所述产品绑定规则与所述规则模板的匹配性,具体包括:
查询产品的相关配置,判断是否直接通过规则校验;
若未直接通过所述规则校验,则根据门店唯一编码查询得到门店绑定规则列表,并与产品绑定规则列表合并为规则列表;
根据所述规则列表中的规则唯一编码查询得到规则参数对应的参数表;
循环遍历验证每一个所述规则参数与所述数据库中的所述规则模板的匹配性。
6.根据权利要求5所述的一种基于规则模板的业务校验方法,其特征在于,所述查询产品相关配置,判断是否直接通过规则校验,具体包括:
根据产品唯一编码查询所述产品是否配置规则组,若为否,则直接通过所述规则校验;
根据所述产品唯一编码查询所述产品绑定规则列表是否为空,若为是,则直接通过所述规则校验。
7.根据权利要求5所述的一种基于规则模板的业务校验方法,其特征在于,所述循环遍历验证每一个所述规则参数与所述数据库中的所述规则模板的匹配性,具体包括:
反射所述规则模板,对方法形参进行赋值操作,赋值所述参数表中的数据;
对所述规则模板的成员变量进行赋值操作;
校验所述方法形参和所述成员变量的逻辑,验证匹配性。
8.一种基于规则模板的业务校验装置,其特征在于,包括:
产品绑定规则获取模块,被配置为接收出单程序发送的业务出单请求报文,获取所述业务出单请求报文中的产品绑定规则;
规则模板读取模块,被配置为从数据库中读取预先存储的规则模板;
规则校验模块,被配置为校验所述产品绑定规则与所述规则模板的匹配性;
校验结果生成模块,被配置为生成规则校验结果,返回给所述出单程序,完成业务校验。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任意一项所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1至7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011322857.7A CN112488855B (zh) | 2020-11-23 | 2020-11-23 | 一种基于规则模板的业务校验方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011322857.7A CN112488855B (zh) | 2020-11-23 | 2020-11-23 | 一种基于规则模板的业务校验方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112488855A true CN112488855A (zh) | 2021-03-12 |
CN112488855B CN112488855B (zh) | 2024-02-13 |
Family
ID=74933108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011322857.7A Active CN112488855B (zh) | 2020-11-23 | 2020-11-23 | 一种基于规则模板的业务校验方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112488855B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113128848A (zh) * | 2021-04-01 | 2021-07-16 | 广州虎牙科技有限公司 | 全业务指标的数据质量监控方法、电子设备及存储介质 |
CN113568682A (zh) * | 2021-07-30 | 2021-10-29 | 平安养老保险股份有限公司 | 规则数据校验方法、装置、计算机设备和存储介质 |
CN113608913A (zh) * | 2021-08-05 | 2021-11-05 | 上海微盟企业发展有限公司 | 参数校验方法、系统、装置及存储介质 |
CN113703740A (zh) * | 2021-09-17 | 2021-11-26 | 厦门中盾安信科技有限公司 | 一种基于业务规则配置执行业务请求命令的方法和系统 |
CN114493570A (zh) * | 2022-02-09 | 2022-05-13 | 中国银行股份有限公司 | 基于集团内部专线的跨境汇款处理方法及装置 |
CN114817258A (zh) * | 2022-04-25 | 2022-07-29 | 国网福建省电力有限公司 | 一种网源数据合规校验方法、装置及系统 |
CN115185616A (zh) * | 2022-09-14 | 2022-10-14 | 深圳依时货拉拉科技有限公司 | 业务规则引擎及业务规则引擎的处理方法 |
WO2023123768A1 (zh) * | 2021-12-27 | 2023-07-06 | 中国民航信息网络股份有限公司 | 一种制品管理方法、系统、存储介质和电子设备 |
CN116662041A (zh) * | 2023-07-21 | 2023-08-29 | 太平金融科技服务(上海)有限公司 | 业务信息处理方法、装置、计算机设备、介质和程序产品 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040088195A1 (en) * | 2002-10-31 | 2004-05-06 | Childress Allen B. | Method of modifying a business rule |
CN103942228A (zh) * | 2013-01-23 | 2014-07-23 | 纽海信息技术(上海)有限公司 | 规则引擎、计算方法、业务系统及调用方法 |
US20150293764A1 (en) * | 2014-04-10 | 2015-10-15 | Omprakash VISVANATHAN | Method and system to compose and execute business rules |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
CN108460688A (zh) * | 2018-01-08 | 2018-08-28 | 平安科技(深圳)有限公司 | 核保校验的方法、装置、存储介质及终端 |
CN109377393A (zh) * | 2018-10-18 | 2019-02-22 | 阳光人寿保险股份有限公司 | 规则校验方法及装置 |
CN109783107A (zh) * | 2019-01-10 | 2019-05-21 | 深圳市小赢信息技术有限责任公司 | 一种可视化的规则生成方法、装置及电子设备 |
CN110909013A (zh) * | 2019-10-12 | 2020-03-24 | 中国平安财产保险股份有限公司 | 业务清单生成方法、装置、设备及计算机可读存储介质 |
-
2020
- 2020-11-23 CN CN202011322857.7A patent/CN112488855B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040088195A1 (en) * | 2002-10-31 | 2004-05-06 | Childress Allen B. | Method of modifying a business rule |
CN103942228A (zh) * | 2013-01-23 | 2014-07-23 | 纽海信息技术(上海)有限公司 | 规则引擎、计算方法、业务系统及调用方法 |
US20150293764A1 (en) * | 2014-04-10 | 2015-10-15 | Omprakash VISVANATHAN | Method and system to compose and execute business rules |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
CN108460688A (zh) * | 2018-01-08 | 2018-08-28 | 平安科技(深圳)有限公司 | 核保校验的方法、装置、存储介质及终端 |
CN109377393A (zh) * | 2018-10-18 | 2019-02-22 | 阳光人寿保险股份有限公司 | 规则校验方法及装置 |
CN109783107A (zh) * | 2019-01-10 | 2019-05-21 | 深圳市小赢信息技术有限责任公司 | 一种可视化的规则生成方法、装置及电子设备 |
CN110909013A (zh) * | 2019-10-12 | 2020-03-24 | 中国平安财产保险股份有限公司 | 业务清单生成方法、装置、设备及计算机可读存储介质 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113128848A (zh) * | 2021-04-01 | 2021-07-16 | 广州虎牙科技有限公司 | 全业务指标的数据质量监控方法、电子设备及存储介质 |
CN113128848B (zh) * | 2021-04-01 | 2024-06-21 | 广州虎牙科技有限公司 | 全业务指标的数据质量监控方法、电子设备及存储介质 |
CN113568682A (zh) * | 2021-07-30 | 2021-10-29 | 平安养老保险股份有限公司 | 规则数据校验方法、装置、计算机设备和存储介质 |
CN113568682B (zh) * | 2021-07-30 | 2024-05-07 | 平安养老保险股份有限公司 | 规则数据校验方法、装置、计算机设备和存储介质 |
CN113608913A (zh) * | 2021-08-05 | 2021-11-05 | 上海微盟企业发展有限公司 | 参数校验方法、系统、装置及存储介质 |
CN113703740A (zh) * | 2021-09-17 | 2021-11-26 | 厦门中盾安信科技有限公司 | 一种基于业务规则配置执行业务请求命令的方法和系统 |
WO2023123768A1 (zh) * | 2021-12-27 | 2023-07-06 | 中国民航信息网络股份有限公司 | 一种制品管理方法、系统、存储介质和电子设备 |
CN114493570A (zh) * | 2022-02-09 | 2022-05-13 | 中国银行股份有限公司 | 基于集团内部专线的跨境汇款处理方法及装置 |
CN114817258A (zh) * | 2022-04-25 | 2022-07-29 | 国网福建省电力有限公司 | 一种网源数据合规校验方法、装置及系统 |
CN115185616A (zh) * | 2022-09-14 | 2022-10-14 | 深圳依时货拉拉科技有限公司 | 业务规则引擎及业务规则引擎的处理方法 |
CN116662041A (zh) * | 2023-07-21 | 2023-08-29 | 太平金融科技服务(上海)有限公司 | 业务信息处理方法、装置、计算机设备、介质和程序产品 |
CN116662041B (zh) * | 2023-07-21 | 2023-10-20 | 太平金融科技服务(上海)有限公司 | 业务信息处理方法、装置、计算机设备、介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN112488855B (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112488855B (zh) | 一种基于规则模板的业务校验方法及设备 | |
AU2017203762B2 (en) | System architecture for cloud-platform infrastructure layouts | |
CN107038042B (zh) | 一种业务执行的方法及装置 | |
US11392393B2 (en) | Application runtime configuration using design time artifacts | |
US10038698B2 (en) | External platform extensions in a multi-tenant environment | |
CN112241506B (zh) | 用户行为的回溯方法、装置、设备及系统 | |
CN109240900A (zh) | 区块链网络服务平台及其智能合约检测方法、存储介质 | |
CN110968437A (zh) | 一种基于Java智能合约的单个合约并行执行的方法、装置、设备及介质 | |
CN107679937B (zh) | 定制服务功能的方法、系统、存储介质及设备 | |
CN111858727A (zh) | 一种基于模板配置的多数据源数据导出系统及方法 | |
CN113051354A (zh) | 一种基于动态配置的线上寻源方法、装置和计算机设备 | |
CN109343891B (zh) | 数据处理的系统、方法及装置 | |
CN113569257A (zh) | 灰度发布中的用户权限管理方法和装置 | |
Shrivastava | Learning Salesforce Einstein | |
CN110852649A (zh) | 资源管理方法、终端、装置及可读存储介质 | |
CN115829229A (zh) | 业务产品的投产流程验证方法、装置和计算机设备 | |
CN112181407B (zh) | 业务实现处理方法及装置、系统、电子设备和存储介质 | |
CN114546418A (zh) | aPaaS一体机应用平台 | |
CN113504904A (zh) | 用户定义函数实现方法、装置、计算机设备和存储介质 | |
CN112068895A (zh) | 代码配置方法、装置、视频播放设备及存储介质 | |
CN111242731A (zh) | 一种业务执行的方法及装置 | |
CN114138321A (zh) | 一种小程序审核方法和系统 | |
Araújo | Technologies for process traceability in the shipbuilding industry: the West Sea Viana Shipyard case study | |
CN115328537A (zh) | 配置管理系统的版本管理方法及配置版本管理系统 | |
Gunda | Candidate Declaration |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |