本发明涉及计算机应用领域,尤其涉及一种数据处理方法、装置及可读存储介质。
背景技术:
:发票的发票号段是发票的唯一标识,税局依靠中心化设备来进行发票号段的分配以避免对发票号段的浪费,以及保证发票号段唯一。但是,若该中心化设备发生故障,则用户将无法获取发票号段来进行开票行为,故采用这种方法来获取发票号段的稳定性较差。可见,如何提供一种数据处理方法在保证发票号段的唯一性的同时,还能提升发票分配过程中的稳定性是一个亟待解决的问题。技术实现要素:本发明实施例提供了一种数据处理方法、装置及可读存储介质,采用这样的数据处理方法,使得区块链节点设备对发票号段共识通过后才会分配至开票设备,保证了发票号段的唯一性;同时由于区块链网络技术具有去中心化的技术特点,可以在某一台节点设备发生故障时采用区块链网络中其他节点设备进行号段分配,以提升发票号段分配过程的稳定性。第一方面,本发明实施例提供了一种数据处理方法,所述方法应用于区块链网络的节点设备,所述方法包括:接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。第二方面,本发明实施例提供了一种数据处理装置,所述方法配置于区块链网络的节点设备,所述装置包括:数据获取单元,用于接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;数据处理单元,用于响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;所述数据处理单元,还用于若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;数据发送单元,用于在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。第三方面,本发明实施例提供了一种节点设备,所述节点设备包括输入设备和输出设备,所述节点设备还包括处理器,适于实现一条或多条指令;以及,计算机可读存储介质,所述计算机可读存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述第一方面所述的数据处理方法。第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据处理方法。本发明实施例提供了一种数据处理方法、装置及可读存储介质,该数据处理方法应用于区块链网络的节点设备,该数据处理方法包括:接收用户终端设别发送的号段申领请求,该号段申领请求包括号段申领数量和该用户终端设备对应的用户标识信息;响应该号段申领请求基于前述用户标识信息对该号段申领数量进行验证;若验证通过,则调用智能合约确定号段申领数量对应的目标发票号段;在与区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至前述用户标识信息对应的开票设备。采用这样的数据处理方法,使得区块链节点设备对发票号段共识通过后才会分配至开票设备,保证了发票号段的唯一性,同时由于区块链网络技术具有去中心化的技术特点,可以在某一台节点设备发生故障时采用区块链网络中其他节点设备进行号段分配,以提升发票号段分配过程的稳定性。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的一种数据处理系统的架构示意图;图2是本发明实施例提供的一种数据处理方法的流程示意图;图3是本发明实施例提供的另一种数据处理方法的流程示意图;图4是本发明实施例提供的一种数据处理装置的结构示意图;图5是本发明实施例提供的一种节点设备的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参见图1,是本发明实施例提供的一种数据处理系统的架构示意图,该数据处理系统包括区块链网络10、用户终端设备11和用户终端对应的开票设备12。其中:区块链网络10具体是指进行节点与节点之间数据共享的网络,区块链网络中可以包括多个节点101。每个节点101在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护区块链网络内的共享数据(即区块链)。为了保证区块链网络内的信息互通,每个节点之间可以存在信息连接,任意两个节点之间可以实现点对点(peertopeer,p2p)通信,具体可以通过有线通信链路或无线通信链路进行p2p通信。例如,当区块链网络中的任意节点接收到输入信息时,其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链网络中全部节点上存储的数据均一致。用户终端设备11和开票设备12可以接入该区块链网络,并可以与区块链网络中的节点进行通信。其中用户终端设备11具体可以是智能手机、平板电脑、笔记本电脑、台式电脑、车载智能终端等,本发明实施例不做限定。开票设备12具体可以是开票机或是与开票机相连接的智能手机、平板电脑、笔记本电脑、台式电脑、车载智能终端等,若开票设备12为与开票机相连接的智能手机、平板电脑、笔记本电脑、台式电脑、车载智能终端,可以与用户终端设备11为同一设备,在此不做具体限定。其中,对于区块链网络中的每个节点,均具有与其对应的节点标识,而且区块链网络中的每个节点均可以存储有区块链网络中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为互联网协议(internetprotocol,ip)地址以及其他任一种能够用于标识该节点的信息,表中仅以ip地址为例进行说明。节点名称节点标识节点1117.114.151.174节点2117.116.189.145……节点n119.123.789.258在一些可行的实施方式中,区块链网络10的某一节点可以接收用户终端设备11发送的号段申领请求,该号段申领请求包括号段申领数量和用户终端设备11对应的用户标识信息。进一步地,区块链网络10的某一节点响应该号段申领请求基于前述用户标识信息对该号段申领数量进行验证,若验证通过,则调用智能合约确定该号段申领数量对应的目标发票号段,并在与区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至用户标识信息对应的开票设备。采用这样的数据处理方法,使得区块链节点设备对发票号段共识通过后才会分配至开票设备,保证了发票号段的唯一性,同时由于区块链网络技术具有去中心化的技术特点,使得该数据处理方法可以在某一节点设备发生故障时采用区块链网络中其他节点设备进行号段分配,以提升发票号段分配过程的稳定性。请参见图2,是本发明实施例提供的一种数据处理方法的流程示意图,该方法可由节点设备执行,该数据处理方法包括如下步骤:s201:接收用户终端设备发送的号段申领请求,该号段申领请求包括号段申请数量和用户终端设备对应的用户标识信息。其中,用户标识信息可以是用户在税局注册开票时可以唯一标识用户的用户名、手机号、身份证号或字符串编号等,在此不做具体限制。用户终端设备在检测到该用户标识信息对应的开票设备中存储的发票号段小于或等于数量阈值n时,则触发该用户终端设备向区块链节点设备发送号段申领请求。其中,数量阈值n为大于或等于0的整数,可以由用户根据该自身营业额或开票需求自行设定,在此不做具体限制。s202:响应该号段申领请求基于用户标识信息对该号段申请数量进行验证。节点设备获取合法用户名录,将该用户标识信息与合法用户名录中的合法开票用户标识进行匹配,若匹配成功,则确定该用户标识信息对应的用户终端为合法开票用户,并响应该号段申领请求。进一步地,节点设备获取该用户标识信息对应的预设时间期限内用户所在行业平均数据、用户营业数据、用户使用发票数量以及发票额度中的一种或多种,并根据该数据对该号段申请数量进行验证,验证该号段申请数量是否合理,采用这样的方式对该用户终端进行税务管控。其中,上述预设时间期限为开发人员根据税局需求或制定的规则来设定,可以根据实际情况进行调整,在此不做具体限定。需要了解的是,合法用户名录由税局对用户申请成为开票机构时提交注册信息审核通过后,存储该用户标识信息构建得到的。可选地,节点设备响应该号段申领请求查询该用户标识信息对应的可申领数量总额度和已申领数量,若该号段申领数量与已申领数量的和小于或等于该可申领数量总额度,则确定该号段申领数量验证通过。反之,若该号段申领数量与已申领数量的和大于该可申领数量总额度,则确定该号段申领数量验证不通过,进一步地,节点设备中断该用户的号段申领请求,并向用户终端设备发送通知对该申领数量验证不通过的通知消息。其中,该可申领的数量总额度由税局根据该用户的营业数据、使用发票数量以及每张发票的发票额度中的一种或多种进行设定的,后期可根据具体使用场景进行调整,并将该可申领的数量总额度与用户标识信息进行关联存储。示例性地,企业a通过自身对应的用户终端设备向节点设备发送了申领50个发票号段的号段申领请求,节点设备在验证企业a为合法开票企业后,获取到企业a为便利店,该便利店一年内平均月营业额为10w,所开发票面额均不超过1000元,根据税局制定规则规定企业a每月可申领发票数量总额度为150个,查询到企业a本月已申领100个发票号段,故号段申领数量50个合理,即节点设备根据该企业a的用户标识信息对该号段申领数量验证通过。可选地,若该号段申领数量与已申领数量的和大于该可申领数量总额度,则节点设备确定该号段申领数量验证不通过,进而,节点设备还可以根据已申领数量与该可申领数量总额度之间的差值来确定该用户终端可被分配号段数量。示例性地,企业b通过自身对应的用户终端设备向节点设备发送了申领70个发票号段的号段申领请求,节点设备在验证企业b为合法开票企业后,获取到企业b为小吃店,该便利店一年内平均月营业额为10w,所开发票面额均不超过1500元,根据税局制定规则规定企业b每月可申领发票数量总额度为120个,查询到企业b本月已申领100个发票号段,故号段申领数量70个不合理,即节点设备根据该企业b的用户标识信息对该号段申领数量验证不通过,节点设备根据已申领数量100,可申领数量总额度为120,差值为20,将20作为企业b的可分配号段数量。s203:若验证通过,则调用智能合约确定该号段申领数量对应的目标发票号段。在对该号段申领数量验证通过后,根据智能合约中的发票号段生成规则生成该号段申领数量对应的目标发票号段。其中,该发票号段生成规则由税局根据相关条文或规则制定,该发票号段生成规则规定了发票号段的生成方式(随机生成或是递增生成)与发票号段样式(号段长度或号段中包含字符种类)等。可选地,节点设备调用智能合约根据发票号段生成规则和该号段申领数量生成第一候选发票号段集合。若第一候选发票号段集合包括的发票号段不存在对应的标识信息,则将该第一候选发票号段集合包括的发票号段作为号段申领数量对应的目标发票号段,该标识信息用于标识已生成的发票号段,并对该目标发票号段中的每一个发票号段添加标识信息。采用这样的发票号段生成方式以保证每个发票号段的唯一性。示例性地,节点设备调用智能合约生成第一候选发票号段集合,该第一候选发票集合中包括3个发票号段,分别是xxxxxxx1、xxxxxxx2和xxxxxxx3,获取标识信息校验表中所有发票号段,并将xxxxxxx1、xxxxxxx2和xxxxxxx3与标识信息校验表中所有发票号段相匹配,若均匹配不成功,则确定xxxxxxx1、xxxxxxx2和xxxxxxx3为分配发票号段,进一步地,节点设备可以将该xxxxxxx1、xxxxxxx2和xxxxxxx3作为目标发票号段,并对xxxxxxx1、xxxxxxx2和xxxxxxx3添加标识信息。可选地,若该第一候选发票号段集合包括的发票号段存在对应的标识信息,则节点设备调用该智能合约根据发票号段生成规则和号段申领数量生成第二候选发票号段集合。若该第二候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第二候选发票号段集合包括的发票号段作为号段申领数量对应的目标发票号段。示例性地,节点设备调用智能合约生成第一候选发票号段集合,该第一候选发票集合中包括3个发票号段,分别是xxxxxxx5、xxxxxxx6和xxxxxxx7,获取标识信息校验表中所有发票号段,并将xxxxxxx5、xxxxxxx6和xxxxxxx7与标识信息校验表中所有发票号段相匹配,若xxxxxxx5与标识信息校验表中的发票号段匹配成功,则确定xxxxxxx5为已使用发票号段,则可以调用智能合约生成第二候选发票号段集合xxxxxxx6、xxxxxxx7和xxxxxxx8,若第二候选发票号段集合中的发票号段不存在对应的标识信息,则确定第二候选发票号段集合包括的发票号段为分配发票号段(即可用发票号段),进一步地,节点设备可以将该xxxxxxx6、xxxxxxx7和xxxxxxx8作为目标发票号段。可选地,节点设备还可以调用智能合约根据发票生成规则和号段申领数量生成与该号段申领数量对应的目标发票号段,并为该目标发票号段添加上时间戳或其他唯一数据标识(例如时间戳)表明该发票号段唯一。例如,发票号段xxxxxxx4已经分配于企业a,该时间戳标记该发票号段的生成时间为0001。企业b向节点设备发送号段申领请求后,节点设响应该号段申领请求,调用智能合约生成发票号段xxxxxxx4,并为该发票号段添加时间戳标记该发票号段的生成时间为0002,从而保证当两个发票号段一致时,可以通过时间戳来标记该发票号段的唯一性。s204:在与该区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至该用户标识信息对应的开票设备。节点设备确定该目标发票号段后,向区块链网络中其他节点设备针对该目标发票号段采用区块链网络共识机制共识,若共识通过,则将该目标发票号段发送至该用户标识信息对应的开票设备。若共识不通过,则再次执行调用智能合约确定该号段申领数量对应的目标发票号段的步骤。本申请实施例中,区块链网络的节点设备接收用户终端设别发送的号段申领请求,该号段申领请求包括号段申领数量和该用户终端设备对应的用户标识信息,进一步地,响应该号段申领请求基于前述用户标识信息对该号段申领数量进行验证;若验证通过,则调用智能合约确定号段申领数量对应的目标发票号段。在与该区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至该用户标识信息对应的开票设备。采用这样的数据处理方法,使得区块链节点设备对发票号段共识通过后才会分配至开票设备,保证了发票号段的唯一性。并且,节点设备在与区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至前述用户标识信息对应的开票设备。采用这样的数据处理方法,使得区块链节点设备在保证了发票号段的唯一性的同时,还由于区块链网络技术具有去中心化的技术特点,可以在某一节点设备发生故障时采用区块链网络中其他节点设备进行号段分配,以提升发票号段分配过程的稳定性。请参见图3,是本发明实施例提供的另一种数据处理方法的流程示意图,该方法可由节点设备执行,该数据处理方法包括如下步骤:s301:接收用户终端设备发送的号段申领请求,该号段申领请求包括号段申请数量和用户终端设备对应的用户标识信息。s302:响应该号段申领请求基于用户标识信息对该号段申请数量进行验证。其中,步骤s301-s302的具体实施方式可以参见前述实施例中步骤s201-s202的具体实施方式,在此不再过多赘述。s303:若验证通过,则调用智能合约从第一号段池中获取该号段申领数量对应的目标发票号段,该第一号段池包括待分配的发票号段。节点设备对该号段申请数量验证通过后,可以采用随机获取的方式或按顺序规则获取的方式从第一号段池中获取该号段申请数量对应的目标发票号段。在一个实施例中,节点设备对该号段申请数量验证通过后,获取第一号段池中待分配发票号段的数量,并将该号段申请数量与第一号段池中待分配发票号段的数量进行比较,若该号段申请数量小于或等于第一号段池中待分配发票号段的数量,则调用智能合约从第一号段池中获取该号段申领数量对应的目标发票号段。s304:在与该区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至该用户标识信息对应的开票设备。其中,步骤s304的具体实施方式可以参见前述实施例中步骤s204的具体实现方式,在此不再过多赘述。s305:将该目标发票号段从该第一号段池中移除。节点设备可以将该目标号段从第一号段池中移除,以保证发票号段的唯一性,并将该目标发票号段添加至第二号段池中,该第二号段池包括已分配的发票号段。可选地,节点设备可以调用智能合约对该第一号段池包括的待分配的发票号段的目标数量进行检测,若检测到该目标数量小于或等于数量阈值,则按照发票号段生成规则生成预设数量的发票号段,并将生成的预设数量的发票号段添加至第一号段池中。其中,预设数量由开发人员根据实验数据测算得到,后期可根据实际情况进行调整。需要了解的是,节点设备调用智能合约对该第一号段池中包括的待分配的发票号段的目标数量进行按开发人员根据实验数据测算的周期进行定期检测,也可以是不定期抽查检测,对此不做具体限定。可选地,节点设备还可以将生成的预设数量的发票号段分别与该第一号段池中的发票号段和第二号段池中的发票号段进行匹配,若匹配均不成功,则执行将生成的预设数量的发票号段添加至第一号段池中的步骤。可选地,节点设备还可以将该目标号段在第一号段池中标记为已分配,不能够将生成的预设数量的发票号段分别与该第一号段池中待分配发票号段和已分配发票号段进行匹配,若匹配均不成功,则执行将生成的预设数量的发票号段添加至第一号段池中的步骤。在本申请实施例中,节点设备接收用户终端设备发送的号段申领请求,该号段申领请求包括号段申请数量和用户终端设备对应的用户标识信息。进一步地,节点设备响应该号段申领请求基于用户标识信息对该号段申请数量进行验证,若验证通过,则调用智能合约从第一号段池中获取该号段申领数量对应的目标发票号段,该第一号段池包括待分配的发票号段,并在与该区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至该用户标识信息对应的开票设备,进而,还可以将该目标发票号段从该第一号段池中移除。采用这样的数据处理方法,使得区块链节点设备对发票号段共识通过后才会分配至开票设备,保证了发票号段的唯一性,同时由于区块链网络技术具有去中心化的技术特点,可以在某一台节点设备发生故障时采用区块链网络中其他节点设备进行号段分配,以提升发票号段分配过程的稳定性。请参见图4,为本申请实施例提供的一种数据处理装置的结构示意图,所述装置配置与区块链网络的节点设备,所述装置包括:数据获取单元40,用于接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;数据处理单元41,用于响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;所述数据处理单元41,还用于若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;数据发送单元42,用于在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。在一个实施例中,所述数据处理单元41,具体用于调用智能合约根据发票号段生成规则和所述号段申领数量生成第一候选发票号段集合;若所述第一候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第一候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段,所述标识信息用于标识已生成的发票号段;对所述目标发票号段中的每一个发票号段添加标识信息。在一个实施例中,所述数据处理单元41,具体还用于若所述第一候选发票号段集合包括的发票号段存在对应的标识信息,则调用所述智能合约根据所述发票号段生成规则和所述号段申领数量生成第二候选发票号段集合;若所述第二候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第二候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段。在一个实施例中,所述数据处理单元41,具体用于调用智能合约从第一号段池中获取所述号段申领数量对应的目标发票号段,所述第一号段池包括待分配的发票号段;其中,所述将所述目标发票号段发送至所述用户标识信息对应的开票设备之后,所述数据处理单元41,具体还用于将所述目标发票号段从所述第一号段池中移出。在一个实施例中,所述数据处理单元41,具体还用于调用所述智能合约对所述第一号段池包括的待分配的发票号段的目标数量进行检测;若检测到所述目标数量小于或等于数量阈值,则按照发票号段生成规则生成预设数量的发票号段;将生成的所述预设数量的发票号段添加至所述第一号段池中。在一个实施例中,所述数据处理单元41,具体还用于将所述目标发票号段添加至第二号段池中,所述第二号段池包括已分配的发票号段;将生成的所述预设数量的发票号段分别与所述第一号段池中的发票号段和所述第二号段池中的发票号段进行匹配;若匹配均不成功,则执行所述将生成的所述预设数量的发票号段添加至所述第一号段池中的步骤。在一个实施例中,所述数据处理单元41,具体用于响应所述号段申领请求查询所述用户标识信息对应的可申领数量总额度和已申领数量;若所述号段申领数量与所述已申领数量的和小于或等于所述可申领数量总额度,则确定对所述号段申领数量验证通过。需要说明的是,本发明实施例所描述的数据处理装置的各单元模块的功能可根据图2或者图3所述的方法实施例中的方法具体实现,其具体实现过程可以参照图2或者图3的方法实施例的相关描述,此处不再赘述。基于上述方法实施例以及装置项实施例的描述,本发明实施例还提供一种节点设备。请参见图5,该节点设备可至少包括处理器501、输入设备502、输出设备503以及存储器504;其中,处理器501、输入设备502、输出设备503以及存储器504可通过总线或者其它连接方式进行连接。所述存储器504中还可以包括计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,所述计算机程序包括程序指令,所述处理器501用于执行所述存储器504存储的程序指令。处理器501(或称cpu(centralprocessingunit,中央处理器))是节点设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现上述数据处理方法实施例中的相应方法流程或相应功能。其中,处理器501被配置调用所述程序指令执行:接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。在一个实施例中,所述处理器501,具体用于调用智能合约根据发票号段生成规则和所述号段申领数量生成第一候选发票号段集合;若所述第一候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第一候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段,所述标识信息用于标识已生成的发票号段;对所述目标发票号段中的每一个发票号段添加标识信息。在一个实施例中,所述处理器501,具体还用于若所述第一候选发票号段集合包括的发票号段存在对应的标识信息,则调用所述智能合约根据所述发票号段生成规则和所述号段申领数量生成第二候选发票号段集合;若所述第二候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第二候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段。在一个实施例中,所述处理器501,具体用于调用智能合约从第一号段池中获取所述号段申领数量对应的目标发票号段,所述第一号段池包括待分配的发票号段;其中,所述将所述目标发票号段发送至所述用户标识信息对应的开票设备之后,所述处理器501,具体还用于将所述目标发票号段从所述第一号段池中移出。在一个实施例中,所述处理器501,具体还用于调用所述智能合约对所述第一号段池包括的待分配的发票号段的目标数量进行检测;若检测到所述目标数量小于或等于数量阈值,则按照发票号段生成规则生成预设数量的发票号段;将生成的所述预设数量的发票号段添加至所述第一号段池中。在一个实施例中,所述将所述目标发票号段从所述第一号段池中移出之后,所述将生成的所述预设数量的发票号段添加至所述第一号段池中之前,所述处理器501,具体还用于将所述目标发票号段添加至第二号段池中,所述第二号段池包括已分配的发票号段;将生成的所述预设数量的发票号段分别与所述第一号段池中的发票号段和所述第二号段池中的发票号段进行匹配;若匹配均不成功,则执行所述将生成的所述预设数量的发票号段添加至所述第一号段池中的步骤。在一个实施例中,所述处理器501,具体用于响应所述号段申领请求查询所述用户标识信息对应的可申领数量总额度和已申领数量;若所述号段申领数量与所述已申领数量的和小于或等于所述可申领数量总额度,则确定对所述号段申领数量验证通过。应当理解,在本发明实施例中,所称处理器501可以是中央处理单元(centralprocessingunit,cpu),该处理器501还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立a硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器504可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器。例如,存储器504还可以存储设备类型的信息。该输入设备503可以包括触控板、指纹采传感器(用于采集用户的指纹信息)、麦克风、实体键盘等,输出设备503可以包括显示器(lcd等)、扬声器等。具体实现中,本发明实施例中所描述的处理器501、存储器504、输入设备502和输出设备503可执行本发明实施例提供的图2或者图3所述的方法实施例所描述的实现方式,也可执行本发明实施例提供的图4所描述的数据处理装置的实现方法,在此不再赘述。所述计算机可读存储介质可以是前述任一实施例所述的设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述服务器所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。以上所揭露的仅为本发明的部分实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。当前第1页1 2 3 
技术特征:1.一种数据处理方法,其特征在于,应用于区块链网络的节点设备,所述方法包括:
接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;
响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;
若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;
在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。
2.根据权利要求1所述方法,其特征在于,所述调用智能合约确定所述号段申领数量对应的目标发票号段,包括:
调用智能合约根据发票号段生成规则和所述号段申领数量生成第一候选发票号段集合;
若所述第一候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第一候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段,所述标识信息用于标识已生成的发票号段;
对所述目标发票号段中的每一个发票号段添加标识信息。
3.根据权利要求2所述方法,其特征在于,所述方法还包括:
若所述第一候选发票号段集合包括的发票号段存在对应的标识信息,则调用所述智能合约根据所述发票号段生成规则和所述号段申领数量生成第二候选发票号段集合;
若所述第二候选发票号段集合包括的发票号段不存在对应的标识信息,则将所述第二候选发票号段集合包括的发票号段作为所述号段申领数量对应的目标发票号段。
4.根据权利要求1所述方法,其特征在于,所述调用智能合约确定所述号段申领数量对应的目标发票号段,包括:
调用智能合约从第一号段池中获取所述号段申领数量对应的目标发票号段,所述第一号段池包括待分配的发票号段;
其中,所述将所述目标发票号段发送至所述用户标识信息对应的开票设备之后,所述方法还包括:
将所述目标发票号段从所述第一号段池中移出。
5.根据权利要求4所述方法,其特征在于,所述方法还包括:
调用所述智能合约对所述第一号段池包括的待分配的发票号段的目标数量进行检测;
若检测到所述目标数量小于或等于数量阈值,则按照发票号段生成规则生成预设数量的发票号段;
将生成的所述预设数量的发票号段添加至所述第一号段池中。
6.根据权利要求5所述方法,其特征在于,所述将所述目标发票号段从所述第一号段池中移出之后,所述将生成的所述预设数量的发票号段添加至所述第一号段池中之前,所述方法还包括:
将所述目标发票号段添加至第二号段池中,所述第二号段池包括已分配的发票号段;
将生成的所述预设数量的发票号段分别与所述第一号段池中的发票号段和所述第二号段池中的发票号段进行匹配;
若匹配均不成功,则执行所述将生成的所述预设数量的发票号段添加至所述第一号段池中的步骤。
7.根据权利要求1所述方法,其特征在于,所述响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证,包括:
响应所述号段申领请求查询所述用户标识信息对应的可申领数量总额度和已申领数量;
若所述号段申领数量与所述已申领数量的和小于或等于所述可申领数量总额度,则确定对所述号段申领数量验证通过。
8.一种数据处理装置,其特征在于,所述数据处理装置配置于区块链网络的节点设备,所述装置包括:
数据获取单元,用于接收用户终端设备发送的号段申领请求,所述号段申领请求包括号段申领数量和所述用户终端设备对应的用户标识信息;
数据处理单元,用于响应所述号段申领请求基于所述用户标识信息对所述号段申领数量进行验证;
所述数据处理单元,还用于若验证通过,则调用智能合约确定所述号段申领数量对应的目标发票号段;
数据发送单元,用于在与所述区块链网络中的其他节点设备针对所述目标发票号段共识通过的情况下,将所述目标发票号段发送至所述用户标识信息对应的开票设备。
9.一种节点设备,其特征在于,包括处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行权利要求1-7任一项所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,所述计算机程序被处理器执行以实现权利要求1-7任一项所述方法。
技术总结本发明实施例提供了一种数据处理方法、装置及可读存储介质,该数据处理方法应用于区块链网络的节点设备,该数据处理方法包括:接收用户终端设别发送的号段申领请求,该号段申领请求包括号段申领数量和该用户终端设备对应的用户标识信息;响应该号段申领请求基于前述用户标识信息对该号段申领数量进行验证;若验证通过,则调用智能合约确定号段申领数量对应的目标发票号段;在与区块链网络中的其他节点设备针对该目标发票号段共识通过的情况下,将该目标发票号段发送至前述用户标识信息对应的开票设备。采用这样的数据处理方法,保证了发票号段的唯一性的同时还可以提升发票号段分配的稳定性。
技术研发人员:李茂材;蓝虎;王宗友;时一防;朱耿良;刘攀;刘区城;杨常青;周开班;黄焕坤;张劲松
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.01.21
技术公布日:2020.06.05