CN108764876A - 一种交易处理方法及服务器 - Google Patents

一种交易处理方法及服务器 Download PDF

Info

Publication number
CN108764876A
CN108764876A CN201810534782.5A CN201810534782A CN108764876A CN 108764876 A CN108764876 A CN 108764876A CN 201810534782 A CN201810534782 A CN 201810534782A CN 108764876 A CN108764876 A CN 108764876A
Authority
CN
China
Prior art keywords
transaction request
account
transaction
target
list
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.)
Pending
Application number
CN201810534782.5A
Other languages
English (en)
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.)
Shenzhen Launch Technology Co Ltd
Original Assignee
Shenzhen Launch Technology 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 Shenzhen Launch Technology Co Ltd filed Critical Shenzhen Launch Technology Co Ltd
Priority to CN201810534782.5A priority Critical patent/CN108764876A/zh
Publication of CN108764876A publication Critical patent/CN108764876A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种交易处理方法及服务器,其中,方法包括:接收目标用户的交易请求;根据所述交易请求获取目标账号列表,所述目标账号列表包含至少两个账号的账号信息;根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求。还公开了相应的服务器。本发明可以帮助用户快速查找到能够用于完成交易的账号,若未查找到便将交易请求拆分成多个子交易请求,由多个账号同时来完成交易,从而提供了一种灵活的交易处理方式,能够有效的提高交易的成功率和效率。

Description

