资金结算数据的处理方法及相关设备与流程

文档序号:35498804发布日期:2023-09-20 03:20阅读:24来源:国知局
资金结算数据的处理方法及相关设备与流程

本发明涉及数据处理,尤其涉及一种资金结算数据的处理方法及相关设备。


背景技术:

1、目前,在资金结算中,存在很多并发下的余额扣减方式。

2、在相关技术中,通过利用redis(remote dictionary server,远程字典服务器)主从策略架构实现并发下的余额扣减,当对某个分片式数据库主机redis master实例写入了mylock锁的value,此时会异步复制给对应的主从master slave实例,但是,在这个过程中,如果发生redis master宕机,主备会进行切换,分片式数据库从机redis slave变为了redis master,从而导致导致多个客户端对一个分布式锁完成了加锁,进而导致系统在业务语义上出现了问题,导致各种脏数据的产生,其中,脏数据表示一个数据已经被修改,但是还没有保存或进一步的处理。

3、由此可知,分片式数据库集群redis cluster或者分片式数据库主从策略redismaster-slave架构的主从异步复制导致的redis分布式锁在redis master实例宕机的时候,可能导致多个客户端同时完成加锁。

4、在实际应用中,资金结算方在进行资金结算的同时,用户对产品已经付款的交易做退款操作,此时,资金结算方、该产品对应的项目方和用户都已经同时完成了加锁,因此,在进行结算和退款操作时会产生各种脏数据,在并发的操作下,产品的一部分资金即被结算给项目方,又被退款给用户,从而导致项目资金余额不正确,造成资损。


技术实现思路

1、有鉴于此,本发明实施例提供一种资金结算数据的处理方法及相关设备,以实现保证资金余额的准确性的目的。

2、为实现上述目的,本发明实施例提供如下技术方案:

3、本发明实施例第一方面公开了一种资金结算数据的处理方法,应用于服务端,所述方法包括:

4、接收针对任一项目由不同终端发起的资金操作请求,所述资金操作请求包括待操作的资金信息、资金操作类型和当前项目维度的锁信息,所述锁信息在所述项目上架时基于项目维度预先创建;

5、针对每一资金操作请求,进行验证操作;所述验证操作包括:在读取到所述当前项目维度的锁信息时,根据所述资金操作类型和所述待操作的资金信息进行资金验证;

6、响应于资金操作请求验证通过,在预先建立的交易表中写入所述待操作的资金信息,并向发起资金操作请求的终端发送反馈信息,使所述终端基于所述反馈信息执行相应操作。

7、可选的,所述接收针对任一项目由不同终端发起的资金操作请求,包括:

8、接收业务系统发送的某一项目的退款交易信息,以及接收结算系统发送的所述项目的结算交易信息;

9、所述退款交易信息包括当前退款金额、退款交易类型和所述当前项目维度的锁信息,所述锁信息在所述项目上架时基于项目维度预先创建;

10、所述结算交易信息包括本次放款总额和所述当前项目维度的锁信息。

11、可选的,所述针对每一资金操作请求,进行验证操作,包括:

12、针对所述退款交易信息,在读取到所述当前项目维度的锁信息时,根据所述退款交易类型和所述当前退款金额进行金额验证;

13、响应于资金操作请求金额验证通过,在所述交易表中写入所述退款交易信息,并向所述业务系统发送允许退款反馈信息,使所述业务系统基于所述允许退款反馈信息进行退款操作;

14、针对所述结算交易信息,在读取到所述当前项目维度的锁信息时,对所述本次放款总额进行金额验证;

15、响应于资金操作请求金额验证通过,在所述交易表中写入所述结算交易信息,并向所述结算系统发送允许结算反馈信息,使所述结算系统基于所述允许结算反馈信息进行结算操作。

16、可选的,所述在根据所述退款交易类型和所述当前退款金额进行金额验证的过程中,以及所述对所述本次放款总额进行金额验证的过程中,还包括:

17、响应于资金操作请求金额验证不通过,执行以下任一项:

18、向所述业务系统发送不允许退款反馈信息;

19、向所述结算系统发送不允许结算反馈信息。

20、可选的,所述针对所述退款交易信息,在读取到所述当前项目维度的锁信息时,根据所述退款交易类型和所述当前退款金额进行金额验证,包括:

21、针对所述退款交易信息,在读取到所述当前项目维度的锁信息时,当所述退款交易类型为预定义项目,基于所述退款交易信息从所述业务系统中获取当前时刻募集总金额;

22、根据所述当前时刻募集总金额,判断是否允许退款。

23、可选的,所述针对所述退款交易信息,在读取到所述当前项目维度的锁信息时,根据所述退款交易类型和所述当前退款金额进行金额验证,包括:

24、针对所述退款交易信息,在读取到所述当前项目维度的锁信息时,当所述退款交易类型为非预定义项目,基于所述退款交易信息从所述业务系统中获取当前时刻募集总金额,以及获取所述服务端的退款金额、放款金额、退款冲回金额及放款驳回金额;

25、利用所述当前时刻募集总金额、正向金额、负向金额和所述当前退款金额进行阈值计算,得到基础阈值;所述正向金额为所述退款金额与所述放款金额的和值,所述负向金额为所述退款冲回金额与所述放款驳回金额的和值;

