CN111444224A - 一种业务数据校验方法及装置 - Google Patents

一种业务数据校验方法及装置 Download PDF

Info

Publication number
CN111444224A
CN111444224A CN202010213412.9A CN202010213412A CN111444224A CN 111444224 A CN111444224 A CN 111444224A CN 202010213412 A CN202010213412 A CN 202010213412A CN 111444224 A CN111444224 A CN 111444224A
Authority
CN
China
Prior art keywords
service
verification
check
link
verified
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
Application number
CN202010213412.9A
Other languages
English (en)
Other versions
CN111444224B (zh
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.)
Zhengcaiyun Co ltd
Original Assignee
Zhengcaiyun 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 Zhengcaiyun Co ltd filed Critical Zhengcaiyun Co ltd
Priority to CN202010213412.9A priority Critical patent/CN111444224B/zh
Publication of CN111444224A publication Critical patent/CN111444224A/zh
Application granted granted Critical
Publication of CN111444224B publication Critical patent/CN111444224B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • 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/067Enterprise or organisation modelling
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Databases & Information Systems (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Computational Linguistics (AREA)
  • Educational Administration (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种业务数据校验方法及装置,其中所述业务数据校验方法包括:接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。通过本申请提供的方法,可以实现动态编排校验链路,校验器可以在不同的校验链路中重复利用。

Description

一种业务数据校验方法及装置
技术领域
本申请涉及计算机技术领域,特别涉及一种业务数据校验方法及装置、计算设备和计算机可读存储介质。
背景技术
随着计算机技术的发展,越来越多的应用在互联网上得到了迅猛发展,衍生出了很多在互联网线上即可实现的需求,如网上购物、在线采购、在线竞拍等,使得用户足不出户即可满足需求。
但是在目前的业务场景中,每个业务场景都有自己的校验规则,如网上购物时,需要判断用户是否登录、是否已经实名认证、是否填写了收货地址、购买的物品是否参与活动,用户关联的余额是否充足等等。每个业务场景的校验规则不同,且当同一个业务场景有新增的校验规则时,需要修改现有的代码,费时费力,十分不便。
因此,如何解决上述问题,就成为技术人员目前亟待解决的问题。
发明内容
有鉴于此,本申请实施例提供了一种业务数据校验方法及装置、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本申请实施例的第一方面,提供了一种业务数据校验方法,包括:
接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;
根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;
依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;
根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
可选的,根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,包括:
利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;
在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
可选的,所述方法还包括:
在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
可选的,校验链路根据业务逻辑规则配置生成,包括:
获取待配置业务标识和待配置业务逻辑规则;
根据待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序;
根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器;
根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
可选的,获得每个校验器的校验子结果,包括:
获得所述校验器的校验子结果为校验成功;或
获得所述校验器的校验子结果为校验失败。
可选的,根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果,包括:
在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;
根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
根据本申请实施例的第二方面,提供了一种业务数据校验装置,包括:
接收模块,被配置为接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;
确定模块,被配置为根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;
校验模块,被配置为依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;
返回模块,被配置为根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
可选的,所述确定模块,进一步被配置为利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
可选的,所述确定模块,进一步被配置为在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
可选的,所述确定模块,进一步被配置获取待配置业务标识和待配置业务逻辑规则;根据待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序;根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器;根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
可选的,所述校验模块,进一步被配置为获得所述校验器的校验子结果为校验成功;或获得所述校验器的校验子结果为校验失败。
可选的,所述返回模块,进一步被配置为在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述业务数据校验方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述业务数据校验方法的步骤。
本申请实施例中,通过接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果,通过本申请提供的方法,根据待校验业务类型确定预先配置好的校验链路,而校验链路是可以根据业务逻辑独立编排、自由组合,便捷实用,校验器脱离业务内容,仅对于校验参数进行校验输出校验结果,可以在不同业务场景中重复利用,对业务代码的改动较小,可以独立部署、运行维护。
附图说明
图1是本申请实施例提供的计算设备的结构框图;
图2是本申请实施例提供的业务数据校验方法的流程图;
图3是本申请实施例提供的校验链路配置方法的流程图;
图4是本申请实施例提供的业务数据校验方法的流程图;
图5示本申请实施例提供的业务数据校验方法的流程架构图;
图6示本申请实施例提供的业务数据校验方法的时序图;
图7是本申请实施例提供的业务数据校验装置的结构示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本申请中,提供了一种业务数据校验方法及装置、计算设备和计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。
计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。
其中,处理器120可以执行图2所示业务数据校验方法中的步骤。图2示出了根据本申请一实施例的业务数据校验方法的流程图,包括步骤202至步骤208。
步骤202:接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数。
待校验业务数据为需要被校验的业务数据,包括待校验业务类型和至少一个待校验业务参数,如在网购过程中执行下单操作,需要检验用户是否可以下单成功,则接收的待校验业务数据为下单业务和用户的用户ID,待校验业务类型为下单校验,待校验业务参数为用户ID,根据用户ID可以在预设的数据库中检索相关属性信息;在采购业务中,如需进行对采购物品的加购行为,需要验证是否可以进行加购,接收的待校验业务数据为加购业务和采购方ID。
在本申请提供的一具体实施方式中,以某单位进行采购为例,接收待校验业务数据为待校验业务类型是“采购”,待校验业务参数为“采购单位ID”、“电脑”、“单价5000元”、“10台”,根据“采购单位ID”可以在预设的数据库中检索到该采购单位的相关信息,如账户余额、采购合同、有无欠款等。
步骤204:根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器。
预先为需要检验的业务类型构造了对应的校验链路,每个校验链路中都包含有至少一个校验器,校验器与业务无关,只负责接收校验参数并输出校验结果。
可选的,根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,包括:利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
在本申请提供的一实施例中,沿用上例,根据待校验业务类型“采购”在预设的校验链路集合中进行遍历,查找业务标识为“采购”的校验链路为“采购配额校验器-历史欠款校验器-采购物品校验器-采购单价校验器”,所述校验链路中包括4个校验器。
可选的,在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
若在校验链路集合中未查找到与待校验业务类型相同的业务标识,则说明校验链路集合中不存在对应的校验链路,返回未检索到校验链路的提示信息。
参见图3,图3示出了本申请一实施例提供的校验链路配置方法流程图,包括下述步骤302至步骤308。
步骤302:获取待配置业务标识和待配置业务逻辑规则。
待配置业务标识用以确定待校验业务类型,待配置业务逻辑规则为所述待校验业务类型的校验规则。
在本申请提供的一实施例中,以采购为例,待配置业务标识为采购,待配置业务逻辑规则为:1、采购单位要有采购配额,2、采购物品符合预设的采购清单,3、采购物品的单价符合预设的采购单价要求,4、采购单位无历史欠款。
步骤304:根据待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序。
根据待配置业务逻辑规则生成对应的校验规则,校验规则包括校验类型和校验顺序。
在本申请提供的一实施例中,沿用上例,根据待配置业务逻辑生成如下的校验规则:校验采购配额-1,校验历史欠款-2,校验采购物品-3,校验采购单价-4,即按照如上所述的顺序进行校验。
步骤306:根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器。
预先为每种校验类型配置对应的校验器,如对于校验采购配额设置有对应的采购配额校验器,对于采购人资格设置有采购人资格校验器等等,在不同的校验类型中,可能会需要验证同样的信息,通过设置校验器,可以在不同的校验类型中快速简洁地实现调用对应的校验器。
在本申请提供的一实施例中,沿用上例,根据校验规则中的校验类型“校验采购配额”在预设的校验器集合中确定对应的目标校验器为“采购配额校验器”,根据校验规则中的校验类型“校验历史欠款”在预设的校验器集合中确定对应的目标校验器为“历史欠款校验器”,根据校验规则中的校验类型“校验采购物品”在预设的校验器集合中确定对应的目标校验器为“采购物品校验器”,根据校验规则中的校验类型“校验采购单价”在预设的校验器集合中确定对应的目标校验器为“采购单价校验器”。
步骤308:根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
根据校验顺序,将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
在本申请提供的一实施例中,沿用上例,根据校验顺序,将确定的4个校验器按照“采购配额校验器-历史欠款校验器-采购物品校验器-采购单价校验器”的顺序组成校验链路,并将该校验链路的业务标识配置为“采购”。
通过上述校验链路配置方法可以完成针对各种业务场景的校验链路,对于同一个校验器,可以在不同的校验链路中重复使用,使业务可以更加关注业务本身的逻辑。
步骤206:依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果。
依次通过目标链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,获取每个校验器的校验子结果,校验子结果可以为校验成功或校验失败。
在本申请提供的一实施例中,目标校验链路为“采购配额校验器-历史欠款校验器-采购物品校验器-采购单价校验器”,待校验业务参数为“采购单位ID”、“电脑”、“单价5000元”、“10台”。根据“采购单位ID”在数据库中确定所述采购单位对应的采购配额为“10万”、采购清单包括“电脑-单价小于6000,打印机-单价小于15000,投影仪-单价小于5000”。
依次调用目标校验链路中的校验器,调用“采购配额校验器”时,“采购配额校验器”从待校验业务参数中获取“单价5000元”和“10台”,经过校验确定本次采购总额为5万元,小于采购配额的10万元,则“采购配额校验器”的校验子结果为“成功”;调用“历史欠款校验器”时,“历史欠款校验器”从待校验业务参数中获取“采购单位ID”,经过校验确定所述采购单位无历史欠款,则“历史欠款校验器”的校验子结果为“成功”;调用“采购物品校验器”时,“采购物品校验器”从待校验业务参数中获取“电脑”,经过校验确定电脑在采购清单中,则“采购物品校验器”的校验子结果为“成功”;调用“采购单价校验器”时,“采购单价校验器”从待校验业务参数中获取“单价5000元”,经过校验确定5000元小于采购清单中电脑的定价,则“采购单价校验器”的校验子结果为“成功”。
步骤208:根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
根据每个校验器的校验子子结果生成所述待校验业务数据的校验结果,并将所述校验结果返回。
在本申请提供的实施例中,沿用上例,业务标识为“采购”的目标校验链路中每个校验器的校验子结果均为“成功”,则生成所述待校验业务数据的校验结果为“成功”,并将所述校验结果返回给采购单位。
可选的,根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果,包括:在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
在实际应用中,当有一个校验子结果为校验失败的情况下,获取获得校验失败结果对应的校验器的校验规则,根据所述校验规则生成所述待校验业务数据的校验结果,并将所述校验结果返回。
在本申请提供的一具体实施方式中,仍然以业务标识为“采购”的目标校验链路为例,若目标校验链路中的“采购单价校验器”校验子结果为“失败”,则获取“采购单价校验器”对应的校验规则为“电脑-单价小于6000”,根据“采购单价校验器”对应的校验规则生成待校验业务数据的校验结果为“校验失败,电脑单价需小于6000”。
本申请实施例提供的业务数据校验方法,通过接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。通过本申请提供的方法,根据待校验业务类型确定预先配置好的校验链路,而校验链路是可以根据业务逻辑独立编排、自由组合,便捷实用,校验器脱离业务内容,仅对于校验参数进行校验输出校验结果,可以在不同业务场景中重复利用,对业务代码的改动较小,可以独立部署、运行维护。
下面结合图4和图5对本申请一实施例的业务数据校验方法做进一步解释说明,图4示出了本申请一实施例的业务数据校验方法的流程图,该业务数据校验方法以加购业务校验为例进行描述,包括步骤402至步骤408。
步骤402:接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数。
参见图5,图5示出了本申请实施例的业务数据校验方法的流程架构图,接收待校验业务数据,将待校验业务数据通过参数透传传输至校验容器中,参数透传,是指在数据的传输过程中,通过无线的方式这组数据不发生任何形式的改变,仿佛传输过程是透明的一样,同时保证传输的质量,原封不动地到了最终接收者手里。
校验容器用于承载各业务间透传的业务参数,校验容器与业务线程进行绑定,实现了各业务之间的隔离。校验容器接收用于校验的业务参数,各业务对应的校验链路通过校验容器获取对应的待校验业务参数,同时校验容器还用于接收校验链路中各校验器的校验子结果,并对校验子结果进行分析处理,生成最终的校验结果。
在本申请提供的实施例中,校验容器接收待校验业务数据,其中,所述待校验业务数据中包括待校验业务类型为“加购”,待校验业务参数为“公司ID”、“加购物品:汽车”、“加购数量:2台”、“汽车单价:148888”,“汽车品牌:A品牌”,通过“公司ID”在数据库中确定该公司允许的采购清单为“汽车-总数小于3台-单价不超过160000-汽车品牌为A或B或C”,该公司的账户余额为“250000”,该公司的采购配额为“500000”。
步骤404:利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路,其中,所述目标校验链路包括至少一个校验器。
在本申请提供的实施例中,在校验容器中,通过待校验业务类型“加购”在预设的校验链路集合中进行遍历,查找业务标识为“加购”的校验链路,并将其确定为目标校验链路,如图5所示,目标校验链路中包括4个校验器,其中,校验器1用于校验“加购总额是否小于预设的采购配额”,校验器2用于校验“加购物品数量是否小于预设的采购数量”,校验器3用于校验“加购物品品牌是否符合预设的采购品牌”,校验器4用于校验“加购总额是否小于账户余额”。
步骤406:依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果。
在本申请提供的实施例中,依次调用业务标识为“加购”的目标校验链路中的校验器1至校验器4:
调用校验器1,校验器1从校验容器中获取待校验参数“加购数量:2台”、“汽车单价:148888”、“采购配额为500000”,校验规则为“加购总额是否小于预设的采购配额”,经过校验器1的校验,本次加购的加购总额为297776元,小于采购采购配额的500000,校验子结果1为校验成功。
调用校验器2,校验器2从校验容器中获取待校验参数“加购数量:2台”、采购清单为“汽车-总数小于3台-单价不超过160000-汽车品牌为A或B或C”,校验规则为“加购物品数量是否小于预设的采购数量”,经过校验器2的校验,本次加购的加购数量为2台,小于采购清单中预设的采购数量,校验子结果2为校验成功。
调用校验器3,校验器3从校验容器中获取待校验参数“汽车品牌:A品牌”、采购清单为“汽车-总数小于3台-单价不超过160000-汽车品牌为A或B或C”,校验规则为“加购物品品牌是否符合预设的采购品牌”,经过校验器3的校验,本次加购的汽车品牌为A品牌,符合采购清单中预设的汽车品牌的要求,校验子结果3为校验成功。
调用校验器4,校验器4从校验容器中获取待校验参数“加购数量:2台”、“汽车单价:148888”、账户余额为“250000”,校验规则为“加购总额是否小于账户余额”,经过校验器4的校验,本次加购的加购总额为297776元,大于账户余额的250000,校验子结果4为校验失败。
步骤408:根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
在本申请提供的实施例中,将校验器1至校验器4的校验子结果返回至校验容器,其中,校验子结果4为校验失败,获取校验器4的校验规则为“加购总额是否小于账户余额”,则生成校验结果为“校验失败,贵公司账户余额不足,无法支付”。
本申请实施例提供的业务数据校验方法,通过接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。通过本申请提供的方法,根据待校验业务类型确定预先配置好的校验链路,校验链路是可以根据业务逻辑独立编排、自由组合,便捷实用,校验器脱离业务内容,仅对于校验参数进行校验输出校验结果,可以在不同业务场景中重复利用,对业务代码的改动较小,可以独立部署、运行维护。
参见图6,图6示出了本申请一实施例提供的业务数据校验方法的时序图,如图所示,用户将待校验业务数据发送至校验入口,校验入口通过业务透传将待校验业务数据发送至校验容器,校验容器与业务线程进行绑定,在校验容器中根据待校验业务类型确定与之相对应的目标校验链路,通过目标校验链路中的校验器对待校验业务参数进行校验获得各个校验器的校验子结果,并将校验子结果返回至校验容器,校验容器根据返回的校验子结果生成最终的校验结果并将校验结果返回至用户。
与上述方法实施例相对应,本申请还提供了业务数据校验装置实施例,图7示出了本申请一个实施例的业务数据校验装置的结构示意图。如图7所示,该装置包括:
接收模块702,被配置为接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数。
确定模块704,被配置为根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器。
校验模块706,被配置为依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果。
返回模块708,被配置为根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
可选的,所述确定模块704,进一步被配置为利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
可选的,所述确定模块704,进一步被配置为在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
可选的,所述确定模块704,进一步被配置获取待配置业务标识和待配置业务逻辑规则;根据待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序;根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器;根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
可选的,所述校验模块706,进一步被配置为获得所述校验器的校验子结果为校验成功;或获得所述校验器的校验子结果为校验失败。
可选的,所述返回模块708,进一步被配置为在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
本申请实施例提供的业务数据校验装置,通过接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。通过本申请提供的方法,根据待校验业务类型确定预先配置好的校验链路,校验链路是可以根据业务逻辑独立编排、自由组合,便捷实用,校验器脱离业务内容,仅对于校验参数进行校验输出校验结果,可以在不同业务场景中重复利用,对业务代码的改动较小,可以独立部署、运行维护。
本申请一实施例中还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的业务数据校验方法的步骤。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述业务数据校验方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的业务数据校验方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述业务数据校验方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (14)

1.一种业务数据校验方法,其特征在于,包括:
接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;
根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;
依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;
根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
2.如权利要求1所述的业务数据校验方法,其特征在于,根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,包括:
利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;
在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
3.如权利要求2所述的业务数据校验方法,其特征在于,还包括:
在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
4.如权利要求2所述的业务数据校验方法,其特征在于,校验链路根据业务逻辑规则配置生成,包括:
获取待配置业务标识和待配置业务逻辑规则;
根据所述待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序;
根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器;
根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
5.如权利要求1所述的业务数据校验方法,其特征在于,获得每个校验器的校验子结果,包括:
获得所述校验器的校验子结果为校验成功;或
获得所述校验器的校验子结果为校验失败。
6.如权利要求5所述的业务数据校验方法,其特征在于,根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果,包括:
在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;
根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
7.一种业务数据校验装置,其特征在于,包括:
接收模块,被配置为接收待校验业务数据,其中,所述待校验业务数据包括待校验业务类型和至少一个待校验业务参数;
确定模块,被配置为根据所述待校验业务类型确定所述待校验业务数据对应的目标校验链路,其中,所述目标校验链路包括至少一个校验器;
校验模块,被配置为依次调用所述目标校验链路中的校验器对所述待校验业务数据中的待校验业务参数进行校验,并获得每个校验器的校验子结果;
返回模块,被配置为根据每个校验器的校验子结果生成并返回所述待校验业务数据的校验结果。
8.如权利要求7所述的业务数据校验装置,其特征在于,
所述确定模块,进一步被配置为利用所述待校验业务类型遍历预设的校验链路集合中每个校验链路的业务标识,其中,校验链路根据业务逻辑规则配置生成;在查找到与所述待校验业务类型相同的业务标识的情况下,将所述业务标识对应的校验链路确定为目标校验链路。
9.如权利要求8所述的业务数据校验装置,其特征在于,
所述确定模块,进一步被配置为在未查找到与所述待校验业务类型相同的业务标识的情况下,返回未检索到校验链路的提示信息。
10.如权利要求8所述的业务数据校验装置,其特征在于,
所述确定模块,进一步被配置获取待配置业务标识和待配置业务逻辑规则;根据待配置业务逻辑规则生成校验规则,其中,所述校验规则包括校验类型和校验顺序;根据所述校验类型在预设的校验器集合中确定与所述校验类型对应的至少一个目标校验器;根据所述校验顺序将每个所述目标校验器拼接生成校验链路,并将所述校验链路的业务标识配置为所述待配置业务标识。
11.如权利要求7所述的业务数据校验装置,其特征在于,
所述校验模块,进一步被配置为获得所述校验器的校验子结果为校验成功;或获得所述校验器的校验子结果为校验失败。
12.如权利要求11所述的业务数据校验装置,其特征在于,
所述返回模块,进一步被配置为在至少一个校验子结果为校验失败的情况下,获取每个校验子结果为校验失败的校验器的校验规则;根据每个所述校验规则生成并返回所述待校验业务数据的校验结果。
13.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-6任意一项所述方法的步骤。
14.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-6任意一项所述方法的步骤。
CN202010213412.9A 2020-03-24 2020-03-24 一种业务数据校验方法及装置 Active CN111444224B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010213412.9A CN111444224B (zh) 2020-03-24 2020-03-24 一种业务数据校验方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010213412.9A CN111444224B (zh) 2020-03-24 2020-03-24 一种业务数据校验方法及装置

Publications (2)

Publication Number Publication Date
CN111444224A true CN111444224A (zh) 2020-07-24
CN111444224B CN111444224B (zh) 2023-08-15

Family

ID=71652434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010213412.9A Active CN111444224B (zh) 2020-03-24 2020-03-24 一种业务数据校验方法及装置

Country Status (1)

Country Link
CN (1) CN111444224B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112115511A (zh) * 2020-09-17 2020-12-22 政采云有限公司 权限校验方法、装置及系统、业务权限配置方法及装置
CN112800120A (zh) * 2021-01-26 2021-05-14 政采云有限公司 业务处理方法及装置
CN113626314A (zh) * 2021-07-16 2021-11-09 济南浪潮数据技术有限公司 一种云平台资源参数的校验方法、装置、设备及可读介质

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140278724A1 (en) * 2013-03-15 2014-09-18 Luca Compagna Business process compliance via security validation service on the cloud
WO2016058556A1 (zh) * 2014-10-17 2016-04-21 腾讯科技(深圳)有限公司 一种业务处理方法及装置
CN106612204A (zh) * 2015-10-27 2017-05-03 阿里巴巴集团控股有限公司 业务校验方法及装置
CN107291716A (zh) * 2016-03-30 2017-10-24 阿里巴巴集团控股有限公司 一种链路数据校验方法及装置
WO2018019262A1 (zh) * 2016-07-29 2018-02-01 中兴通讯股份有限公司 云桌面系统、云桌面、云终端及组播方法
US9916551B1 (en) * 2014-10-31 2018-03-13 Veritas Technologies Llc Business continuity optimization
CN108132880A (zh) * 2017-12-21 2018-06-08 武汉斑马快跑科技有限公司 一种参数校验方法及装置
CN108205757A (zh) * 2016-12-19 2018-06-26 阿里巴巴集团控股有限公司 电子支付业务合法性的校验方法和装置
CN108319575A (zh) * 2018-01-30 2018-07-24 百度在线网络技术(北京)有限公司 一种页面组件的校验方法、装置、服务器和存储介质
CN108762933A (zh) * 2018-05-31 2018-11-06 成都四方伟业软件股份有限公司 数据质量校验方法及装置
CN109359939A (zh) * 2018-09-26 2019-02-19 中国平安人寿保险股份有限公司 业务数据校验方法、装置、计算机设备和存储介质
CN109543942A (zh) * 2018-10-16 2019-03-29 平安普惠企业管理有限公司 数据校验方法、装置、计算机设备和存储介质
CN109558134A (zh) * 2017-09-27 2019-04-02 北京京东尚科信息技术有限公司 业务数据校验的方法和装置
CN109815013A (zh) * 2019-01-02 2019-05-28 深圳壹账通智能科技有限公司 业务数据处理方法、装置、计算机设备和存储介质
CN110442756A (zh) * 2019-06-27 2019-11-12 平安科技(深圳)有限公司 数据校验方法、装置、计算机设备和存储介质
CN110471934A (zh) * 2019-08-19 2019-11-19 泰康保险集团股份有限公司 业务数据的校验方法、装置、介质及电子设备
CN110516258A (zh) * 2019-08-30 2019-11-29 北京明略软件系统有限公司 数据校验方法及装置、存储介质、电子装置
CN110618842A (zh) * 2019-09-20 2019-12-27 政采云有限公司 一种业务处理方法、装置及电子设备和存储介质
CN110633160A (zh) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 接口调用方法、装置、计算机设备和存储介质
CN110765422A (zh) * 2018-07-25 2020-02-07 北京京东尚科信息技术有限公司 一种参数校验方法和装置
CN110825428A (zh) * 2019-11-06 2020-02-21 政采云有限公司 一种状态机配置方法、装置、设备及可读存储介质

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140278724A1 (en) * 2013-03-15 2014-09-18 Luca Compagna Business process compliance via security validation service on the cloud
WO2016058556A1 (zh) * 2014-10-17 2016-04-21 腾讯科技(深圳)有限公司 一种业务处理方法及装置
US9916551B1 (en) * 2014-10-31 2018-03-13 Veritas Technologies Llc Business continuity optimization
CN106612204A (zh) * 2015-10-27 2017-05-03 阿里巴巴集团控股有限公司 业务校验方法及装置
CN107291716A (zh) * 2016-03-30 2017-10-24 阿里巴巴集团控股有限公司 一种链路数据校验方法及装置
WO2018019262A1 (zh) * 2016-07-29 2018-02-01 中兴通讯股份有限公司 云桌面系统、云桌面、云终端及组播方法
CN108205757A (zh) * 2016-12-19 2018-06-26 阿里巴巴集团控股有限公司 电子支付业务合法性的校验方法和装置
CN109558134A (zh) * 2017-09-27 2019-04-02 北京京东尚科信息技术有限公司 业务数据校验的方法和装置
CN108132880A (zh) * 2017-12-21 2018-06-08 武汉斑马快跑科技有限公司 一种参数校验方法及装置
CN108319575A (zh) * 2018-01-30 2018-07-24 百度在线网络技术(北京)有限公司 一种页面组件的校验方法、装置、服务器和存储介质
CN108762933A (zh) * 2018-05-31 2018-11-06 成都四方伟业软件股份有限公司 数据质量校验方法及装置
CN110765422A (zh) * 2018-07-25 2020-02-07 北京京东尚科信息技术有限公司 一种参数校验方法和装置
CN109359939A (zh) * 2018-09-26 2019-02-19 中国平安人寿保险股份有限公司 业务数据校验方法、装置、计算机设备和存储介质
CN109543942A (zh) * 2018-10-16 2019-03-29 平安普惠企业管理有限公司 数据校验方法、装置、计算机设备和存储介质
CN109815013A (zh) * 2019-01-02 2019-05-28 深圳壹账通智能科技有限公司 业务数据处理方法、装置、计算机设备和存储介质
CN110442756A (zh) * 2019-06-27 2019-11-12 平安科技(深圳)有限公司 数据校验方法、装置、计算机设备和存储介质
CN110471934A (zh) * 2019-08-19 2019-11-19 泰康保险集团股份有限公司 业务数据的校验方法、装置、介质及电子设备
CN110633160A (zh) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 接口调用方法、装置、计算机设备和存储介质
CN110516258A (zh) * 2019-08-30 2019-11-29 北京明略软件系统有限公司 数据校验方法及装置、存储介质、电子装置
CN110618842A (zh) * 2019-09-20 2019-12-27 政采云有限公司 一种业务处理方法、装置及电子设备和存储介质
CN110825428A (zh) * 2019-11-06 2020-02-21 政采云有限公司 一种状态机配置方法、装置、设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
林霞;申端明;时迎;乔德新;: "可配置组合式数据校验方法", 计算机系统应用, no. 05 *
熊小华;黄明和;宁爱兵;: "数据编辑界面中数据自动校验的设计与实现", 江西师范大学学报(自然科学版), no. 02 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112115511A (zh) * 2020-09-17 2020-12-22 政采云有限公司 权限校验方法、装置及系统、业务权限配置方法及装置
CN112800120A (zh) * 2021-01-26 2021-05-14 政采云有限公司 业务处理方法及装置
CN113626314A (zh) * 2021-07-16 2021-11-09 济南浪潮数据技术有限公司 一种云平台资源参数的校验方法、装置、设备及可读介质
CN113626314B (zh) * 2021-07-16 2023-12-22 济南浪潮数据技术有限公司 一种云平台资源参数的校验方法、装置、设备及可读介质

Also Published As

Publication number Publication date
CN111444224B (zh) 2023-08-15

Similar Documents

Publication Publication Date Title
CN111861569B (zh) 产品信息推荐方法及装置
CN111444224A (zh) 一种业务数据校验方法及装置
CN103825734B (zh) 敏感操作验证方法、终端设备、服务器和验证系统
CN110992020A (zh) 基于智能合约的数据处理方法、相关节点及存储介质
CN109345190B (zh) 一种数据处理方法及装置
EP2374103A1 (en) System of online trading through intermediary platform and methods thereof
CN106469358B (zh) 物流信息处理方法及装置
CN112800120B (zh) 业务处理方法及装置
CN109472615A (zh) 业务处理方法、装置及设备、可读介质
CN106998314B (zh) 账户交互方法及装置
CN110490748B (zh) 基于订单的项目推荐方法以及装置
CN111652693A (zh) 一种拥有个人电商app的方法及系统
CN107729124A (zh) 事务处理方法及装置、电子设备
CN110428309B (zh) 一种差异化采购方法及装置
CN115757718A (zh) 文本生成方法及装置
CN110111188A (zh) 业务办理方法及设备
CN115439176A (zh) 基于手机号快速订购的系统、方法、电子设备及存储介质
CN111882436B (zh) 一种基于区块链的数据处理方法、装置及设备
CN114677138A (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN109801052B (zh) 一种转账方法以及支付平台
CN111507808A (zh) 一种基于移动互联网的商品预售系统
CN113795857A (zh) 用于在计算机网络的节点之间传送匿名化的事务的系统和方法
CN109949146A (zh) 用于托管分类账的服务器和方法
CN117635271A (zh) 基于卫星宽带的供应链交易方法及系统
CN115936883A (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
GR01 Patent grant
GR01 Patent grant