一种交易处理方法及服务器
技术领域
本发明涉及互联网技术领域,尤其涉及一种交易处理方法及服务器。
背景技术
随着科技的进步以及电子商务的发展,越来越多的企业和个人都开始习惯在网上进行交易,例如进行网上订单或者网络支付等。但是在网上进行交易的时候,往往会出现用户的单个账号不足以完成支付,或者企业的存货不能满足用户的需求等情况。
例如在进行网络支付过程中,人们往往会绑定银行卡或者直接将钱充值到终端设备上的支付应用中,然后通过该支付应用来进行网上支付。于是我们可以在支付时选择与支付应用绑定的其中一张银行卡或者选择支付应用中的余额来进行支付。在付款时,若交易金额较大,支付可能会因为银行卡或者支付应用中的余额不足而失败,在这种情况下,用户就需要反复重新选择支付方式,或者,直接查询银行卡的余额,从而选择一张余额充足的银行卡。
可以看出在现实应用中的交易的成功率和效率较低,缺少一种灵活的交易处理方式来提升交易的成功率。
发明内容
本发明实施例提供一种交易处理方法及服务器,能够有效地提升交易的成功率及交易的效率。
第一方面,本发明实施例提供了一种交易处理方法,所述方法包括:
接收目标用户的交易请求;根据所述交易请求获取目标账号列表,所述目标账号列表包含至少两个账号的账号信息;根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求。
结合第一方面,在第一方面的第一种实现中:
所述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;所述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额;
所述根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求,包括:
存在相同的项目类别下,所述交易请求的交易数额大于所述目标账号列表中的任一个账号的供货数额,则将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于所述交易请求的交易数额。
结合第一方面的第一种实现,在第一方面的第二种实现中:
所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求之前,还包括:在任一个相同的项目类别下,确定所述交易数额小于或等于所述目标账号列表中的账号的供货数额的总和。
结合第一方面的第一种实现,在第一方面的第三种实现中:
所述交易请求和所述账号信息都只含有一个相同的项目类别;所述目标账号列表中的账号按照所述项目类别对应的供货数额的大小排列;
所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求之前,还包括:
确定所述交易数额大于最大的供货数额。
结合第一方面的第三种实现,在第一方面的第四种实现中,所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,包括:
按照所述目标账号列表中的账号的供货数额的大小对所述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
第二方面,本发明提供了一种服务器,包括:
接收单元,用于接收目标用户的交易请求;获取单元,用于根据所述交易请求获取目标账号列表,所述目标账号列表包含至少两个账号的账号信息;执行单元,用于根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个的子交易请求。
结合第二方面,在第二方面的第一种实现中,所述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;所述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额;
所述服务器还包括确定单元,所述确定单元用于确定在任一个相同的项目类别下,所述交易请求的交易数额是否大于所述目标账号列表中的任一个账号的供货数额;
所述执行单元,用于存在相同的项目类别下,若所述交易请求的交易数额大于所述目标账号列表中的任一个账号的供货数额,则将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于所述交易请求的交易数额。
结合第二方面的第一种实现,在第二方面的第二种实现中,所述确定单元,还用于在任一个相同的项目类别下,确定所述交易数额是否小于或等于所述目标账号列表中的账号的供货数额的总和。
结合第二方面的第一种实现,在第二方面的第三种实现中:
所述交易请求和所述账号信息都只含有一个相同的项目类别;所述目标账号列表中的账号按照所述项目类别对应的供货数额的大小排列;
所述确定单元,还用于确定所述交易数额是否大于最大的供货数额。
结合第二方面的第三种实现,在第二方面的第四种实现中,所述执行单元,用于按照所述目标账号列表中的账号的供货数额的大小对所述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
第三方面,本发明实施例提供了另一种服务器,包括处理器,通信接口以及存储器,所述处理器、通信接口和存储器通过总线相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用以执行上述第一方面的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行,用以执行上述第一方面的方法。
通过实施本发明实施例,服务器如果接收到了目标用户的交易请求,则可以根据接收到的目标用户的交易请求来获取到目标账号列表,然后再从目标账号列表中选择一个可以满足目标用户的交易请求所要求的交易数额的账号,也可以选择多个账号一同用于完成交易,即将一个大额的交易请求拆分成多个小额的子交易请求。因此本发明可以帮助用户快速选择能够用于完成交易的账号,并且在未查找到这样一个账号的情况下,能够将一个大额的交易请求拆分成多个小额的子交易请求,从而提供了一种灵活的交易处理方式,能够有效的提高交易的成功率和效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明实施例提供的一种交易处理方法的示意流程图;
图2是本发明实施例提供的另一种交易处理方法的示意流程图;
图3是本发明实施例提供的另一种交易处理方法的示意流程图;
图4是本发明实施例提供的一种服务器的示意性框图;
图5是本发明实施例提供的一种服务器的结构性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
由于科技的进步以及互联网的发展,网上交易越来越普及。虽然网上交易相比传统的线下交易省时省力,但是网上交易也并不是完美的,仍然会出现单个账号的供货能力不足以满足用户的需求的情况,例如大额交易容易失败,大额交易包括大额支付,大额订单等。
具体的,由于理财方式的多样化,以及不同支付软件商家之间的竞争,用户的存款往往不会存在一张银行卡或者一个支付软件中。于是当我们需要支付一笔较大的金额的订单,却在选择支付方式时选中了一张余额不足的银行卡时,我们不得不重新选择支付方式,直到选中一张余额充足的账户,甚至于任一个账户中的余额都不足以支付该订单。可以看出,大额支付是一个现实存在的无法避免的问题,且这个问题使得支付的效率大大降低,也不利于进一步推动网上支付的普及。同样的,除了上述大额支付以外,大额订单也容易失败,在用户急需某一产品,并且需求量比较大的时候,需要紧急联系所有的合作商家或者在网上一个个查询合作商家的存货,但这样以来很浪费时间,最后还很有可能没有任何一家公司的存货可以满足用户的需求时,该大额订单就容易失败。
为了解决上述问题,本发明实施例提供了一种交易处理方法及服务器,可以帮助用户快速找到用于完成交易的合适的账号,若未找到便将一个交易请求拆分成多个子交易请求,由多个账号同时来完成交易。于是通过将一个大额交易分为几个小额交易,从而提高了大额交易的成功率和交易的效率。
为了能够更好地理解本发明实施例,下面将对应用本发明实施例的方法进行介绍,本发明实施例可以应用于在支付时如何将一个高额支付交易细分为多个小额支付交易的场景中。
具体的,用户在商家进行消费时,用户用手机或者商家用收款设备向服务器发出一个交易请求,该交易请求包含用户的身份标识,以及商家的法人的身份标识,还包括用户需要进行付款的交易数额,此外,交易请求中也可以包含用户选择的用于付款的指定账号。当服务器在收到该交易请求之后,如果交易请求中包含指定账号,则服务器首先检测该指定账号的余额是否充足,充足则利用该指定账户完成支付,否则服务器根据其中用户的身份标识查找目标账号列表,其中目标账号列表记录了该用户的多个账号的标识和每个账号对应的余额,且账号按照账号的余额的大小排序,于是服务器将目标账号列表中的最大余额与上述交易数额进行比较,若交易数额大于上述最大余额,则说明该用户的账号中没有一个账号的余额是足够用以完成该交易请求的,因此需要将该交易请求拆分成几个子交易请求,从而从多个账号里面分别扣除一部分金额,使得总的扣除的金额等于上述交易数额。
除了上述的应用场景以外,本发明实施例还可以应用于如何将一个大额订单交易细分为多个小额订单交易的场景中。
具体的,用户在网上下了一个大额订单,于是向服务器发送一个交易请求,该交易请求中除了用户的身份标识,还包含了多个需要的产品的名称,和需要的每个产品对应的数量,此外,交易请求中也可以包含用户选择进行交易的指定公司的账号。于是服务器在收到该交易请求之后,如果交易请求中包含指定公司的账号,则服务器首先检测该指定公司的账号的是否包含了交易请求所要求的所有产品,以及含有的每个相同的产品对应的数量是否大于或者等于交易请求所要求的数量,若是则利用该指定公司的账号以及上述交易请求生成订单,若否则根据其中用户的身份标识查找目标账号列表,其中目标账号列表记录了可以与该用户的进行交易的多个公司的账号以及产品的存货情况,若在目标账号列表中没有一个账号含有交易请求中所要求的所有产品,和/或者含有的每个相同产品的数量小于交易请求所要求的数量,则说明目标账号列表中没有一个账号可以满足该交易请求的需求,因此需要将该交易请求拆分成几个子交易请求,从而利用多个账号分别提供交易请求中的一部分需求,从而满足交易请求中对于每个产品的数量需求。
本发明主要应用于服务器,可以是传统服务器、大型存储系统、台式电脑、笔记本电脑、平板电脑、掌上电脑、智能手机、便携式数字播放器、智能手表以及智能手环等等,本发明对此不做限制。
作为一种可能的方式,本发明所描述的方法还可以结合区块链进行实现。区块链是一种按照时间顺序将数据区块相连的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。区块链的特性有开放、共识、去中心、去信任、透明、双方匿名、不可篡改以及可追溯等。其中,开放与透明意为任何人都可以参与到区块链网络,每一台设备都能作为一个节点,每个节点都允许获得一份完整的数据库拷贝。节点基于一套共识机制,通过竞争计算共同维护整个区块链。任一节点失效,其余节点仍能正常工作。其中,去中心化与去信任意为区块链由众多节点共同组成一个端到端的网络,不存在中心化的设备和管理机构。节点之间数据交换通过数字签名技术进行验证,无需互相信任,只要按照系统既定的规则进行,节点之间不能也无法欺骗其他节点。其中,透明与双方匿名意为区块链的运行规则是公开的,所有的数据信息也是公开的,因此每一笔交易都对所有节点可见。由于节点与节点之间是去信任的,因此节点之间无需公开身份,每个参与的节点都是匿名的。其中,不可篡改和可追溯意为每个甚至多个节点对数据库的修改无法影响其他节点的数据库,除非能控制整个网络中超过51%的节点同时修改,这是几乎不可能发生的。区块链中的,每一笔交易都通过密码学方法与相邻两个区块串联,因此可以追溯到任何一笔交易的前世今生。
具体的,区块链可以利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。因此,区块链技术不可篡改的特性从根本上改变了中心化的信用创建方式,有效提高了数据的不可更改性以及安全性。其中,由于智能合约使得所有的条款编写为程序,这些条款可在区块链上自动执行,保证了当存在触发智能合约的条件时,区块链能强制根据智能合约中的内容执行,且不受任何外力阻挡,从而保证了合约的有效性和执行力,不仅能够大大降低成本,也能提高效率。区块链上的各个节点都有相同的账本,能够确保账本记录过程是公开透明的。区块链技术可以实现了一种点对点的、公开透明的直接交互,使得高效率、大规模、无中心化代理的信息交互方式成为了现实。
本发明实施例可以应用于区块链节点服务器,而作为区块链节点服务器的类型有很多,可以是传统服务器、大型存储系统、台式电脑、笔记本电脑、平板电脑、掌上电脑、智能手机、便携式数字播放器、智能手表以及智能手环等等。其中,区块链节点服务器为根据共识机制确定的区块链网络中的其中一个服务器。应理解,由于区块链是一个去中心化的分布式数据库,所以每次处理数据都需要选出区块链网络中的其中一个服务器作为执行者来处理数据。而每次选取服务器的规则便是共识机制,本发明实施例中共识机制可以是工作量证明机制(Proof of Work,POW)、股权证明机制(Proof of Stake,POS)、瑞波共识机制(Ripple Consensus)以及授权股权证明机制(Delegated Proof of Stake,DPOS)等,在此不作限定。本发明实施例中,终端包括但不限于带通讯功能的设备、智能手机、平板电脑、笔记本电脑、台式电脑、便携式数字播放器、智能手环以及智能手表等。
本发明实施例中,原始数据为终端上传到区块链节点服务器进行存储的数据。其中,原始数据为终端按照预设格式进行记录的,应理解,数据的内容包括时间、地点、类型等特性。终端可以根据预设格式将数据的这些特性进行记录,从而生成发给区块链节点服务器的原始数据。
本应用场景结合了区块链,通过区块链的开放、共识、去中心、去信任、透明、双方匿名、不可篡改以及可追溯等特点,使得利用几个账户之间进行完成一个高额交易成为可能,因为区块链去信任、透明、双方匿名、不可篡改以及可追溯等使得交易的效率、可靠性以及安全性等大大提升,从而使得这样将一个大额交易分成几个小额交易的操作成为可能。
请参阅图1,图1是本发明实施例公开的一种交易处理方法的示意流程图,该方法应用于服务器,如图所示方法可包括:
101:接收目标用户的交易请求。
在本发明实施例中,服务器接收目标用户的交易请求,即接收交易发起方为目标用户的交易请求,但发送该交易请求的主体可以是含有目标用户的标识的终端设备、其他终端设备、服务器或者云存储设备,本发明实施例对此不做限定。其中,交易请求包含目标用户的标识,用于向服务器发起交易的请求。
需要说明的是,目标用户的标识为可以确认目标用户的身份唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合,本发明实施例对此不做限定。
102:根据上述交易请求获取目标账号列表,目标账号列表包含至少两个账号的账号信息。
在本发明实施例中,上述目标账号列表包含了至少两个账号的账号信息,且目标账号列表中包含的账号为可以用于与目标用户进行交易的账户。
需要说明的是,上述交易请求包含目标用户的标识,于是上述根据交易请求获取目标账号列表指的是,服务器在目标用户发起交易请求之前就生成该目标账号列表,于是服务器可以根据目标用户的标识获取目标账号列表。
在本发明实施例中,在目标用户发起交易请求之前,目标用户可以与多个交易方达成长期交易协议,于是服务器收集这些与目标用户达成长期交易协议的交易方的账号标识以及账号标识对应的账号信息,来生成目标账号列表。于是,在目标用户的交易请求中可以包含除了目标用户的交易方的账号标识,也可以不包含。
可选的,上述交易请求还包括至少一个除了目标用户的交易方的账号标识;在服务器获取到上述目标账号列表之前,服务器根据上述账号标识查找账号信息,并生成上述目标账号列表。
在本发明实施例中,上述交易请求可以包含至少一个除了目标用户的交易方的账号的账号标识,于是在服务器接收到目标用户的交易请求之后便可以根据该账号标识查找账号信息,从而生成一个目标账号列表。于是,服务器在用户发起交易请求之后再根据该交易请求生成目标账号列表。
进一步的,服务器在接收到目标用户的交易请求时,检测该交易请求中是否有除了目标用户以外的交易方的账号标识,若含有则根据该除了目标用户以外的交易方的账号标识生成目标账号列表,反之直接获取在接收到目标用户的交易请求之前就已生成的目标账号列表。
在本发明实施例中,可以结合以上两种生成目标账号列表的方式。具体的,若目标用户选择了至少一个交易方,并且交易请求中包含了该至少一个交易方的账号标识,于是服务器根据该至少一个的交易方的账号标识查找对应的账号信息,以生成目标账号列表,若用户未选择特定的交易方,则说明目标用户选择长期合作的交易方进行交易,则服务器在接收到目标用户的交易请求之后获取已经生成的目标账号列表,在该目标账号列表中的账号所属的用户为与目标用户长期合作,或者制定了长期合作协议的交易方。
103:根据上述交易请求和上述目标账号列表将上述交易请求拆分成至少两个子交易请求。
在本发明实施例中,上述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;上述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额。于是存在相同的项目类别下,上述交易请求的交易数额大于上述目标账号列表中的任一个账号的供货数额,则将上述交易请求拆分成与上述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于上述交易请求的交易数额。
在本发明实施例中,目标用户可以向服务器发起交易请求,该交易请求用于完成支付,或者生成订单。在交易请求在用于完成支付的时候,交易请求中的项目类别只有一个即货币,对应的交易数额即需要支付的金额,如果该交易数额大于了目标账号列表中的每个账号的供货数额即余额,则说明该交易请求为大额交易,需要拆分成多个子交易请求使得与多个账号一一对应,从而将一个大额支付拆分成多个小额支付,提高了交易的成功率和效率。
同样的,交易请求若用于生成订单的话,交易请求中可以含有一个或者多个项目类别,若含有多个项目类别则说明目标用户同时需要多个种类的产品,当服务器接收到该交易请求,则在目标账号列表中查找可以一次性满足目标用户所有需求的账号,即该账号含有所有交易请求中所含有的项目类别,以及在每个相同项目类别下,账号的供货数额大于交易请求的交易数额。若服务器未查找到可以一次性满足目标用户所有需求的账号,则将该交易请求拆分成多个子交易请求使得与目标账号列表中的多个账号一一对应,从而将一个大额订单拆分成多个小额订单,提高了交易的成功率以及效率。
需要说明的是,上述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额,上述目标账号列表包含的账号的账号信息包括账号标识,一个或者多个项目类别,以及项目类别对应的供货数额,其中,账号的标识和用户的标识分别为可以确认账号唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合,本发明实施例对此不做限定。上述项目类别用于描述交易的内容,可以为货币,或者产品等,在相同的项目类别下,上述交易数额和上述供货数额分别为目标用户需要该项目类别所描述的内容的数量,和账号所属企业或个人能提供该项目类别所描述的内容的数量,例如产品的数量或者货币的数量等,其中,货币可以是贵金属货币,纸币,虚拟货币等,产品可以是现实产品或者虚拟产品(例如线下服务,线上产品或者服务等),其中,现实产品可以是已经生产出来的或者还未被生产出来的,于是产品的数量为产品的现货数量或者用于衡量产品生产能力,本发明实施例对产品的种类不做限定。
进一步的,上述账号信息还包括用户标识。
需要说明的是,上述目标账号列表中包含的每个账号的账号标识各不相同,但是可能存在用户标识相同的账号,如果其中两个账号的用户标识相同,说明该两个账号属于同一个用户。因此,目标账号列表中的账号可以属于同一个用户,或者存在至少两个账号属于同一个用户,甚至所有账号属于同一个用户,本发明实施例对此不做限定。其中,用户标识为确认用户的身份唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合。
举例来说,目标用户买了一辆车,于是目标用户向服务器上传了一个交易请求用于完成网上支付,目标用户可以在向服务器发起交易请求的同时选择一个用于支付的账号也可以不选择,在用户选择了用于支付的账号而服务器检测到目标用户选择的账号中的余额不足以完成支付,或者用户并未选择用于支付的账号,于是服务器获取目标用户的目标账号列表,该目标账号列表中记载了用户的多个账号,以及每个账号对应的余额,于是服务器在该目标账号列表中检测是否有单个账号的余额足以完后支付,若没有,则说明该交易请求为一个大额交易,需要进行拆分。然后服务器通过将该交易请求拆分成多个子交易请求,使得每个子交易请求与上述目标账号列表中的至少两个账号一一对应,从而将一个大额的交易请求拆分成多个子交易请求,从而提高交易的成功率。
另一个举例,目标用户分别需要产品A、B和C各a、b和c件,然后目标用户向服务器上传了一个交易请求,该交易请求中包含了产品A、B和C,以及A、B和C分别对应的数量a、b和c,同样的,目标用户可以在向服务器发起交易请求的同时选择一个想要进行交易的公司的账号也可以不选择,在用户选择了想要进行交易的公司的账号情况下,而服务器检测到该公司的账号的产品A、B和/或C对应的数量不能满足目标用户的需求,或者用户并未选择想要进行交易的公司的账号,于是服务器获取目标用户的目标账号列表,该目标账号列表中记载了多个账号,以及每个账号包含多个产品,以及每个产品对应的数量,需要说明的是,每个账号可以属于不同公司,或者部分账号属于相同的公司,或者所有账号属于一个公司。然后服务器检测该目标账号列表中,是否有单个账户含有产品A、B和C,并且数量类别分别大于a、b和c,若没有,则说明该交易请求为一个大额交易,需要进行拆分。然后服务器通过将该交易请求拆分成多个子交易请求,使得每个子交易请求与上述目标账号列表中的至少两个账号一一对应,并且所有子交易请求有关产品A的数量的总和为a,有关产品B的数量的总和为c,有关产品C的数量的总和为c,从而将一个大额的交易请求拆分成多个子交易请求,从而提高交易的成功率。
进一步的,在上述拆分之前,确定在任一个相同的项目类别下,上述交易数额小于或等于上述目标账号列表中的账号的供货数额的总和。
在本发明实施例中,为了进一步的提升交易的成功率,在执行拆分交易请求之前,除了确定目标账号列表中不存在单个账号可以满足交易请求的需要以外,还需要判断目标账号列表中的所有账号,在每个交易请求中要求的项目类别下的供货数额的总数是否大于交易数额,若是,则执行拆分,且保证拆分之后的子交易请求能达到原始的交易请求中的要求,即交易请求中要求的每个项目类别下,子交易请求的供货数额大于交易请求的交易数额。
进一步的,若上述交易请求和上述目标账号列表的账号的账号信息都只含有一个相同的项目类别,且上述目标账号列表中的账号按照上述项目类别对应的供货数额的大小排列;于是在拆分之前,确定在该项目类别下,交易请求的交易数额大于最大的供货数额。
在本发明实施例中,为了进一步的简化在拆分之前的比较工作,当项目类别只有一种的时候,服务器可以预先将目标账号列表中的账号按照该项目类别下的供货数额按照大小排列,例如从大到小排列,以此以来,服务器可以在判断是否拆分交易请求之前,快速获取目标账号列表中最大的供货数额,然后与交易请求中的交易数额进行比较,当交易数额大于最大的供货数额的时候,说明需要拆分交易请求,反之则不需要拆分。
进一步的,按照上述目标账号列表中的账号的供货数额的大小对上述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
在本发明实施例中,服务器尽量的依照供货数额较大的账号对交易请求进行拆分,为了使得拆分的子交易请求的数量最少,可以利用贪心算法计算最优解,即在多种可能的拆分方案中选择拆分得到的子交易请求个数最少的方案。或者,当项目类别只有一种的时候,服务器可以预先将目标账号列表中的账号按照该项目类别下的供货数额按照大小排列,例如从大到小排列,然后从含有最大的供货数额的账号开始拆分交易请求,直到拆分的子交易请求的交易数额的总和等于原始的交易请求的交易数额。
举例来说,在开始拆分大额支付的交易请求时,按照余额最大的账户开始拆分(账户从大到小排列),第一个子交易请求的交易数额等于第一账户的全部余额,第二个子交易请求的交易数额等于第二账户的全部余额......第(N-1)个子交易请求的交易数额等于第(N-1)账户的全部余额,以及第N个子交易请求的交易数额等于第N账户的部分或者全部余额,使得上述N个子交易请求的交易数额的总和等于未拆分之前的交易请求的交易数额。
进一步的,上述项目类别对应有标注信息,标注信息包括现货和预约。
在本发明实施例中,尽量在拆分上述交易请求时,在相同项目类别下,首先在目标账号列表中获取项目类别对应的标注信息为现货的账号,这样在拆分交易请求的时候可以尽量与含有现货的公司达成订单,如果没有充足的现货,才在具有产品生产能力的公司预定需要数量的产品,从而达成订单。这样就能保证目标用户能尽快的获得需要数量的产品。
举例来说,当服务器接收到目标用户的交易请求中的A产品的交易数额为10件,服务器首先在目标账号列表中查询含有产品A,且A产品对应的标注信息为现货的账号,若查询到账号1对应产品A有现货5件,显然不足以满足目标客户需要10件A的需求,于是服务器再在目标账号列表中查询含有产品A,且产品A对应的标注信息为预约的账号,若服务器查询到账号2对应产品A有非现货5件,于是将目标用户的交易请求分为两个订单,分别为对应账号1的5件产品A的第一子交易订单,和对应账号2的5件产品A的第二子交易订单。
进一步的,在上述根据交易请求和目标账号列表将交易请求拆分成至少两个子交易请求之后,根据子交易请求获取子目标账号列表;根据子目标账号列表和上述子目标账号列表将该子目标账号列表生成一个或者多个副交易请求。
需要说明的是,目标账号类别中的一部分账号所属的公司可能是具有产品生产能力,而没有产品现货的公司,甚至其中一部分公司不能完全自主生产出成品的能力,而需要其他公司提供中间产品再进行组合加工,于是可以在子交易请求的基础上进一步的拆分,得到副交易请求。于是,在将交易请求拆分成与目标账号列表中的至少两个账号一一对应的子交易请求之后,若服务器检测到存在有子交易请求对应的账号所属的公司不具有完全自主生产的能力,于是获取组成该子交易请求中的项目类别所描述的产品的半成品的列表,并获取子目标账号列表,再根据上述子交易请求以及子目标账号列表中的账号的账号信息,生成至少一个副交易请求,该副交易请求用于为不具有完全自主生产成品的公司与生产或者具有半成品的公司达成订单。其中,子目标账号列表可以与目标账号列表相同,也可以不同。参考上述将交易请求拆分成多个子交易请求的过程,具体的拆分方法不再赘述。
需要说明的是,在副交易请求的基础上还可以进一步的拆分或者生成新的交易请求,具体的,在子目标账号列表中不存在单个账号能满足副交易请求的需求,就将该副交易请求再次拆分成多个该副交易请求的子交易请求,或者,在确定副交易请求对应的账号,或者确定副交易请求拆分之后的子交易请求对应的账号之后,若该对应的账号所属的公司为上述不具有完全自主生产成品的公司的话,可以在该副交易请求或者该副交易请求的子交易请求的基础上,生成新的订单,用于提供组成该副交易请求中的描述的半成品的更小的半成品。因此本发明实施例提供的方法可以多次拆分上述大额的交易请求,直到最终拆分得到小额的交易请求能够被成功执行且满足目标用户的需求,本发明实施例对此不做限制。
举例来说,上述举例中的第二子交易订单对应的账号2所属的公司不具备完全自主生产A的能力,则需要从其他公司获取生产A的半成品B和半成品C,而1件B和2件C可以生产1件A。那么在上述生成第二子交易订单之后,服务器再获取子目标账号列表,该子目标账号列表至少包含两个账号的信息。服务器可以利用该子目标账号列表和上述第二子交易订单再生成至少一个的副交易请求,使得所有副交易请求中有关半成品B的总和和半成品C的总和分别等于5件和10件,即再委托具其他公司提供半成品B和半成品C,若生产半成品的公司也不能完全自主生产半成品B和半成品C,则在上述副交易请求的基础上再生成至少一个的副交易请求的副交易请求。
通过实施本发明实施例,服务器如果接收到了目标用户的交易请求,可以根据接收到的目标用户的交易请求来获取到目标账号列表,在该目标账号列表中的账号都可以用于与目标用户进行交易,服务器可以从目标账号列表中选择一个可以满足目标用户的交易请求所要求的交易数额的账号,但也可以选择多个账号一同用于完成交易,即将一个大额的交易请求拆分成多个小额的子交易请求,因此通过本发明可以将一个交易请求拆分成多个子交易请求,由多个账户同时来完成交易,因此提供了一种灵活的交易处理方式,能够有效的提高交易的成功率和效率。
请参阅图2,图2是本发明实施例公开的另一种交易处理方法的示意流程图,该方法为在上一个实施例所描述的方法与区块链的结合,应用于服务器,如图所示方法可包括:
201:接收目标用户的交易请求,并将交易请求记录在区块链中。
在本发明实施例中,上述将交易请求记录在区块链指的是,利用区块链技术将交易请求存储在区块链中。具体的,区块链由多个区块按时间轴连接而成,区块链之所以称之为链是因为区块具有连续性。而区块是一种记录数据的数据结构,由区块头和区块主体组成。区块主体即数据部分只负责记录前一段时间内存储的数据信息,区块链的大部分功能都由区块头实现。上述区块具有连续性在于,前一个区块的区块头的数据经过哈希(hash)运算产生一个哈希值,然后将其写入后一个区块的区块头中。从创世区块开始,每个区块都进行如此操作,所以区块具有连续性,同时也在一个方面说明区块的不可篡改与可追溯的特性。因此,服务器能够将数据记录在区块链中,以保障数据具有开放性、不可篡改性以及匿名性等优点,相应的,在本发明实施例中服务器能够将交易请求记录在区块链。
202:根据上述交易请求获取目标账号列表和智能合约,目标账号列表包含至少两个账号的账号信息。
在本发明实施例中,上述智能合约是由自动化脚本代码组成的,记录了当交易请求满足条件时所需要执行的内容。
203:执行上述智能合约,根据上述交易请求和上述目标账号列表,将上述交易请求分成至少两个子交易请求。
在本发明实施例中,由于智能合约是由自动化脚本代码组成的,因此当满足智能合约的触发条件时,智能合约便可以被自动触发执行,而不受外界操作改变和操作等,在本法实施例中该触发智能合约的条件为接收到交易请求。于是,服务器可以利用智能合约将上交易请求拆分成多个子交易请求,并保证拆分过程的透明和安全性等。
本发明实施例通过结合区块链技术以保证交易的安全以及透明,将大额交易拆分成多个小额交易,从而可以在用户在请求进行大额交易的时候,灵活的结合多个账户来拆分交易请求,进一步的提高了大额交易的成功率及交易的效率。
请参阅图3,图3是本发明实施例公开的另一种交易处理方法的示意流程图,该方法应用于服务器,如图所示方法可包括:
301:接收目标用户的交易请求,该交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额。
在本发明实施例中,服务器接收目标用户的交易请求,即接收交易发起方为目标用户的交易请求,但发送该交易请求的主体可以是含有目标用户的标识的终端设备、其他终端设备、服务器或者云存储设备,本发明实施例对此不做限定。其中,交易请求包含目标用户的标识,用于向服务器发起交易的请求。
需要说明的是,目标用户的标识为可以确认目标用户的身份唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合,本发明实施例对此不做限定。
还需要说明的是,上述交易请求还包含一个或者多个项目类别,以及每个项目类别对应的交易数额,其中,上述项目类别用于描述交易的内容,可以为货币,或者产品等,某一个项目类别对应的交易数额,为目标用户需要该项目类别所描述的内容的数量,例如产品的数量或者货币的数量等,其中,货币可以是贵金属货币,纸币,虚拟货币等,产品可以是现实产品或者虚拟产品(例如线下服务,线上产品或者服务等),其中,现实产品可以是已经生产出来的或者还未被生产出来的,于是产品的数量为产品的现货数量或者用于衡量产品生产能力,本发明实施例对产品的种类不做限定。
302:根据上述交易请求获取目标账号列表,目标账号列表包含至少两个账号的账号信息,账号信息包含一个或者多个项目类别,以及每个项目类别对应的供货数额。
在本发明实施例中,上述目标账号列表包含了至少两个账号的账号信息,且目标账号列表中包含的账号为可以用于与目标用户进行交易的账户。
需要说明的是,上述交易请求包含目标用户的标识,于是上述根据交易请求获取目标账号列表指的是,服务器在目标用户发起交易请求之前就生成该目标账号列表,于是服务器可以根据目标用户的标识获取目标账号列表。
还需要说明的是,上述目标账号列表包含的账号的账号信息还包括账号标识,一个或者多个项目类别,以及项目类别对应的供货数额,其中,账号的标识和用户的标识分别为可以确认账号唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合,本发明实施例对此不做限定。上述项目类别用于描述交易的内容,可以为货币,或者产品等,某一个项目类别对应的供货数额,为账号所属企业或个人能提供该项目类别所描述的内容的数量,例如产品的数量或者货币的数量等,其中,货币可以是贵金属货币,纸币,虚拟货币等,产品可以是现实产品或者虚拟产品(例如线下服务,线上产品或者服务等),其中,现实产品可以是已经生产出来的或者还未被生产出来的,于是产品的数量为产品的现货数量或者用于衡量产品生产能力,本发明实施例对产品的种类不做限定。
在本发明实施例中,在目标用户发起交易请求之前,目标用户可以与多个交易方达成长期交易协议,于是服务器收集这些与目标用户达成长期交易协议的交易方的账号标识以及账号标识对应的账号信息,来生成目标账号列表。于是,在目标用户的交易请求中可以包含除了目标用户的交易方的账号标识,也可以不包含。
可选的,上述交易请求还包括至少一个除了目标用户的交易方的账号标识;在服务器获取到上述目标账号列表之前,服务器根据上述账号标识查找账号信息,并生成上述目标账号列表。
在本发明实施例中,上述交易请求可以包含至少一个除了目标用户的交易方的账号的账号标识,于是在服务器接收到目标用户的交易请求之后便可以根据该账号标识查找账号信息,从而生成一个目标账号列表。于是,服务器在用户发起交易请求之后再根据该交易请求生成目标账号列表。
进一步的,服务器在接收到目标用户的交易请求时,检测该交易请求中是否有除了目标用户以外的交易方的账号标识,若含有则根据该除了目标用户以外的交易方的账号标识生成目标账号列表,反之直接获取在接收到目标用户的交易请求之前就已生成的目标账号列表。
在本发明实施例中,可以结合以上两种生成目标账号列表的方式。具体的,若目标用户选择了至少一个交易方,并且交易请求中包含了该至少一个交易方的账号标识,于是服务器根据该至少一个的交易方的账号标识查找对应的账号信息,以生成目标账号列表,若用户未选择特定的交易方,则说明目标用户选择长期合作的交易方进行交易,则服务器在接收到目标用户的交易请求之后获取已经生成的目标账号列表,在该目标账号列表中的账号所属的用户为与目标用户长期合作,或者制定了长期合作协议的交易方。
303:存在相同的项目类别下,上述交易请求中的交易数额大于上述目标账号列表中的任一个账号的供货数额?
在本发明实施例中,若是则执行步骤304或者步骤305,若否则获取目标账号列表中能够满足交易请求中每个项目类别对应的交易数额的账号,并将该账号与上述交易请求关联,再进一步生成订单。
在本发明实施例中,上述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;上述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额。于是存在相同的项目类别下,上述交易请求的交易数额大于上述目标账号列表中的任一个账号的供货数额,则将上述交易请求拆分成与上述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于上述交易请求的交易数额。
在本发明实施例中,目标用户可以向服务器发起交易请求,该交易请求用于完成支付,或者生成订单。在交易请求在用于完成支付的时候,交易请求中的项目类别只有一个即货币,对应的交易数额即需要支付的金额,如果该交易数额大于了目标账号列表中的每个账号的供货数额即余额,则说明该交易请求为大额交易,需要拆分成多个子交易请求使得与多个账号一一对应,从而将一个大额支付拆分成多个小额支付,提高了交易的成功率和效率。
同样的,交易请求若用于生成订单的话,交易请求中可以含有一个或者多个项目类别,若含有多个项目类别则说明目标用户同时需要多个种类的产品,当服务器接收到该交易请求,则在目标账号列表中查找可以一次性满足目标用户所有需求的账号,即该账号含有所有交易请求中所含有的项目类别,以及在每个相同项目类别下,账号的供货数额大于交易请求的交易数额。若服务器未查找到可以一次性满足目标用户所有需求的账号,则将该交易请求拆分成多个子交易请求使得与目标账号列表中的多个账号一一对应,从而将一个大额订单拆分成多个小额订单,提高了交易的成功率以及效率。
进一步的,上述账号信息还包括用户标识。
需要说明的是,上述目标账号列表中包含的每个账号的账号标识各不相同,但是可能存在用户标识相同的账号,如果其中两个账号的用户标识相同,说明该两个账号属于同一个用户。因此,目标账号列表中的账号可以属于同一个用户,或者存在至少两个账号属于同一个用户,甚至所有账号属于同一个用户,本发明实施例对此不做限定。其中,用户标识为确认用户的身份唯一性的信息,可以是英文字母、十进制数字和十六进制数字等的任意组合。
举例来说,目标用户买了一辆车,于是目标用户向服务器上传了一个交易请求用于完成网上支付,目标用户可以在向服务器发起交易请求的同时选择一个用于支付的账号也可以不选择,在用户选择了用于支付的账号而服务器检测到目标用户选择的账号中的余额不足以完成支付,或者用户并未选择用于支付的账号,于是服务器获取目标用户的目标账号列表,该目标账号列表中记载了用户的多个账号,以及每个账号对应的余额,于是服务器在该目标账号列表中检测是否有单个账号的余额足以完后支付,若没有,则说明该交易请求为一个大额交易,需要进行拆分。然后服务器通过将该交易请求拆分成多个子交易请求,使得每个子交易请求与上述目标账号列表中的至少两个账号一一对应,从而将一个大额的交易请求拆分成多个子交易请求,从而提高交易的成功率。
另一个举例,目标用户分别需要产品A、B和C各a、b和c件,然后目标用户向服务器上传了一个交易请求,该交易请求中包含了产品A、B和C,以及A、B和C分别对应的数量a、b和c,同样的,目标用户可以在向服务器发起交易请求的同时选择一个想要进行交易的公司的账号也可以不选择,在用户选择了想要进行交易的公司的账号情况下,而服务器检测到该公司的账号的产品A、B和/或C对应的数量不能满足目标用户的需求,或者用户并未选择想要进行交易的公司的账号,于是服务器获取目标用户的目标账号列表,该目标账号列表中记载了多个账号,以及每个账号包含多个产品,以及每个产品对应的数量,需要说明的是,每个账号可以属于不同公司,或者部分账号属于相同的公司,或者所有账号属于一个公司。然后服务器检测该目标账号列表中,是否有单个账户含有产品A、B和C,并且数量类别分别大于a、b和c,若没有,则说明该交易请求为一个大额交易,需要进行拆分。然后服务器通过将该交易请求拆分成多个子交易请求,使得每个子交易请求与上述目标账号列表中的至少两个账号一一对应,并且所有子交易请求有关产品A的数量的总和为a,有关产品B的数量的总和为c,有关产品C的数量的总和为c,从而将一个大额的交易请求拆分成多个子交易请求,从而提高交易的成功率。
304:在任一个相同的项目类别下,上述目标账号列表中的所有账号的供货数额的总和大于上述交易请求中的交易数额?
在本发明实施例中,若是则执行步骤305,若否则向发送交易请求的终端设备返回请求失败的信息,用于说明失败的结果以及失败的原因。
在本发明实施例中,为了进一步的提升交易的成功率,在执行拆分交易请求之前,除了确定目标账号列表中不存在单个账号可以满足交易请求的需要以外,还需要判断目标账号列表中的所有账号,在每个交易请求中要求的项目类别下的供货数额的总数是否大于交易数额,若是,则执行拆分,且保证拆分之后的子交易请求能达到原始的交易请求中的要求,即交易请求中要求的每个项目类别下,子交易请求的供货数额大于交易请求的交易数额。
进一步的,若上述交易请求和上述目标账号列表的账号的账号信息都只含有一个相同的项目类别,且上述目标账号列表中的账号按照上述项目类别对应的供货数额的大小排列;于是在拆分之前,确定在该项目类别下,交易请求的交易数额大于最大的供货数额。
在本发明实施例中,为了进一步的简化在拆分之前的比较工作,当项目类别只有一种的时候,服务器可以预先将目标账号列表中的账号按照该项目类别下的供货数额按照大小排列,例如从大到小排列,以此以来,服务器可以在判断是否拆分交易请求之前,快速获取目标账号列表中最大的供货数额,然后与交易请求中的交易数额进行比较,当交易数额大于最大的供货数额的时候,说明需要拆分交易请求,反之则不需要拆分。
进一步的,按照上述目标账号列表中的账号的供货数额的大小对上述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
在本发明实施例中,服务器尽量的依照供货数额较大的账号对交易请求进行拆分,为了使得拆分的子交易请求的数量最少,可以利用贪心算法计算最优解,即在多种可能的拆分方案中选择拆分得到的子交易请求个数最少的方案。或者,当项目类别只有一种的时候,服务器可以预先将目标账号列表中的账号按照该项目类别下的供货数额按照大小排列,例如从大到小排列,然后从含有最大的供货数额的账号开始拆分交易请求,直到拆分的子交易请求的交易数额的总和等于原始的交易请求的交易数额。
举例来说,在开始拆分大额支付的交易请求时,按照余额最大的账户开始拆分(账户从大到小排列),第一个子交易请求的交易数额等于第一账户的全部余额,第二个子交易请求的交易数额等于第二账户的全部余额......第(N-1)个子交易请求的交易数额等于第(N-1)账户的全部余额,以及第N个子交易请求的交易数额等于第N账户的部分或者全部余额,使得上述N个子交易请求的交易数额的总和等于未拆分之前的交易请求的交易数额。
进一步的,上述项目类别对应有标注信息,标注信息包括现货和预约。
在本发明实施例中,尽量在拆分上述交易请求时,在相同项目类别下,首先在目标账号列表中获取项目类别对应的标注信息为现货的账号,这样在拆分交易请求的时候可以尽量与含有现货的公司达成订单,如果没有充足的现货,才在具有产品生产能力的公司预定需要数量的产品,从而达成订单。这样就能保证目标用户能尽快的获得需要数量的产品。
举例来说,当服务器接收到目标用户的交易请求中的A产品的交易数额为10件,服务器首先在目标账号列表中查询含有产品A,且A产品对应的标注信息为现货的账号,若查询到账号1对应产品A有现货5件,显然不足以满足目标客户需要10件A的需求,于是服务器再在目标账号列表中查询含有产品A,且产品A对应的标注信息为预约的账号,若服务器查询到账号2对应产品A有非现货5件,于是将目标用户的交易请求分为两个订单,分别为对应账号1的5件产品A的第一子交易订单,和对应账号2的5件产品A的第二子交易订单。
进一步的,在上述根据交易请求和目标账号列表将交易请求拆分成至少两个子交易请求之后,根据子交易请求获取子目标账号列表;根据子目标账号列表和上述子目标账号列表将该子目标账号列表生成一个或者多个副交易请求。
需要说明的是,目标账号类别中的一部分账号所属的公司可能是具有产品生产能力,而没有产品现货的公司,甚至其中一部分公司不能完全自主生产出成品的能力,而需要其他公司提供中间产品再进行组合加工,于是可以在子交易请求的基础上进一步的拆分,得到副交易请求。于是,在将交易请求拆分成与目标账号列表中的至少两个账号一一对应的子交易请求之后,若服务器检测到存在有子交易请求对应的账号所属的公司不具有完全自主生产的能力,于是获取组成该子交易请求中的项目类别所描述的产品的半成品的列表,并获取子目标账号列表,再根据上述子交易请求以及子目标账号列表中的账号的账号信息,生成至少一个副交易请求,该副交易请求用于为不具有完全自主生产成品的公司与生产或者具有半成品的公司达成订单。其中,子目标账号列表可以与目标账号列表相同,也可以不同。参考上述将交易请求拆分成多个子交易请求的过程,具体的拆分方法不再赘述。
需要说明的是,在副交易请求的基础上还可以进一步的拆分或者生成新的交易请求,具体的,在子目标账号列表中不存在单个账号能满足副交易请求的需求,就将该副交易请求再次拆分成多个该副交易请求的子交易请求,或者,在确定副交易请求对应的账号,或者确定副交易请求拆分之后的子交易请求对应的账号之后,若该对应的账号所属的公司为上述不具有完全自主生产成品的公司的话,可以在该副交易请求或者该副交易请求的子交易请求的基础上,生成新的订单,用于提供组成该副交易请求中的描述的半成品的更小的半成品。因此本发明实施例提供的方法可以多次拆分上述大额的交易请求,直到最终拆分得到小额的交易请求能够被成功执行且满足目标用户的需求,本发明实施例对此不做限制。
举例来说,上述举例中的第二子交易订单对应的账号2所属的公司不具备完全自主生产A的能力,则需要从其他公司获取生产A的半成品B和半成品C,而1件B和2件C可以生产1件A。那么在上述生成第二子交易订单之后,服务器再获取子目标账号列表,该子目标账号列表至少包含两个账号的信息。服务器可以利用该子目标账号列表和上述第二子交易订单再生成至少一个的副交易请求,使得所有副交易请求中有关半成品B的总和和半成品C的总和分别等于5件和10件,即再委托具其他公司提供半成品B和半成品C,若生产半成品的公司也不能完全自主生产半成品B和半成品C,则在上述副交易请求的基础上再生成至少一个的副交易请求的副交易请求。
305:将上述交易请求拆分成多个与上述目标账号列表中的至少两个账号一一对应的子交易请求。
在本发明实施例中,若在上述步骤中确定将上述交易请求拆分成多个子交易请求,则在拆分的时候将上述交易请求拆分成多个与上述目标账号列表中的至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于上述交易请求的交易数额。
本发明实施例相比第一发明实施例更详细的描述了判断是否拆分交易请求的过程。如果在交易请求中的某些项目类别下,交易请求的交易数额大于上述目标账号列表中的任一个账号的供货数额,则说明目标账号列表中不存在单个账号可以满足交易请求中所要求的交易数额,但如果在交易请求的任一个项目类别下,上述目标账号列表中的所有账号的供货数额的总和大于上述交易请求中的交易数额,则说明可以通过将该交易请求拆分成多个子交易请求而来完成交易,反之则给目标用户返回请求失败的消息,因此通过进一步的判断交易请求是否可以拆分成功,而节省一些计算资源,并且提高了交易处理的效率。
本发明实施例还提供一种服务器,该服务器用于执行前述发明实施例的方法的单元。具体地,参见图4,是本发明实施例提供的一种服务器的示意框图。本实施例的服务器包括:接收单元410、获取单元420以及执行单元430,具体的:
接收单元410,用于接收目标用户的交易请求。
获取单元420,用于根据上述交易请求获取目标账号列表,目标账号列表包含至少两个账号的账号信息。
执行单元430,用于根据上述交易请求和上述目标账号列表将交易请求拆分成至少两个的子交易请求。
需要说明的是,交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额。
具体的,上述执行单元430,用于存在相同的项目类别下,若上述交易请求的交易数额大于上述目标账号列表中的任一个账号的供货数额,则将上述交易请求拆分成与上述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于上述交易请求的交易数额。
进一步的,上述服务器还包括确定单元440,用于确定在任一个相同的项目类别下,上述交易请求的交易数额是否大于上述目标账号列表中的任一个账号的供货数额;还用于在任一个相同的项目类别下,确定上述交易数额是否小于或等于上述目标账号列表中的账号的供货数额的总和;还用于在交易请求和账号信息都只含有一个相同的项目类别,且目标账号列表中的账号按照项目类别对应的供货数额的大小排列时,确定交易数额是否大于最大的供货数额。
可选的,上述执行单元430,用于按照上述目标账号列表中的账号的供货数额的大小对上述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
通过实施本发明实施例,接收单元410如果接收到了目标用户的交易请求,则获取单元420便可以根据接收到的目标用户的交易请求来获取到目标账号列表,执行单元430然后再从目标账号列表中选择一个可以满足目标用户的交易请求所要求的交易数额的账号,也可以选择多个账号一同用于完成交易,即将一个大额的交易请求拆分成多个小额的子交易请求。因此本发明实施例可以帮助用户快速选择能够完成交易的账号,并且在未查找到这样一个账号的情况下,能够将一个大额的交易请求拆分成多个小额的子交易请求,从而提供了一种灵活的交易处理方式,能够有效的提高交易的成功率和效率。
请参考图5,本发明实施例提供了另一种服务器,其特征在于,包括一个或一个以上的处理器510,通信接口520以及存储器530,处理器510、通信接口520和存储器530通过总线540相互连接,其中,存储器530用于存储计算机程序,计算机程序包括程序指令,处理器510被配置用于调用程序指令,用以执行如上述的发明实施例的方法,具体的:
通信接口520,用于执行接收单元410的功能,用于接收目标用户的交易请求。
处理器510,用于执行获取单元420的功能,用于根据上述交易请求获取目标账号列表,目标账号列表包含至少两个账号的账号信息;还用于实现执行单元430的功能,用于根据上述交易请求和上述目标账号列表将上述交易请求拆分成至少两个的子交易请求。
需要说明的是,上述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;上述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额。
具体的,处理器510,用于存在相同的项目类别下,若上述交易请求的交易数额大于上述目标账号列表中的任一个账号的供货数额,则将上述交易请求拆分成与上述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于上述交易请求的交易数额。
进一步的,上述服务器还包括确定单元440,用于确定在任一个相同的项目类别下,上述交易请求的交易数额是否大于上述目标账号列表中的任一个账号的供货数额;还用于在任一个相同的项目类别下,确定上述交易数额是否小于或等于上述目标账号列表中的账号的供货数额的总和;还用于在交易请求和账号信息都只含有一个相同的项目类别,且目标账号列表中的账号按照项目类别对应的供货数额的大小排列时,确定交易数额是否大于最大的供货数额。
可选的,上述处理器510,用于按照上述目标账号列表中的账号的供货数额的大小对上述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
应当理解,在本发明实施例中,所称处理器510可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器530可以包括只读存储器和随机存取存储器,并向处理器510提供指令和数据。存储器530的一部分还可以包括非易失性随机存取存储器。例如,存储器530还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器510、通信接口520以及存储器530可执行本发明实施例提供的交易处理方法的第一实施例和第二实施例中所描述的实现方式,也可执行本发明实施例所描述的终端设备的实现方式,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,其特征在于,计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令被处理器执行,用以执行如上述发明实施例的方法。
计算机可读存储介质可以是前述任一实施例的终端设备的内部存储单元,例如终端设备的硬盘或内存。计算机可读存储介质也可以是终端设备的外部存储设备,例如终端设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,计算机可读存储介质还可以既包括终端设备的内部存储单元也包括外部存储设备。计算机可读存储介质用于存储计算机程序以及终端设备所需的其他程序和数据。计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种交易处理方法,其特征在于,所述方法包括:
接收目标用户的交易请求;
根据所述交易请求获取目标账号列表,所述目标账号列表包含至少两个账号的账号信息;
根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求。
2.根据权利要求1所述的方法,其特征在于,所述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;所述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额;
所述根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求,包括:
存在相同的项目类别下,所述交易请求的交易数额大于所述目标账号列表中的任一个账号的供货数额,则将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于所述交易请求的交易数额。
3.根据权利要求2所述的方法,其特征在于,所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求之前,还包括:
在任一个相同的项目类别下,确定所述交易数额小于或等于所述目标账号列表中的账号的供货数额的总和。
4.根据权利要求2所述的方法,其特征在于,所述交易请求和所述账号信息都只含有一个相同的项目类别;所述目标账号列表中的账号按照所述项目类别对应的供货数额的大小排列;
所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求之前,还包括:
确定所述交易数额大于最大的供货数额。
5.根据权利要求4所述的方法,其特征在于,所述将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,包括:
按照所述目标账号列表中的账号的供货数额的大小对所述交易请求进行拆分,使得拆分得到的子交易请求的数量最少。
6.一种服务器,其特征在于,包括:
接收单元,用于接收目标用户的交易请求;
获取单元,用于根据所述交易请求获取目标账号列表,所述目标账号列表包含至少两个账号的账号信息;
执行单元,用于根据所述交易请求和所述目标账号列表将所述交易请求拆分成至少两个子交易请求。
7.根据权利要求6所述的服务器,其特征在于,所述交易请求包含一个或者多个项目类别,以及每个项目类别对应的交易数额;所述账号信息包括一个或者多个项目类别,以及每个项目类别对应的供货数额;
所述服务器还包括确定单元,所述确定单元用于确定在任一个相同的项目类别下,所述交易请求的交易数额是否大于所述目标账号列表中的任一个账号的供货数额;
所述执行单元,用于存在相同的项目类别下,所述交易请求的交易数额大于所述目标账号列表中的任一个账号的供货数额,则将所述交易请求拆分成与所述目标账号列表中至少两个账号一一对应的子交易请求,使得在任一个相同的项目类别下,所有子交易请求的交易数额的总和等于所述交易请求的交易数额。
8.根据权利要求7所述的服务器,其特征在于,包括:
所述确定单元,还用于在任一个相同的项目类别下,确定所述交易数额是否小于或等于所述目标账号列表中的账号的供货数额的总和。
9.一种服务器,其特征在于,包括处理器,通信接口以及存储器,所述处理器、通信接口和存储器通过总线相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用以执行如权利要求1-5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行,用以执行如权利要求1-5任一项所述的方法。
CN201810534782.5A 2018-05-29 2018-05-29 一种交易处理方法及服务器 Pending CN108764876A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810534782.5A CN108764876A (zh) 2018-05-29 2018-05-29 一种交易处理方法及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810534782.5A CN108764876A (zh) 2018-05-29 2018-05-29 一种交易处理方法及服务器