26、根据所述基础阈值和预设阈值,判断是否允许退款。

27、可选的,还包括:

28、接收所述业务系统发送的所述项目的退款驳回交易信息,所述退款驳回交易信息由所述业务系统基于所述不允许退款反馈信息生成,所述退款驳回交易信息包括所述当前退款金额、所述退款交易类型,以及所述当前项目维度的锁信息;

29、针对所述退款驳回交易信息,在读取到所述当前项目维度的锁信息时,根据所述退款交易类型和所述当前退款金额进行金额验证;

30、响应于资金操作请求金额验证通过,在所述交易表中写入所述退款驳回交易信息,并向所述业务系统发送退款驳回反馈信息,使所述业务系统基于所述退款冲回反馈信息进行退款驳回操作。

31、可选的,所述针对所述结算交易信息,在读取到所述当前项目维度的锁信息时,对所述本次放款总额进行金额验证,包括:

32、针对所述结算交易信息,在读取到所述当前项目维度的锁信息时,基于所述结算交易信息从所述业务系统中获取当前时刻募集总金额,并计算所述项目的当前余额;其中,所述项目的当前余额=所述当前时刻募集总金额-所述正向金额+所述负向金额;

33、根据所述项目的当前余额和所述本次放款总额的差值,判断是否允许放款。

34、可选的,还包括:

35、接收所述结算系统发送的所述项目的结算驳回交易信息,所述结算驳回交易信息由所述结算系统基于所述不允许结算反馈信息生成,所述结算驳回交易信息包括所述本次放款总额和所述当前项目维度的锁信息;

36、针对所述结算驳回交易信息,在读取到所述当前项目维度的锁信息时,对所述本次放款总额进行金额验证;

37、响应于资金操作请求金额验证通过,在所述交易表中写入所述结算驳回交易信息,并向所述结算系统发送结算驳回反馈信息,使所述结算系统基于所述结算驳回反馈信息进行结算驳回操作。

38、本发明实施例第二方面公开了一种资金结算数据的处理装置,应用于服务端,所述装置包括:

39、接收模块,用于接收针对任一项目由不同终端发起的资金操作请求,所述资金操作请求包括待操作的资金信息、资金操作类型和当前项目维度的锁信息,所述锁信息在所述项目上架时基于项目维度预先创建;

40、验证模块,用于针对每一资金操作请求,进行验证操作;

41、所述进行验证操作的所述验证模块包括:

42、第一验证单元,用于在读取到所述当前项目维度的锁信息时,根据所述资金操作类型和所述待操作的资金信息进行资金验证,响应于资金操作请求验证通过,执行第一处理单元;

43、所述第一处理单元,用于在预先建立的交易表中写入所述待操作的资金信息,并向发起资金操作请求的终端发送反馈信息,使所述终端基于所述反馈信息执行相应操作。

44、本发明实施例第三方面公开了一种资金结算数据的处理系统,所述系统包括:服务端和终端;

45、所述终端,用于针对任一项目向所述服务端发起资金操作请求,接收所述服务端基于所述资金操作请求发送的反馈信息,并基于所述反馈信息执行相应操作,所述资金操作请求包括待操作的资金信息、资金操作类型和当前项目维度的锁信息,所述锁信息在所述项目上架时基于项目维度预先创建;

46、所述服务端,用于接收针对任一项目由不同所述终端发起的资金操作请求;针对每一资金操作请求,进行验证操作;

47、所述验证操作包括:

48、在读取到所述当前项目维度的锁信息时,根据所述资金操作类型和所述待操作的资金信息进行资金验证;

49、响应于资金操作请求验证通过,在预先建立的交易表中写入所述待操作的资金信息,并向发起资金操作请求的终端发送反馈信息,使所述终端基于所述反馈信息执行相应操作。

50、本发明实施例第四方面公开了一种电子设备,包括处理器和存储器;

51、所述存储器,用于存储计算机程序;

52、所述处理器,用于调用并执行所述存储器中存储的计算机程序时,实现如本发明实施例第一方面中任一项所述的资金结算数据的处理方法。

53、本发明实施例第五方面公开了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如本发明实施例第一方面中任一项所述的资金结算数据的处理方法。

54、基于上述本发明实施例提供的一种资金结算数据的处理方法及相关设备,所述方法包括:接收针对任一项目由不同终端发起的资金操作请求,所述资金操作请求包括待操作的资金信息、资金操作类型和当前项目维度的锁信息,所述锁信息在所述项目上架时基于项目维度预先创建;针对每一资金操作请求,进行验证操作;所述验证操作包括:在读取到所述当前项目维度的锁信息时,根据所述资金操作类型和所述待操作的资金信息进行资金验证;响应于资金操作请求验证通过,在预先建立的交易表中写入所述待操作的资金信息,并向发起资金操作请求的终端发送反馈信息,使所述终端基于所述反馈信息执行相应操作。在本方案中,通过接收到不同终端发起的资金操作请求,在读取到当前项目维度的锁信息时,进行资金验证,并将反馈信息发送至终端,使终端利用反馈信息执行相应操作,从而保证资金余额的准确性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1