掌桥专利:专业的专利平台
掌桥专利
首页

一种基于时间及序列的业务防重方法、设备及介质

文献发布时间:2024-04-18 19:58:26


一种基于时间及序列的业务防重方法、设备及介质

技术领域

本申请涉及计算机技术领域,尤其涉及一种基于时间及序列的业务防重方法、设备及介质。

背景技术

当前,越来越多的企业开启到数字化转型业务。企业通过银企直联对接各金融机构实现线上付款也更加常见。在付款发送前,防重检查是至关重要一环,其能够避免财务人员因误操作、疏忽等不可控因素导致的重复付款,保证用户的资金安全。

传统防重检查过程中,记录每笔付款对应的付款单编号,防重时校验当前付款单编号,如果已经存在则判断为重复付款。这种仅依赖付款单编号的防重简单有效,但也有其局限性的一面,实际生产中如果付款因为网络波动、系统延迟等原因产生异常,不熟悉情况的财务人员很可能会重新制单发送,这时仅依赖单据编号的传统防重将失去意义。

发明内容

为了解决上述问题,本申请提出了一种基于时间及序列的业务防重方法,包括:提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围;获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据;对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

在一个示例中,对所述对比数据进行查询,具体包括:根据所述付款信息确定付款单编号,根据所述付款单编号在所述对比数据中进行查找;若在所述对比数据找到所述付款单编号,则代表所述付款信息为重复付款;若在所述对比数据没有找到所述付款单编号,则确定所述付款信息对应的信息序列,并确定所述对比数据对应的对比信息序列;根据所述信息序列在所述对比信息序列中进行查找;若在所述对比信息序列中找到所述信息序列,则代表所述付款信息为重复付款。

在一个示例中,所述方法还包括:根据所述付款信息确定付款单编号和业务信息,确定业务信息一致的第一付款单和第二付款单,并确定所述第一付款单对应的第一付款单编号;确定预先设置的屏蔽标识字段,将所述屏蔽标识字段与所述第一付款单编号进行拼接,以得到屏蔽标识;根据所述屏蔽标识对所述第一付款单的防重检查进行屏蔽。

在一个示例中,根据所述屏蔽标识对所述第一付款单进行防重检查屏蔽,具体包括:根据所述屏蔽标识确定对应的屏蔽MD5值,并确定预先设置的屏蔽标识校验位;将所述屏蔽MD5值与所述屏蔽标识校验位进行比对;若所述屏蔽MD5值与所述屏蔽标识校验位一致,则屏蔽对所述第一付款单的防重检查。

在一个示例中,所述方法还包括:根据所述付款信息确定付款时间,并确定预先确定的扩展阈值;将所述付款时间与所述扩展阈值进行比较;若所述付款时间小于所述扩展阈值,则获取所述付款日期对应的前日付款数据和当日付款数据,将所述前日付款数据和所述当日付款数据作为对比数据。

在一个示例中,所述方法还包括:确定预先设置的防重通过记录表,并确定所述防重通过记录表的属性,其中,所述属性包括但不限于字段名称、数据类型;根据防重通过的所述付款信息确定记录内容,并将所述记录内容记录在所述防重通过记录表中。

在一个示例中,所述付款信息包括但不限于付款单编号、付款方账号、收款方账号、转账附言、交易金额、付款流水号、付款日期、付款时间。

在一个示例中,所述信息序列包括但不限于付款方账号、收款方账号、付款金额、转账附言,接入系统标识。

另一方面,本申请还提出了一种基于时间及序列的业务防重设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述一种基于时间及序列的业务防重设备能够执行:提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围;获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据;对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

另一方面,本申请还提出了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围;获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据;对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

本申请以付款单的业务信息序列作为防重基础信息,在业务信息防重时间范围内进行防重检查,此外,本申请对有需要屏蔽业务防重的特殊付款,提供跳过防重功能,使得防重检查实用性强,更加灵活。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例中一种基于时间及序列的业务防重方法的流程示意图;

图2为本申请实施例中一种基于时间及序列的业务防重系统的程序示意图;

图3为本申请实施例中一种基于时间及序列的业务防重设备的示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

如图1所示,为了解决上述问题,本申请实施例提供的一种基于时间及序列的业务防重方法,方法包括:

S101、提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围。

防重检查是付款发送相关机构前的关键步骤,主要是将当前付款与记录库中的信息进行对比,对于已有记录的付款视为重复付款,终止发送相关机构,返回失败状态;对于已通过防重检查的付款,记录其信息再发送至相关机构。

将防重检查分为两个维度,基准与范围。基准是防重检查校验的核心标准,采用关键业务信息序列与付款单编号相结合的方式。普通的付款业务信息主要包含三大部分:付方、收方、金额,再考虑到多接入系统与用户的灵活付款,因此,业务信息序列为:付款方账号、收款方账号、付款金额、转账附言,接入系统标识。范围是基准需要对比校验付款记录的付款时间范围。根据前面提到的基准,所以比较适合的默认时间范围为当日,考虑到零点附近的付款可能受网络延迟、系统异常等因素影响,其时间范围扩大到前一日。