Publications (1)

Publication Number Publication Date
CN108764876A true CN108764876A (zh) 2018-11-06

Family

ID=64003778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810534782.5A Pending CN108764876A (zh) 2018-05-29 2018-05-29 一种交易处理方法及服务器

Country Status (1)

Country Link
CN (1) CN108764876A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110189124A (zh) * 2019-05-24 2019-08-30 杭州复杂美科技有限公司 防攻击方法、设备和存储介质
CN110335153A (zh) * 2019-07-15 2019-10-15 电子科技大学 一种基于遗传算法的区块链交易输入选择方法
CN110414955A (zh) * 2019-07-25 2019-11-05 泰康保险集团股份有限公司 基于区块链的转账方法、装置、介质及电子设备
CN111147253A (zh) * 2019-12-23 2020-05-12 联想(北京)有限公司 信息处理方法、装置、电子设备及存储介质
CN113256292A (zh) * 2021-06-22 2021-08-13 北京开科唯识技术股份有限公司 一种线上分账方法及系统
CN114201972A (zh) * 2021-12-14 2022-03-18 长安银行股份有限公司 一种理财产品数据处理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120136752A1 (en) * 2003-08-04 2012-05-31 Vikas Gupta Payment service that applies user-specified rules to divide payment amounts among multiple payment instruments
US20120179605A1 (en) * 2011-01-06 2012-07-12 Citizens Financial Group, Inc. System for allowing a user to control the manner and amount paid to settle account transactions
CN105046487A (zh) * 2015-04-22 2015-11-11 上海非码网络科技有限公司 多渠道合并的线上支付方法及支付系统
CN106845961A (zh) * 2017-04-07 2017-06-13 福建强闽信息科技有限公司 一种订单自动分解且多方式支付的方法及支付终端
CN107103530A (zh) * 2017-04-10 2017-08-29 中国工商银行股份有限公司 一种银行个人多账户交易方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120136752A1 (en) * 2003-08-04 2012-05-31 Vikas Gupta Payment service that applies user-specified rules to divide payment amounts among multiple payment instruments
US20120179605A1 (en) * 2011-01-06 2012-07-12 Citizens Financial Group, Inc. System for allowing a user to control the manner and amount paid to settle account transactions
CN105046487A (zh) * 2015-04-22 2015-11-11 上海非码网络科技有限公司 多渠道合并的线上支付方法及支付系统
CN106845961A (zh) * 2017-04-07 2017-06-13 福建强闽信息科技有限公司 一种订单自动分解且多方式支付的方法及支付终端
CN107103530A (zh) * 2017-04-10 2017-08-29 中国工商银行股份有限公司 一种银行个人多账户交易方法及系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110189124A (zh) * 2019-05-24 2019-08-30 杭州复杂美科技有限公司 防攻击方法、设备和存储介质
CN110335153A (zh) * 2019-07-15 2019-10-15 电子科技大学 一种基于遗传算法的区块链交易输入选择方法
CN110335153B (zh) * 2019-07-15 2021-09-14 电子科技大学 一种基于遗传算法的区块链交易输入选择方法
CN110414955A (zh) * 2019-07-25 2019-11-05 泰康保险集团股份有限公司 基于区块链的转账方法、装置、介质及电子设备
CN111147253A (zh) * 2019-12-23 2020-05-12 联想(北京)有限公司 信息处理方法、装置、电子设备及存储介质
CN113256292A (zh) * 2021-06-22 2021-08-13 北京开科唯识技术股份有限公司 一种线上分账方法及系统
CN113256292B (zh) * 2021-06-22 2021-10-29 北京开科唯识技术股份有限公司 一种线上分账方法及系统
CN114201972A (zh) * 2021-12-14 2022-03-18 长安银行股份有限公司 一种理财产品数据处理方法
CN114201972B (zh) * 2021-12-14 2022-07-05 长安银行股份有限公司 一种理财产品数据处理方法

