一种流水落表方法及装置
技术领域
本说明书一个或多个涉及计算机领域,尤其涉及一种流水落表方法及装置。
背景技术
目前,随着互联网技术的快速发展,由于线上支付会给用户带来一定便利性,因此,线上支付业务越来越受到人们的青睐,这将涉及到第三方支付机构与银行或基金公司进行相关支付业务,在支付完成后涉及多方资金清算的情况下,需要由对账中心服务器基于第三方支付机构上传的流水记录、以及银行或基金公司上传的流水记录,进行清算明细记录的对账。
其中,由于支付业务处理量越来越多,为了提高流水对账效率,对账中心服务器一般采用一定的流水分表规则,将第三方支付机构上传的清算流水记录与银行或基金公司上传的清算流水在同一套流水分表规则的基础上进行流水落表,进而将不同的流水号对应的清算流水记录分拆到多个流水对账表中,其中,需要确保多方的同一流水号的清算流水记录落入到同一流水对账表中,以便对同一流水号的清算流水记录进行对账处理。
然后,随着业务处理需求的不断变化,可能存在需要进行原有的流水分表规则变更的情况,例如,原有处理模式下单表量剧增,需要将清算流水记录分拆到更多的流水对账表中。当前对账处理系统中由于机构清算周期的缘故,可能存在多个对账方上传流水记录之间存在时间差,针对流水分表规则存在变更的情况,将导致某一对账方上传的某一流水号的清算流水记录采用变更前的流水分表规则进行流水落表,而另一对账方上传的同一流水号的清算流水记录采用变更后的流水分表规则进行流水落表的情况,进而导致多个对账方针对该流水号所上传的清算流水记录被分拆到不同的流水对账表中,无法完成对账处理。
具体的,为了确保多个对账方针对同一流水号所上传的清算流水记录均按照同一套流水分表规则进行流水落表操作,现有技术中,针对需要进行流水分表规则变更的情况,先暂停对多个对账方所上传的清算流水记录进行流水落表操作,并将未核对的存量流水记录人工按照变更后的流水分表规则移至对应的流水对账表中,以保证对多个对账方所上传的清算流水记录均是按照变更后的流水分表规则进行流水落表的目的。在此过程中,因流水分表规则变更将导致流水落表操作暂停,且需要对已落表但待核对的清算流水记录进行分表迁移,存在流水分表规则变更适配过程步骤繁琐、耗时较长,从而影响业务处理的时效性的问题。
因此,需要提供一种自动适配流水分表规则达到准确地、高效地进行流水落表的实现方案。
发明内容
本说明书一个或多个实施例的目的是提供一种流水落表方法及装置,不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
本说明书一个或多个实施例提供了一种流水落表方法,包括:
在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例提供了一种流水落表装置,包括:
待落表流水获取模块,用于在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
流水号判断模块,用于判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
目标规则确定模块,用于若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
流水落表操作模块,用于基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例提供了一种流水落表设备,包括:处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例中的流水落表方法及装置,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例提供的对账处理系统的应用场景示意图;
图2为本说明书一个或多个实施例提供的流水落表方法的第一种流程示意图;
图3为本说明书一个或多个实施例提供的流水落表方法的第二种流程示意图;
图4为本说明书一个或多个实施例提供的流水落表方法的第三种流程示意图;
图5为本说明书一个或多个实施例提供的流水落表方法的第四种流程示意图;
图6为本说明书一个或多个实施例提供的流水落表方法的第五种流程示意图;
图7a为本说明书一个或多个实施例提供的流水落表方法中对各对账方所上传的流水记录进行流水落表的第一种实现原理示意图;
图7b为本说明书一个或多个实施例提供的流水落表方法中对各对账方所上传的流水记录进行流水落表的第二种实现原理示意图;
图8为本说明书一个或多个实施例提供的流水落表方法的第六种流程示意图;
图9为本说明书一个或多个实施例提供的流水落表方法的第七种流程示意图;
图10为本说明书一个或多个实施例提供的流水落表装置的第一种模块组成示意图;
图11为本说明书一个或多个实施例提供的流水落表装置的第二种模块组成示意图;
图12为本说明书一个或多个实施例提供的流水落表设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个一部分实施例,而不是全部的实施例。基于本说明书一个或多个中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个保护的范围。
本说明书一个或多个实施例提供了一种流水落表方法及装置,不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
图1为本说明书一个或多个实施例提供的对账处理系统的应用场景示意图,如图1所示,该系统包括:对账中心服务器和至少两个对账方,其中,该对账中心服务器可以是用于对各对账方所上传的流水记录进行流水落表操作,并对同一流水号对应的多条流水记录进行对账处理的服务器,该对账方可以是参与支付业务的机构方的服务器,例如,第三方支付机构的服务器、银行或基金公司的服务器等等,其中,以对账方的数量为两个为例,即至少两个对账方包括:第一对账方和第二对账方,并且针对某一流水号,如果以第二对账方对与该流水号对应的第二流水记录的上传时间早于第一对账方对与该流水号对应的第一流水记录的上传时间为例,那么第二对账方所上传的与该流水号对应的第二流水记录的落表时间早于第一对账方所上传的与该流水号对应的第一流水记录的落表时间,具体的,对账处理的具体过程为:
(1)第一对账方按照第一预设规则向对账中心服务器上传各自记录的第一流水记录,其中,该第一流水记录可以是支付交易明细、清单账目明细;
(2)第二对账方按照第二预设规则向对账中心服务器上传各自记录的第二流水记录,其中,该第二流水记录也可以是支付交易明细、清单账目明细;
具体的,第一对账方和第二对账方分别针对同一笔交易行为记录第一流水记录和第二流水记录,第一对账方上传第一流水记录,第二对账方上传第二流水记录,其中,针对同一笔交易行为的第一流水记录和第二流水记录的流水号的相同,在图1中,流水记录1j表示对账方1所上传的流水号为j的流水记录,流水记录nj表示对账方n所上传的流水号为j的流水记录,流水记录1j的上传时间与流水记录nj的上传时间之间存在一定时间差;
(3)对账中心服务器接收第一对账方所上传的第一流水记录,以及第二对账方上传的第二流水记录;
(4)对账中心服务器在接收到任一流水记录后,需要对该流水记录进行落表操作,将该流水记录作为待落表的流水记录,因此,需要确定与该流水记录对应的目标流水分表规则,并基于确定出的目标流水分表规则,对该流水记录进行流水落表操作,以便将该流水记录落入至相应的流水对账表中;其中,在图1中的流水分表规则1可以是变更前的流水分表规则,流水分表规则2可以是变更后的流水分表规则,具体的,确定出的目标流水分表规则可以是流水分表规则1,还可以是流水分表规则2,也可以是其他版本的流水分表规则,目标流水分表规则的版本号主要取决于与待落表的流水记录具有相同流水号的已落表的其他流水记录采用的流水分表规则的版本号;
其中,针对需要进行流水分表规则变更的情况,由于各对账方之间上传流水记录的时间存在一定时间差,导致对账处理系统对同一流水号的不同对账方上传的流水记录的落表时间也存在一定时间差,因此,在开始使用变更后的流水分表规则时,针对采用变更前的流水分表规则进行流水落表的待核对的存量流水记录,需要对与该存量流水记录具有相同流水号的待落表的流水记录采用变更前的流水分表规则进行流水落表;
其中,针对同一流水号的多个流水记录,以最先落表的流水记录所用的流水分表规则为准,对与该最先落表的流水记录具有相同流水号的其他流水记录均采用相同的流水分表规则进行流水落表操作;
具体的,如果针对对于某一流水号,第二对账方所上传的与该流水号对应的第二流水记录的落表时间早于第一对账方所上传的与该流水号对应的第一流水记录的落表时间,即第二对账方所上传的第二流水记录为在具有该流水号的多个流水记录中最先落表的流水记录,那么在接收到第一对帐方上传的第一流水记录后,即在接收到流水落表时间非最早的对账方所上传的流水记录后,也就是说,在获取到待落表的第一流水记录后,具体包括:
A11,判断待落表的第一流水记录的流水号是否属于存量流水号集合,其中,该存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,该存量流水记录为已完成流水落表的第二对账方所上传的第二流水记录;
A12,若判断结果为是,则确定与第一流水记录的流水号对应的第二流水记录的目标流水分表规则;
也就是说,如果存量流水号集合中存在第一流水记录的流水号,则说明已采用变更前的流水分表规则对其他对账方上传的具有该流水号的流水记录进行流水落表,因此,还需要采用变更前的流水分表规则对该第一流水记录进行流水落表,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性;
A13,若判断结果为否,则将变更后的流水分表规则确定为目标流水分表规则;
也就是说,如果存量流水号集合中不存在第一流水记录的流水号,则说明流水对账表中该流水号对应的第二流水记录是采用变更后的流水分表规则进行流水落表的,因此,需要采用变更后的流水分表规则对该第一流水记录进行流水落表;
A14,基于确定出的目标流水分表规则,对第一对账方所上传的第一流水记录进行流水落表操作;
另外,也可以不进行第一流水记录的流水号是否属于存量流水号集合的判断步骤,接收第一对账方所上传的第一流水记录,即获取待落表的第一流水记录,直接基于第二对账方的流水落表操作数据,确定与该第一流水记录的流水号对应的目标规则版本号;再基于分表规则配置信息,确定与该目标规则版本号对应的目标流水分表规则;基于该目标流水分表规则,对第一流水记录进行流水落表操作,其中,该流水落表操作数据是在对第二流水记录进行流水落表操作时所记录的,该流水落表操作数据包括:第二流水记录的流水号与所用的流水分表规则的版本号之间的第一对应关系,该分表规则配置信息是在流水分表规则配置时所记录的,该分表规则配置信息包括:规则版本号与流水分表规则之间的第二对应关系;在此过程中,针对所有的第一流水记录均需要查询流水落表操作数据来确定目标流水分表规则。
对应的,如果增加第一流水记录的流水号是否属于存量流水号集合的判断步骤,则针对不属于存量流水号集合的流水号对应的第一流水记录,直接将变更后的流水分表规则确定为目标流水分表规则,只有针对属于存量流水号集合的流水号对应的第一流水记录,才基于第二对账方的流水落表操作数据,确定与该第一流水记录的流水号对应的目标规则版本号;再基于分表规则配置信息,确定与该目标规则版本号对应的目标流水分表规则,这样能够在一定程度上省去查询流水落表操作数据的耗时,从而提高流水落表效率;
其中,对账处理系统不仅接收第一对账方所上传的第一流水记录,还接收第二对账方所上传的第二流水记录,由于针对同一流水号的流水记录,以落表时间最早的具有该流水号的流水记录对应的流水分表规则为基准,如果针对对于某一流水号,第二对账方所上传的与该流水号对应的第二流水记录的落表时间早于第一对账方所上传的与该流水号对应的第一流水记录的落表时间,那么在接收到第二对账方所上传的第二流水记录后,即在接收到流水落表时间最早的对账方所上传的流水记录后,也就是说,在获取到待落表的第二流水记录后,具体包括:
B11,将变更后的流水分表规则确定为目标流水分表规则;
B12,基于该目标流水分表规则,对第二对账方所上传的第二流水记录进行流水落表操作;
(5)对账中心服务器将流水对账表中具有相同流水号的流水记录进行对账处理,以确定各对账方上传的流水记录是否一致,具体的,在确定出针对某一流水号,各对账方所上传的该流水号对应的流水记录均落入对应的流水对账表后,对该流水号对应的多个流水记录进行对账核对处理。
图2为本说明书一个或多个实施例提供的流水落表方法的第一种流程示意图,图2中的方法能够由图1中的对账中心服务器执行,如图2所示,该方法至少包括以下步骤:
S201,在流水分表规则发生变更后,获取第一对帐方所上传的待落表的第一流水记录,具体的,接收第一对账方上传的第一流水记录,如果监测到流水分表规则发生了变更,则需要对第一流水记录的流水号进行判断,以便更加快速且准确地确定该第一流水记录对应的流水分表规则;
S202,判断获取到的第一流水记录的流水号是否属于存量流水号集合;
其中,上述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,该存量流水记录为已落表的第二对账方所上传的第二流水记录;也就是说,存量流水号集合中的流水号为第二对账方已上传对应的第二流水记录的流水号,但第一对账方中至少一方还未上传对应的第一流水记录的流水号;
其中,第二对账方的流水上传时间早于第一对账方的流水上传时间,具体的,如果针对某一流水号,第二对账方对与该流水号对应的第二流水记录的上传时间早于第一对账方对与该流水号对应的第一流水记录的上传时间,那么第二对账方所上传的与该流水号对应的第二流水记录的落表时间早于第一对账方所上传的与该流水号对应的第一流水记录的落表时间;
其中,在首次使用变更后的流水分表规则之前,即在完成流水分表规则变更之前,采用变更前的流水分表规则对接收到的流水记录进行流水落表操作,在完成流水分表规则变更之后,将采用变更后的流水分表规则对接收到的流水记录进行流水落表操作,但为了保证同一流水号的多个流水记录均采用相同的流水分表规则进行流水落表,因此,对于某一流水号,如果至少一个对账方上传的具有该流水号的流水记录是采用变更前的流水分表规则进行流水落表操作的,那么其他对账方上传的具有该流水号的流水记录也应采用变更前的流水分表规则进行流水落表操作;
其中,考虑到第一对账方与第二对账方上传流水记录之间存在时间差,针对某一流水号,第二对账方已上传对应的第二流水记录,此时如果存在流水分表规则变更,但第一对账方还未上传对应的第一流水记录的情况。为了保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,在存在流水分表规则变更的情况下,以与待落表的流水记录具有相同流水号的多个流水记录中,最先落表的流水记录所用的流水分表规则为准,如果第二对账方的流水上传时间早于第一对账方的流水上传时间,即以第二对账方上传的第二流水记录所用的流水分表规则为准,对于接收到的第一对账方的第一流水记录而言,由于可能已按照变更前的流水分表规则对与该第一流水记录的流水号对应的第二流水记录进行流水落表操作,此时,虽然流水分表规则已发生变更,但为了保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,也需要基于变更前的流水分表规则对该第一流水记录进行流水落表操作;
具体的,由于在确定出存在流水分表规则变更时,流水对账表中待核对的存量流水记录即为已按照一定的流水分表规则进行流水落表的流水记录,因此,如果待落表的流水记录的流水号与存量流水记录的流水号相同,则需要确定在对与待落表的流水记录具有相同的流水号的存量流水记录进行流水落表时所用的目标流水分表规则,并将该目标流水分表规则作为用于对该待落表的流水记录进行流水落表所用的流水分表规则,具体为:
若判断结果为是,则执行S203,确定与获取到的第一流水记录的流水号对应的第二流水记录的目标流水分表规则,其中,该目标流水分表规则为在对第二流水记录进行流水落表时所用的流水分表规则,具体的,如果待落表的第一流水记录的流水号属于存量流水号集合,则将在对与该第一流水记录具有相同流水号的存量流水记录进行流水落表时所用的目标流水分表规则,确定为用于对该第一流水记录进行流水落表所用的流水分表规则;
若判断结果为否,则执行S204,将变更后的流水分表规则确定为目标流水分表规则,具体的,如果待落表的第一流水记录的流水号不属于存量流水号集合,则说明与该第一流水记录具有相同流水号的第二流水记录是流水分表规则变更完成后进行的流水落表操作,因此,将变更后的流水分表规则,确定为用于对该第一流水记录进行流水落表所用的流水分表规则;
S205,基于确定出的目标流水分表规则,对获取到的第一流水记录进行流水落表操作;
具体的,基于确定出的目标流水分表规则,确定与接收到的第一流水记录对应的目标分表位;基于该目标分表位将第一流水记录落入对应的流水对账表中。
其中,对账处理系统不仅接收第一对账方所上传的第一流水记录,还会接收第二对账方所上传的第二流水记录,如果第二对账方的流水上传时间早于第一对账方的流水上传时间,那么第二流水记录的流水落表时间早于第一流水记录的流水落表时间,并且以最先落表的流水记录所用的流水分表规则为准,因此,针对接收到的第二对账方的第二流水记录,直接将变更后的流水记录确定为目标流水分表规则,基于该目标流水分表规则,对第二流水记录进行流水落表操作。
需要说明的是,针对对账方的数量大于三个的情况,第二对账方包括:流水上传时间最早的对账方,第一对账方包括:除流水上传时间最早的对账方之外的其他对账方。
本说明书一个或多个实施例中,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
进一步的,为了提高对流水记录的流水落表效率,考虑到只有存在流水分表规则变更的情况下,并且针对待核对的存量流水记录,才可能出现不同对账方上传的同一流水号的流水记录采用不同的流水分表规则进行流水落表的问题,因此,实时监测是否存在流水分表规则变更,并且在监测到存在流水分表规则变更后,先确定存量流水号集合,基于此,如图3所示,在上述S201在流水分表规则发生变更后,获取待落表的第一对帐方所上传的第一流水记录之前,还包括:
S206,监测是否存在流水分表规则的变更操作,具体的,可以根据流水分表规则的最后更新时间是否发生变化,来确定是否存在流水分表规则的变更操作;或者,根据流水分表规则的版本信息是否发生变化,来确定是否存在流水分表规则的变更操作;
若判断结果为是,则S207,确定流水对账表中待核对的存量流水记录对应的流水号,其中,该待核对的存量流水记录是指等待进行对账处理的流水记录,只有针对某一流水号,各对账方所上传的与该流水号对应的流水记录均落表完成后,才将具有相同的多个流水号进行对账处理,因此,待核对的存量流水记录是指与其流水号对应的多个流水记录未完全落表,即至少一个对账方的具有相同流水号的流水记录还未接收到或还未完成落表,例如,针对流水号为AAA,具有流水号AAA的第二流水记录已落表完成,但具有流水号AAA的第一流水记录还未落表,此时,具有流水号AAA的第二流水记录称为存量流水记录;
具体的,可以通过查询各流水对账表,确定待核对的存量流水记录的流水号;还可以根据在首次使用变更后的流水分表规则前的最后落表的流水记录的流水号,确定待核对的存量流水记录的流水号;也可以根据在首次使用变更后的流水分表规则前的待落表的第一流水记录的最小流水号对应的第二流水记录的历史落表时间,确定待核对的存量流水记录的流水号;
S208,将确定出的各流水号的集合确定为存量流水号集合。
其中,对于待核对的存量流水记录而言,说明已采用变更前的流水分表规则对上传时间最早的对账方所上传的流水记录进行流水落表操作,因此,针对上传时间并非最早的其他对账方所上传的与该存量流水记录的流水号相同的其他流水记录,均采用变更前的流水分表规则对该其他流水记录进行流水落表操作。具体的,在确定出存在流水分表规则变更的情况下,确定由当前的所有待核对的存量流水记录的流水号组成的存量流水号集合,以便后续基于上述步骤S202识别出需要采用变更前的流水分表规则进行流水落表操作的流水记录。
进一步的,考虑到在确定用于对流水记录进行流水落表所用的流水分表规则时,以与该流水记录具有相同流水号的最先落表的流水记录所用的流水分表规则为准,而针对最先落表的流水记录直接采用变更后的流水分表规则进行流水落表,基于此,为了提高流水落表效率,在接收到第一对账方上传的第一流水记录后,还包括:
判断第一对账方是否为流水上传时间最早的对账方,即确定第一对帐方上传的流水记录的流水落表时间是否早于其他对账方上传的具有相同流水号的流水记录的流水落表时间;
若判断结果为否,则执行判断第一流水记录的流水号是否属于存量流水号集合的步骤;
具体的,如果第一对账方不是流水上传时间最早的对账方,因此,在确定用于对第一流水记录进行流水落表所用的流水分表规则时,以与该第一流水记录具有相同流水号的最先落表的流水记录所用的流水分表规则为准;
若判断结果为是,则将变更后的流水记录确定为目标流水分表规则;
具体的,如果第一对账方是流水上传时间最早的对账方,则直接采用变更后的流水分表规则进行流水落表。
进一步的,又考虑到在流水分表规则变更完成后,具有某一流水号的最先落表的流水记录按照变更后的流水分表规则进行流水落表,因此,针对某一次流水分表规则的变更,当与存量流水记录具有相同的流水记录均流水落表完成后,再接收到的流水记录均按照变更后的流水分表规则进行落表即可,基于此,为了提高流水落表效率,在上述S203确定与获取到的第一流水记录的流水号对应的第二流水记录的目标流水分表规则之后,还包括:
从存量流水号集合中,删除与获取到的第一流水记录的流水号相同的存量流水号,直到存量流水号集合变为空;
若存量流水号集合为空,则在接收到第一流水记录或者第二流水记录后,即在获取到待落表的第一流水记录或者第二流水记录后,均直接将变更后的流水分表规则确定为目标流水分表规则;
具体的,当存量流水号集合为空时,说明已完成因流水分表规则变更引起的自动化为流水记录适配流水分表规则的过程,后续针对接收到的流水记录均需要按照变更后的流水分表规则进行流水落表,因此,可以停止执行S202判断该第一流水记录的流水号是否属于存量流水号集合的步骤。
其中,针对目标流水分表规则的确定过程,如图4所示,上述S203确定与获取到的第一流水记录的流水号对应的第二流水记录的目标流水分表规则,具体包括:
S2031,获取针对第二对账方上传的第二流水记录所生成的流水落表操作数据,其中,该流水落表操作数据包括:对账流水记录的流水号与流水分表规则的版本号之间的第一对应关系;
具体的,在对第二对账方所上传的第二流水记录进行流水落表操作时,先确定用于对第二流水记录进行流水落表所用的流水分表规则,并记录第二流水记录的流水号与所用的流水分表规则的版本号之间的映射关系,即记录第一对应关系;
再基于确定出的流水分表规则,对第二流水记录进行流水落表操作,其中,针对第二对账方为流水上传时间最早的对账方的情况,直接将更新后的流水分表规则,确定为用于对第二流水记录进行流水落表所用的流水分表规则;
S2032,根据流水落表操作数据中的第一对应关系,确定与获取到的第一流水记录的流水号对应的目标规则版本号;
具体的,在第一对应关系中,查找包含待落表的第一流水记录的流水号的一条数据记录,将该条数据记录中包含的规则版本号确定为目标规则版本号;
S2033,将确定出的目标规则版本号对应的流水分表规则确定为目标流水分表规则。
其中,针对基于目标规则版本号确定目标流水分表规则的过程,如图5所示,上述S2033将确定出的目标规则版本号对应的流水分表规则确定为目标流水分表规则,具体包括:
S20331,获取针对分表规则配置所记录的规则版本号与流水分表规则之间的第二对应关系;
具体的,在进行流水分表规则配置或变更时,记录规则版本号与流水分表规则之间的映射关系,即记录第二对应关系;
S20332,根据获取到的第二对应关系,确定与目标规则版本号对应的目标流水分表规则;
具体的,在第二对应关系中,查找包含目标规则版本号的一条数据记录,将该条数据记录中包含的流水分表规则确定为目标流水分表规则。
其中,由于在目标规则版本号的过程中需要参考流水落表操作数据,基于此,针对流水落表操作数据的生成过程,具体包括:
在接收到第二对账方上传的第二流水记录后,基于当前最新版本的流水分表规则,对该第二流水记录进行流水落表操作;
根据第二流水记录的流水号与当前最新版本的流水分表规则的版本号之间的对应关系,生成第二对账方对应的流水落表操作数据;
具体的,由于第二对账方为在具有相同流水号的多个流水记录中最先落表的流水记录的上传方,为了及时响应流水分表规则的变更,直接将当前最新版本的流水分表规则作为用于对第二流水记录进行流水落表所用的流水分表规则;
同时,由于需要以具有相同流水号的多个流水记录中最先落表的流水记录所用的流水分表规则为准,因此,需要记录第二流水记录的流水号与当前最新版本的流水分表规则的版本号之间的映射关系,即上述第一对应关系;再根据该第一对应关系更新针对第二对账方所生成的流水落表操作数据。
另外,针对不知道哪个对账方的流水上传时间最早的情况,在基于当前最新版本的流水分表规则,对接收到的第二流水记录进行流水落表操作之前,还包括:
接收第二对帐方所上传的第二流水记录;以及判断流水对账表中是否存在具有该第二流水记录的流水号的其他流水记录;若不存在,则执行基于当前最新版本的流水分表规则,对该第二流水记录进行流水落表操作的步骤。
进一步的,针对存量流水号集合的确定过程,为了提高存量流水号集合的确定效率,并非逐一查询流水对账表中存在的待核对的存量流水记录,而是通过如下两种实现方式能够准确地、快速地确定出存量流水号集合,具体为:
第一种实现方式,结合在首次使用变更后的流水分表规则前的最后落表的流水记录的流水号,确定已落表的第二流水记录且未落表的第一流水记录的流水号,基于此,如图6所示,上述S207确定流水对账表中待核对的存量流水记录对应的流水号,具体包括:
S2071,确定待落表的第一流水记录的最小流水号,其中,该最小流水号是指当前首个待落表的第一流水记录的流水号,即向流水对账表中最后一个落表的第一流水记录的流水号的下一个流水号,对应的,存量流水号集合中的首个流水号为该最小流水号;另外,针对第一对账方的数量为多个的情况,该第一流水记录为具有相同流水号的多个流水记录中流水上传时间最晚的第一对账方所上传的流水记录;以及,
S2072,确定已落表的第二流水记录的最大流水号,其中,该最大流水号是指当前尾个落表的第二流水记录的流水号,即向流水对账表中最后一个落表的第二流水记录的流水号,对应的,存量流水号集合中的尾个流水号为该最大流水号;
S2073,将上述最小流水号、位于上述最小流水号和上述最大流水号之间的流水号、以及最大流水号,确定为待核对的存量流水记录对应的流水号。
具体的,通过查询流水号上传顺序列表,即可确定出位于上述最小流水号和上述最大流水号之间的流水号,进而确定待核对的存量流水记录的流水号;
其中,上述存量流水号集合中不包括最后一个落表的第一流水记录的流水号,即上述最小流水号的上一个流水号,但包括最后一个落表的第二流水记录的流水号,即上述最大流水号,该最后一个流水落表的第二流水记录是指最后一个采用变更前的流水分表规则进行流水落表操作的第二流水记录。
在一个具体实施例中,如图7a所示,给出了对各对账方所上传的流水记录进行流水落表的第一种实现原理示意图,具体为:
上述对账处理系统中的至少两个对账方包括:对账方1和对账方2,其中,对账方2的流水上传时间早于对账方1的流水上传时间,因此,对账方2的流水落表进度快于对账方1的流水落表进度;对账方1相当于上述第一对账方、对账方2相当于上述第二对账方;
其中,流水记录1j表示对账方1所上传的流水号为j的流水记录,流水记录2j表示对账方2所上传的流水号为j的流水记录;
具体的,由图7a可知,待落表的第一流水记录的最小流水号为对账方1所上传的流水记录1b的流水号(即流水号b),已落表的第二流水记录的最大流水号为对账方2所上传的流水记录2j的流水号(即流水号j);因此,待核对的存量流水记录对应的流水号包括:流水号b,…,流水号j,即存量流水号集合为{流水号b,…,流水号j},也就是说,流水号为{流水号b,…,流水号j}中任一个的流水记录需要按照变更前的流水分表规则进行流水落表操作。
同样的,针对对账方的数量大于三个的情况,上述最小流水号为上传时间最晚的第一对账方所上传的流水记录的流水号,这样能够确保存量流水号集合中包括所有的当前需要采用变更前的流水分表规则进行流水落表的流水号;
在另一个具体实施例中,如图7b所示,给出了对各对账方所上传的流水记录进行流水落表的第二种实现原理示意图,具体为:
上述对账处理系统中的至少两个对账方包括:对账方1、对账方2、对账方3,其中,针对同一流水号的流水记录的上传时间的先后顺序为:对账方3、对账方2、对账方1,即对账方3的流水上传时间早于对账方2的流水上传时间,对账方2的流水上传时间早于对账方1的流水上传时间,因此,针对同一流水号的流水记录的落表时间的先后顺序为:对账方3、对账方2、对账方1,即对账方3的流水落表进度快于对账方2的流水落表进度,即对账方2的流水落表进度快于对账方1的流水落表进度;其中,对账方1、对账方2均相当于上述第一对账方、对账方3相当于上述第二对账方;
其中,流水记录1j表示对账方1所上传的流水号为j的流水记录,流水记录2j表示对账方2所上传的流水号为j的流水记录,流水记录3j表示对账方3所上传的流水号为j的流水记录;
具体的,由图7b可知,待落表的第一流水记录的最小流水号为对账方1所上传的流水记录1b的流水号(即流水号b),也就是说,该最小流水号为上传时间最晚的对账方1所上传的流水记录1b的流水号;已落表的第二流水记录的最大流水号为对账方3所上传的流水记录3j的流水号(即流水号j);因此,待核对的存量流水记录对应的流水号包括:流水号b,…,流水号j,即存量流水号集合为{流水号b,…,流水号j},也就是说,流水号为{流水号b,…,流水号j}中任一个的流水记录需要按照变更前的流水分表规则进行流水落表操作。
第二种实现方式,考虑到可能存在并不是按照流水号的排列顺序进行流水落表的情况,因此,为了保证确定出的存量流水号集合的准确度,还可以基于落表时间来确定存量流水号集合,即结合在首次使用变更后的流水分表规则前的待落表的第一流水记录的最小流水号对应的第二流水记录的历史落表时间、以及规则变更完成时间,确定已落表的第二流水记录且未落表的第一流水记录的流水号,基于此,如图8所示,上述S207确定流水对账表中待核对的存量流水记录对应的流水号,具体包括:
S2074,确定待落表的第一流水记录的最小流水号,其中,该最小流水号是指当前首个待落表的第一流水记录的流水号,即向流水对账表中最后一个落表的第一流水记录的流水号的下一个流水号;其中,针对第一对账方的数量为多个的情况,该第一流水记录为具有相同流水号的多个流水记录中流水上传时间最晚的第一对账方所上传的流水记录;
S2075,确定与上述最小流水号对应的第二流水记录的历史落表时间,其中,该历史落表时间是指对具有上述最小流水号的第二流水记录执行流水落表操作的历史时间信息;
S2076,将自历史落表时间至规则变更完成时间的时间段内所落表的多个第二流水记录的流水号,确定为待核对的存量流水记录对应的流水号。
具体的,通过查询第二对账方的流水落表操作数据,即可确定出自历史落表时间至规则变更完成时间的时间段内的所有第二流水记录的流水号,进而确定待核对的存量流水记录的流水号。
在一个具体实施例中,仍以图7a为例,待落表的第一流水记录的最小流水号为对账方1所上传的流水记录1b的流水号(即流水号b),与该最小流水号对应的第二流水记录为对账方2所上传的流水记录2b,通过查询第二对账方的流水落表操作数据,即可确定自流水记录2b的历史落表时间至规则变更完成时间的时间段内的所有第二流水记录的流水号,因此,待核对的存量流水记录对应的流水号包括:流水号b,…,流水号j,即存量流水号集合为{流水号b,…,流水号j},也就是说,流水号为{流水号b,…,流水号j}中任一个的流水记录需要按照变更前的流水分表规则进行流水落表操作。
同样的,针对对账方的数量大于三个的情况,上述最小流水号为上传时间最晚的第一对账方所上传的流水记录的流水号,这样能够确保存量流水号集合中包括所有的当前需要采用变更前的流水分表规则进行流水落表的流水号;
在另一个具体实施例中,仍以图7b为例,待落表的第一流水记录的最小流水号为对账方1所上传的流水记录1b的流水号(即流水号b),与该最小流水号对应的第二流水记录为对账方3所上传的流水记录3b,通过查询第二对账方的流水落表操作数据,即对账方3的流水落表操作数据,即可确定自流水记录3b的历史落表时间至规则变更完成时间的时间段内的所有第二流水记录的流水号,因此,待核对的存量流水记录对应的流水号包括:流水号b,…,流水号j,即存量流水号集合为{流水号b,…,流水号j},也就是说,流水号为{流水号b,…,流水号j}中任一个的流水记录需要按照变更前的流水分表规则进行流水落表操作。
其中,在针对同一流水号将各对账方所上传的对应的流水记录均完成流水落表操作后,需要对同一流水号对应的多个流水记录进行对账处理,以确定各对账方所上传的流水记录是否准确,基于此,如图9所示,在上述S205基于确定出的目标流水分表规则,对获取到的第一流水记录进行流水落表操作之后,还包括:
S209,将已落表的第一流水记录与具有相同流水号的待核对的第二流水记录进行对账处理;
S210,根据得到的对账处理结果,确定第一流水记录和第二流水记录是否相同;
若判断结果为是,则执行S211,确定第一对账方与第二对账方针对该流水号所上传的流水记录一致;
若判断结果为否,则执行S212,确定第一对账方与第二对账方针对该流水号所上传的流水记录不一致。
具体的,仍以图7a为例,在将流水记录1j落入至对应的流水对账表后,即将流水记录1j落入流水记录2j所在的流水对账表,将流水记录1j和流水记录2j进行对账处理;
对应的,对图7b为例,在将流水记录1j落入至对应的流水对账表,以及将流水记录2j落入至对应的流水对账表后,即将流水记录1j和流水记录2j均落入流水记录3j所在的流水对账表,将流水记录1j、流水记录2j和流水记录3j进行对账处理。
在一个具体实施例中,下述表1为流水分表规则与规则版本号之间的映射关系,即第二对应关系,具体为:
表1
其中,由上述表1可知,在2018-11-28 11:00发生了流水分表规则的变更,如果针对同一流水号的对账流水记录,对账方2的流水上传时间早于对账方1的流水上传时间,因此,以对账方2所上传的流水记录2所用的流水分表规则为准,确定用于对对账方1所上传的流水记录1进行流水落表的目标流水分表规则;
具体的,下述表2为对对账方2上传的流水记录2进行流水落表时所记录的流水落表操作数据,具体为:
表2
其中,上述表2中记录有针对流水号1、流水号2、流水号3、流水号4对应的对账方2所上传的流水记录进行流水落表的流水落表明细,由于2018-11-28 11:00发生了流水分表规则的变更,因此,对于落表时间在2018-11-28 11:00之后的流水号3、流水号4对应的流水记录采用变更后的流水分表规则进行流水落表,即采用规则版本号为2的流水分表规则,对流水号3、流水号4对应的流水记录进行流水落表;
而对于落表时间在2018-11-28 11:00之前的流水号1、流水号2对应的流水记录采用变更前的流水分表规则进行流水落表,即采用规则版本号为1的流水分表规则,对流水号1、流水号2对应的流水记录进行流水落表;
具体的,下述表3为对对账方1上传的流水记录1进行流水落表时所记录的流水落表操作数据,具体为:
表3
具体的,对流水11、流水12、流水13、流水14分别进行流水落表,得到上述表3的过程具体为:
在监测到存在流水分表规则变更后,即在当前时间为2018-11-28 11:00后,确定流水对账表中待核对的存量流水记录对应的流水号包括:对账方2所上传的流水21的流水号1、以及对账方2所上传的流水22的流水号2,即存量流水号集合为{流水号1、流水号2};
在确定出存量流水号集合后,在当前时间为2018-11-28 11:00后,对接收到的流水11、流水12、流水13、流水14进行流水落表;
(1)针对接收到的对账方1上传的流水11,确定该流水11的流水号1属于存量流水集合;
基于表2所示的流水落表操作数据(即上述第一对应关系),可知与该流水11的流水号1对应的目标规则版本号为版本号1;
基于表1所示的流水分表规则配置数据(即第二对应关系),可知与版本号为1对应的流水分表规则为流水号最后两位=00/01/XX/99,即流水号1对应的流水21的目标流水分表规则为版本号为1的流水分表规则;
基于版本号为1的流水分表规则,对对账方1上传的流水11进行流水落表操作。
(2)针对接收到的对账方1上传的流水12,确定该流水12的流水号2属于存量流水集合;
基于表2所示的流水落表操作数据(即上述第一对应关系),可知与该流水12的流水号2对应的目标规则版本号为版本号1;
基于表1所示的流水分表规则配置数据(即第二对应关系),可知与版本号为1对应的流水分表规则为流水号最后两位=00/01/XX/99,即流水号2对应的流水22的目标流水分表规则为版本号为1的流水分表规则;
基于版本号为1的流水分表规则,对对账方1上传的流水12进行流水落表操作;
(3)针对接收到的对账方1上传的流水13,确定该流水13的流水号3不属于存量流水集合;
基于版本号为2的流水分表规则,对对账方1上传的流水13进行流水落表操作;
(4)针对接收到的对账方1上传的流水14,确定该流水14的流水号4也不属于存量流水集合;
基于版本号为2的流水分表规则,对对账方1上传的流水14进行流水落表操作。
其中,基于上述表3和表2可知,对于具有相同的流水号的流水记录1和流水记录2所适配的分表位是相同的,因此,确保了具有同一流水号的流水记录1和流水记录2落入相同的流水对账表中。
本说明书一个或多个实施例中的流水落表方法,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
对应上述图2至图9描述的流水落表方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种流水落表装置,图10为本说明书一个或多个实施例提供的流水落表装置的第一种模块组成示意图,该装置用于执行图2至图9描述的流水落表方法,如图10所示,该装置包括:
待落表流水获取模块1001,用于在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
流水号判断模块1002,用于判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
目标规则确定模块1003,用于若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
流水落表操作模块1004,用于基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例中,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
可选地,如图11所示,上述装置还包括存量集合确定模块1005,用于:
监测是否存在流水分表规则的变更操作;
若判断结果为是,则确定流水对账表中待核对的存量流水记录对应的流水号;
将确定出的各所述流水号的集合确定为存量流水号集合。
可选地,所述目标规则确定模块1003,具体用于:
获取针对所述第二对账方上传的第二流水记录所生成的流水落表操作数据,其中,所述流水落表操作数据包括:对账流水记录的流水号与流水分表规则的版本号之间的第一对应关系;
根据所述第一对应关系,确定与所述第一流水记录的所述流水号对应的目标规则版本号;
将所述目标规则版本号对应的流水分表规则确定为目标流水分表规则。
可选地,所述目标规则确定模块1003,具体进一步用于:
获取针对分表规则配置所记录的规则版本号与流水分表规则之间的第二对应关系;
根据所述第二对应关系,确定与所述目标规则版本号对应的目标流水分表规则。
可选地,所述装置还包括落表操作数据生成模块1006,用于:
在接收到第二对帐方所上传的第二流水记录后,基于当前最新版本的流水分表规则,对所述第二流水记录进行流水落表操作;
根据所述第二流水记录的流水号与所述当前最新版本的流水分表规则的版本号之间的对应关系,生成所述第二对账方对应的流水落表操作数据。
可选地,所述存量集合确定模块1005,具体用于:
确定待落表的第一流水记录的最小流水号;以及,
确定已落表的第二流水记录的最大流水号;
将确定出的所述最小流水号、所述最大流水号、以及位于所述最小流水号和所述最大流水号之间的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,所述存量集合确定模块1005,还具体用于:
确定待落表的第一流水记录的最小流水号;
确定与所述最小流水号对应的第二流水记录的历史落表时间;
将自所述历史落表时间至规则变更完成时间的时间段内所落表的多个第二流水记录的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,所述装置还包括流水对账操作模块1007,用于:
将已落表的所述第一流水记录与具有相同流水号的待核对的第二流水记录进行对账处理;
根据对账处理结果,确定所述第一流水记录和所述第二流水记录是否相同;
若是,则确定所述第一对账方与所述第二对账方针对所述流水号所上传的流水记录一致。
本说明书一个或多个实施例中的流水落表装置,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
需要说明的是,本说明书中关于流水落表装置的实施例与本说明书中关于流水落表方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的流水落表方法的实施,重复之处不再赘述。
进一步地,对应上述图2至图9所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种流水落表设备,该设备用于执行上述的流水落表方法,如图12所示。
流水落表设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1201和存储器1202,存储器1202中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1202可以是短暂存储或持久存储。存储在存储器1202的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对流水落表设备中的一系列计算机可执行指令。更进一步地,处理器1201可以设置为与存储器1202通信,在流水落表设备上执行存储器1202中的一系列计算机可执行指令。流水落表设备还可以包括一个或一个以上电源1203,一个或一个以上有线或无线网络接口1204,一个或一个以上输入输出接口1205,一个或一个以上键盘1207等。
在一个具体的实施例中,流水落表设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对流水落表设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例中,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
可选地,计算机可执行指令在被执行时,在判断所述第一流水记录的流水号是否属于存量流水号集合之前,还包括:
监测是否存在流水分表规则的变更操作;
若判断结果为是,则确定流水对账表中待核对的存量流水记录对应的流水号;
将确定出的各所述流水号的集合确定为存量流水号集合。
可选地,计算机可执行指令在被执行时,所述确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则,包括:
获取针对所述第二对账方上传的第二流水记录所生成的流水落表操作数据,其中,所述流水落表操作数据包括:对账流水记录的流水号与流水分表规则的版本号之间的第一对应关系;
根据所述第一对应关系,确定与所述第一流水记录的所述流水号对应的目标规则版本号;
将所述目标规则版本号对应的流水分表规则确定为目标流水分表规则。
可选地,计算机可执行指令在被执行时,所述将所述目标规则版本号对应的流水分表规则确定为目标流水分表规则,包括:
获取针对分表规则配置所记录的规则版本号与流水分表规则之间的第二对应关系;
根据所述第二对应关系,确定与所述目标规则版本号对应的目标流水分表规则。
可选地,计算机可执行指令在被执行时,在获取针对所述第二对账方上传的第二流水记录所生成的流水落表操作数据之前,还包括:
在接收到第二对帐方所上传的第二流水记录后,基于当前最新版本的流水分表规则,对所述第二流水记录进行流水落表操作;
根据所述第二流水记录的流水号与所述当前最新版本的流水分表规则的版本号之间的对应关系,生成所述第二对账方对应的流水落表操作数据。
可选地,计算机可执行指令在被执行时,所述确定流水对账表中待核对的存量流水记录对应的流水号,包括:
确定待落表的第一流水记录的最小流水号;以及,
确定已落表的第二流水记录的最大流水号;
将确定出的所述最小流水号、所述最大流水号、以及位于所述最小流水号和所述最大流水号之间的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,计算机可执行指令在被执行时,所述确定流水对账表中待核对的存量流水记录对应的流水号,包括:
确定待落表的第一流水记录的最小流水号;
确定与所述最小流水号对应的第二流水记录的历史落表时间;
将自所述历史落表时间至规则变更完成时间的时间段内所落表的多个第二流水记录的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,计算机可执行指令在被执行时,在基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作之后,还包括:
将已落表的所述第一流水记录与具有相同流水号的待核对的第二流水记录进行对账处理;
根据对账处理结果,确定所述第一流水记录和所述第二流水记录是否相同;
若是,则确定所述第一对账方与所述第二对账方针对所述流水号所上传的流水记录一致。
本说明书一个或多个实施例中的流水落表设备,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
需要说明的是,本说明书中关于流水落表设备的实施例与本说明书中关于流水落表方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的流水落表方法的实施,重复之处不再赘述。
进一步地,对应上述图2至图9所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
在流水分表规则发生变更后,获取第一对账方所上传的待落表的第一流水记录;
判断所述第一流水记录的流水号是否属于存量流水号集合,其中,所述存量流水号集合包括:在确定出存在流水分表规则变更时流水对账表中待核对的存量流水记录的流水号,所述存量流水记录为已落表的第二对账方所上传的第二流水记录;
若判断结果为是,则确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则;
基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作。
本说明书一个或多个实施例中,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在判断所述第一流水记录的流水号是否属于存量流水号集合之前,还包括:
监测是否存在流水分表规则的变更操作;
若判断结果为是,则确定流水对账表中待核对的存量流水记录对应的流水号;
将确定出的各所述流水号的集合确定为存量流水号集合。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述确定与所述第一流水记录的所述流水号对应的第二流水记录的目标流水分表规则,包括:
获取针对所述第二对账方上传的第二流水记录所生成的流水落表操作数据,其中,所述流水落表操作数据包括:对账流水记录的流水号与流水分表规则的版本号之间的第一对应关系;
根据所述第一对应关系,确定与所述第一流水记录的所述流水号对应的目标规则版本号;
将所述目标规则版本号对应的流水分表规则确定为目标流水分表规则。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述将所述目标规则版本号对应的流水分表规则确定为目标流水分表规则,包括:
获取针对分表规则配置所记录的规则版本号与流水分表规则之间的第二对应关系;
根据所述第二对应关系,确定与所述目标规则版本号对应的目标流水分表规则。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在获取针对所述第二对账方上传的第二流水记录所生成的流水落表操作数据之前,还包括:
在接收到第二对帐方所上传的第二流水记录后,基于当前最新版本的流水分表规则,对所述第二流水记录进行流水落表操作;
根据所述第二流水记录的流水号与所述当前最新版本的流水分表规则的版本号之间的对应关系,生成所述第二对账方对应的流水落表操作数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述确定流水对账表中待核对的存量流水记录对应的流水号,包括:
确定待落表的第一流水记录的最小流水号;以及,
确定已落表的第二流水记录的最大流水号;
将确定出的所述最小流水号、所述最大流水号、以及位于所述最小流水号和所述最大流水号之间的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述确定流水对账表中待核对的存量流水记录对应的流水号,包括:
确定待落表的第一流水记录的最小流水号;
确定与所述最小流水号对应的第二流水记录的历史落表时间;
将自所述历史落表时间至规则变更完成时间的时间段内所落表的多个第二流水记录的流水号,确定为待核对的存量流水记录对应的流水号。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在基于所述目标流水分表规则,对所述第一流水记录进行流水落表操作之后,还包括:
将已落表的所述第一流水记录与具有相同流水号的待核对的第二流水记录进行对账处理;
根据对账处理结果,确定所述第一流水记录和所述第二流水记录是否相同;
若是,则确定所述第一对账方与所述第二对账方针对所述流水号所上传的流水记录一致。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,在存在流水分表规则变更的情况下,获取基于流水对账表中待核对的存量流水记录的流水号确定出的存量流水号集合,针对具有该存量流水号集合中的任一流水号的第一流水记录,先确定针对具有该流水号的第二流水记录进行流水落表时所用的目标流水分表规则,再按照该目标流水分表规则对该第一流水记录进行流水落表操作,从而实现在流水落表时自动化为流水记录适配流水分表规则,这样不仅能够保证具有同一流水号的第一流水记录和第二流水记录采用相同的流水分表规则进行流水落表,还能够针对存在流水分表规则变更的情况,提高流水落表的处理效率,进而提高业务处理的时效性。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于流水落表方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的流水落表方法的实施,重复之处不再赘述。
在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)、HD Cal、JHDL(Java Hardware Description Language)、Lava、Lola、My HDL、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),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书一个或多个的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书一个或多个的实施例而已,并不用于限制本说明书一个或多个。对于本领域技术人员来说,本说明书一个或多个可以有各种更改和变化。凡在本说明书一个或多个的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个的权利要求范围之内。