防重检查流程开始前,提取付款信息用于防重检查,该付款信息包括:付款单编号、付款方账号、收款方账号、转账附言、交易金额、付款流水号、付款日期、付款时间。

S102、获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据。

取付款时间当日的所有付款数据作为对比范围的数据,如果付款时间在零点后30分钟内,则将付款时间前一日数据也加入到对比范围。

S103、对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

获取该付款信息的信息序列,并计算信息序列的MD5信息摘要。如果该笔付款单编号在对比数据中已经存在则视为重复付款,否则对比该付款单的信息序列的MD5,如果该MD5存在则视为重复付款,否则即为通过防重检查,可以发送至相关机构,并记录该笔付款信息到记录库。

在一个实施例中,根据付款信息确定付款单编号,根据付款单编号在对比数据中进行查找。若在对比数据找到付款单编号一致的已有付款单,则代表付款信息为重复付款。若在对比数据没有找到一样的付款单编号,则确定付款信息对应的信息序列,并确定对比数据对应的对比信息序列。根据信息序列在对比信息序列中进行查找,若在对比信息序列中找到一样的信息序列,则代表付款信息为重复付款。

在一个实施例中,根据业务信息基准确定的防重记录日期范围可以由默认的一天扩展到多天或全局,该范围由数据库参数IfCheckSingleHashVal控制。根据付款信息确定付款时间,并确定预先确定的扩展阈值。将付款时间与扩展阈值进行比较。若付款时间小于扩展阈值,则获取付款日期对应的前日付款数据和当日付款数据,将前日付款数据和当日付款数据作为对比数据。例如,零点后30分钟内,付款防重检查扩大范围的30分钟值支持修改,由数据库参数EarlyCheckTime控制其时间范围扩大到前一日,将前一日付款数据和当日付款数据作为对比数据。

在一个实施例中,针对实际生产中出现的某两笔付款确实存在业务信息一致的情况,会对第一笔付款单进行屏蔽业务信息防重。根据付款信息确定付款单编号和业务信息,确定业务信息一致的第一付款单和第二付款单,并确定第一付款单对应的第一付款单编号。确定预先设置的屏蔽标识字段,将屏蔽标识字段与第一付款单编号进行拼接,以得到屏蔽标识。根据屏蔽标识对第一付款单的防重检查进行屏蔽。

在一个实施例中,付款信息增加两个字段,防重检查屏蔽标识字DisableID与防重检查屏蔽标识校验位DDChk,付款单编号与DisableID进行拼接,得到屏蔽标识,计算该屏蔽标识的MD5,如果该屏蔽标识的MD5与DDChk一致,则视为防重检查屏蔽生效,开始屏蔽对第一付款单的防重检查。

在一个实施例中,预先设置防重通过记录表,并确定防重通过记录表的属性,其中,属性包括但不限于字段名称、数据类型。根据防重通过的付款信息确定记录内容,并将记录内容记录在防重通过记录表中。该防重通过记录表如下表所示:

如图2所示,本申请实施例还提供了一种基于时间及序列的业务防重系统,在该系统中,付款进入防重检查流程后,先验证防重屏蔽是否生效,若生效,则直接记录到数据库;若没有生效,则提取付款单编号与业务信息哈希值MD 5,再根据付款时间确定防重检查范围。进一步判断是否存在相间付款单编号,若存在,则该付款单重复付款,不发送至相关机构;若不存在,则判断是否存在相同哈希值,若存在,则该付款单重复付款,不发送至相关机构;若不存在,则记录到数据库。数据库中的付款单都为防重检查通过的付款单,将这些付款单发送至相关机构。

如图3所示,本申请实施例还提供了一种基于时间及序列的业务防重设备,包括:

至少一个处理器;以及,

与至少一个处理器通信连接的存储器;其中,

存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使一种基于时间及序列的业务防重设备能够执行:

提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围;

获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据;

对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

本申请实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,计算机可执行指令设置为:

提取付款信息,根据所述付款信息确定付款日期,并根据所述付款日期确定对比范围;

获取所述对比范围内的全部付款数据,将所述付款数据作为对比数据;

对所述对比数据进行查询,以对所述付款信息进行防重检查,从而判断所述付款信息是否为重复付款。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种基于金融时间序列特征的异常交易识别方法,设备及可读存储介质
  • 一种基于IM的业务交互方法、设备及存储介质
  • 一种基于多样性shapelet的时间序列早期分类方法及设备
  • 一种行人重识别方法、系统及电子设备和存储介质
  • 基于动态多元时间序列的采购业务量预测方法及电子设备
  • 基于动态多元时间序列的采购业务量预测方法及电子设备
技术分类

06120116489464