Similar Documents

Publication Publication Date Title
CN108764876A (zh) 一种交易处理方法及服务器
CN108764911B (zh) 互联网积分的交易方法及系统
CN108256965A (zh) 一种基于区块链的分布式电子商务平台系统
US7229014B1 (en) systems and methods for account number generation and provisioning
CN110363666A (zh) 信息处理方法、装置、计算设备以及存储介质
CN101438314A (zh) 用于电子交易的最低成本网络路由
JPH10508708A (ja) インターネットを介して電子的に転送することにより情報製品を購入するためのコンピュータ化支払いシステム
CN109242688A (zh) 电子承兑汇票交易平台、系统、方法及介质
CN108734457A (zh) 一种统一收银系统下的退款方法
Nogoev et al. The Evolution and Development of E-Commerce Market and E-Cash
CN110163586A (zh) 交易支付和退款处理的方法、装置及设备
CN109344987A (zh) 外币预约取现方法、客户端、服务器、外币预约柜及系统
CN108830697A (zh) 一种业财一体化系统和方法
CN107689009A (zh) 年金数据处理方法、装置、服务器和存储介质
CN106296178A (zh) 基于nfc的支付方法及装置
CN110084699A (zh) 交易记录的聚合方法、装置、交易列表系统及存储介质
CN108765106A (zh) 一种业财一体化的财务凭证生成方法
CN109146488A (zh) 资产撮合方法、资产撮合系统、设备和存储介质
CN108711045A (zh) 一种收银系统和收银方法
CN110506263A (zh) 资源提供商聚合和基于上下文的内容通知系统
CN110163632A (zh) 退款方法及其系统、用户终端
CN108694660A (zh) 一种业财一体化对账方法
CN108762727A (zh) 一种事件驱动的财务信息处理方法和系统
JP2002083145A (ja) 決済用カードを用いた決済システムにおけるセンタ装置、決済方法、コンピュータシステム、決済用カード、及び、処理方法
CN111539809A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20181106

RJ01 Rejection of invention patent application after publication