一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于区块链的项目管理方法及装置、电子设备与流程

2021-11-26 23:55:00 来源:中国专利 TAG:


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.图1是本说明书示出的一种智能合约的创建流程的示意图;
52.图2是本说明书示出的一种智能合约的调用流程的示意图;
53.图3是本说明书示出的一种智能合约的创建和调用流程的示意图;
54.图4是本说明书一示例性实施例示出的一种基于区块链的项目管理系统的示意图;
55.图5是本说明书一示例性实施例示出的一种项目承包方的示意图;
56.图6是本说明书一示例性实施例示出的一种基于区块链的项目管理方法的流程图;
57.图7是本说明书一示例性实施例示出的一种电子设备的结构示意图;
58.图8是本说明书一示例性实施例示出的一种基于区块链的项目管理装置的框图。
具体实施方式
59.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
60.需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
61.区块链一般被划分为三种类型:公有链(public blockchain),私有链(private blockchain)和联盟链(consortium blockchain)。此外,还可以有上述多种类型的结合,比如私有链 联盟链、联盟链 公有链等。
62.其中,去中心化程度最高的是公有链。公有链以比特币、以太坊为代表,加入公有链的参与者(也可称为区块链中的节点)可以读取链上的数据记录、参与交易、以及竞争新区块的记账权等。而且,各节点可自由加入或者退出网络,并进行相关操作。
63.私有链则相反,该网络的写入权限由某个组织或者机构控制,数据读取权限受组织规定。简单来说,私有链可以为一个弱中心化系统,其对节点具有严格限制且节点数量较少。这种类型的区块链更适合于特定机构内部使用。
64.联盟链则是介于公有链以及私有链之间的区块链,可实现“部分去中心化”。联盟链中各个节点通常有与之相对应的实体机构或者组织;节点通过授权加入网络并组成利益相关联盟,共同维护区块链运行。
65.基于区块链的基本特性,区块链通常是由若干个区块构成。在这些区块中分别记录有与该区块的创建时刻对应的时间戳,所有的区块严格按照区块中记录的时间戳,构成一条在时间上有序的数据链条。
66.对于物理世界产生的真实数据,可以将其构建成区块链所支持的标准的交易(transaction)格式,然后发布至区块链,由区块链中的节点设备对收到的交易进行共识处理,并在达成共识后,由区块链中作为记账节点的节点设备,将这笔交易打包进区块,在区块链中进行持久化存证。
67.其中,区块链中支持的共识算法可以包括:
68.第一类共识算法,即节点设备需要争夺每一轮的记账周期的记账权的共识算法;例如,工作量证明(proof of work,pow)、股权证明(proof of stake,pos)、委任权益证明(delegated proof of stake,dpos)等共识算法;
69.第二类共识算法,即预先为每一轮记账周期选举记账节点(不需要争夺记账权)的共识算法;例如,实用拜占庭容错(practical byzantine fault tolerance,pbft)等共识算法。
70.在采用第一类共识算法的区块链网络中,争夺记账权的节点设备,都可以在接收到交易后执行该笔交易。争夺记账权的节点设备中可能有一个节点设备在本轮争夺记账权
的过程中胜出,成为记账节点。记账节点可以将收到的交易与其它交易一起打包以生成最新区块,并将生成的最新区块或者该最新区块的区块头发送至其它节点设备进行共识。
71.在采用第二类共识算法的区块链网络中,具有记账权的节点设备在本轮记账前已经商定好。因此,节点设备在接收到交易后,如果自身不是本轮的记账节点,则可以将该交易发送至记账节点。对于本轮的记账节点,在将该交易与其它交易一起打包以生成最新区块的过程中或者之前,可以执行该交易。记账节点在生成最新区块后,可以将该最新区块或者该最新区块的区块头发送至其它节点设备进行共识。
72.如上所述,无论区块链采用以上示出的哪种共识算法,本轮的记账节点都可以将接收到的交易打包以生成最新区块,并将生成的最新区块或者该最新区块的区块头发送至其它节点设备进行共识验证。如果其它节点设备接收到最新区块或者该最新区块的区块头后,经验证没有问题,可以将该最新区块追加到原有的区块链末尾,从而完成区块链的记账过程。其它节点验证记账节点发来的新的区块或区块头的过程中,也可以执行该区块中的包含的交易。
73.在实际应用中,不论是公有链、私有链还是联盟链,都可能提供智能合约(smart contract)的功能。区块链上的智能合约是在区块链上可以被交易触发执行的合约。智能合约可以通过代码的形式定义。
74.以以太坊为例,支持用户在以太坊网络中创建并调用一些复杂的逻辑。以太坊作为一个可编程区块链,其核心是以太坊虚拟机(evm),每个以太坊节点都可以运行evm。evm是一个图灵完备的虚拟机,通过它可以实现各种复杂的逻辑。用户在以太坊中发布和调用智能合约就是在evm上运行的。实际上,evm直接运行的是虚拟机代码(虚拟机字节码,下简称“字节码”),所以部署在区块链上的智能合约可以是字节码。
75.如图1所示,bob将一笔包含创建智能合约信息的交易(transaction)发送到以太坊网络后,各节点均可以在evm中执行这笔交易。其中,图1中交易的from字段用于记录发起创建智能合约的账户的地址,交易的data字段的字段值保存的合约代码可以是字节码,交易的to字段的字段值为一个null(空)的账户。当节点间通过共识机制达成一致后,这个智能合约成功创建,后续用户可以调用这个智能合约。
76.智能合约创建后,区块链上出现一个与该智能合约对应的合约账户,并拥有一个特定的地址;比如,图1中各节点中的“0x68e12cf284
…”
就代表了创建的这个合约账户的地址;合约代码(code)和账户存储(storage)将保存在该合约账户的账户存储中。智能合约的行为由合约代码控制,而智能合约的账户存储则保存了合约的状态。换句话说,智能合约使得区块链上产生包含合约代码和账户存储的虚拟账户。
77.前述提到,包含创建智能合约的交易的data字段保存的可以是该智能合约的字节码。字节码由一连串的字节组成,每一字节可以标识一个操作。基于开发效率、可读性等多方面考虑,开发者可以不直接书写字节码,而是选择一门高级语言编写智能合约代码。例如,高级语言可以采用诸如solidity、serpent、lll语言等。对于采用高级语言编写的智能合约代码,可以经过编译器编译,生成可以部署到区块链上的字节码。
78.以solidity语言为例,用其编写的合约代码与面向对象编程语言中的类(class)很相似,在一个合约中可以声明多种成员,包括状态变量、函数、函数修改器、事件等。状态变量是永久存储在智能合约的账户存储(storage)字段中的值,用于保存合约的状态。
79.如图2所示,仍以以太坊为例,bob将一笔包含调用智能合约信息的交易发送到以太坊网络后,各节点均可以在evm中执行这笔交易。其中,图2中交易的from字段用于记录发起调用智能合约的账户的地址,to字段用于记录被调用的智能合约的地址,交易的data字段用于记录调用智能合约的方法和参数。调用智能合约后,合约账户的账户状态可能改变。后续,某个客户端可以通过接入的区块链节点(例如图2中的节点1)查看合约账户的账户状态。
80.智能合约可以以规定的方式在区块链网络中每个节点独立的执行,所有执行记录和数据都保存在区块链上,所以当这样的交易执行完毕后,区块链上就保存了无法篡改、不会丢失的交易凭证。
81.创建智能合约和调用智能合约的示意图如图3所示。以太坊中要创建一个智能合约,需要经过编写智能合约、变成字节码、部署到区块链等过程。以太坊中调用智能合约,是发起一笔指向智能合约地址的交易,各个节点的evm可以分别执行该交易,将智能合约代码分布式的运行在以太坊网络中每个节点的虚拟机中。
82.智能合约的事件机制,是智能合约与链外实体进行交互的一种方式。对于区块链上部署的智能合约来说,通常无法直接与链外实体进行交互;例如,智能合约在调用完成后,通常无法将智能合约的调用结果,点对点的发送给智能合约的调用发起方。
83.智能合约在调用的过程中产生的调用结果(包括中间结果和最终的调用结果),通常都会以事件(event)的形式,记录到调用该智能合约的那笔交易的交易日志(transaction logs),在节点设备的存储空间中进行存储。而需要与智能合约进行交互的链外实体,则可以通过监听节点设备的存储空间中存储的上述交易日志的方式,来获取智能合约的调用结果;
84.例如,以以太坊为例,交易日志最终会作为调用该智能合约的那笔交易笔交易的收据(receipt)的一部分内容,存储在以上描述的mpt收据树中。而与智能合约进行交互的链外实体,可以监听节点设备的存储空间中存储的mpt收据树上的交易收据,并从监听到的交易收据中,来获取智能合约生成的事件。
85.或者,智能合约在调用过程中产生的调用结果,也可以以事件的形式,记录到该智能合约的合约日志,在节点设备的存储空间中进行存储。而需要与智能合约进行交互的链外实体,则可以通过监听节点设备的存储空间中存储的该智能合约的合约日志,来获取智能合约的调用结果。
86.请参考图4,图4是本说明书一示例性实施例示出的一种基于区块链的项目管理系统的示意图。
87.如图4所示,该基于区块链的项目管理系统可以是由项目发包方、项目承包方和金融机构构成的区块链系统。
88.其中,项目发包方所使用的电子设备可以作为节点设备加入至该区块链,或者,项目发包方所使用的电子设备可以与该区块链中的节点设备建立连接,以通过该节点设备访问该区块链;同样地,项目承包方所使用的电子设备可以作为节点设备加入至该区块链,或者,项目承包方所使用的电子设备可以与该区块链中的节点设备建立连接,以通过该节点设备访问该区块链;金融机构所使用的电子设备也可以作为节点设备加入至该区块链,或者,金融机构所使用的电子设备可以与该区块链中的节点设备建立连接,以通过该节点设
备访问该区块链。该电子设备可以是服务器、计算机、手机、平板设备、笔记本电脑或掌上电脑(pdas,personal digital assistants)等,本说明书对此不作限制。
89.在工程项目的建设流程中,可以由项目发包方以合同形式委托项目承包方进行工程项目建设,而项目承包方则可以进一步以合同形式雇佣员工,由雇佣的员工执行工程项目建设中的具体工作。
90.在实际应用中,如图5所示,项目承包方具体可以是多级项目承包方的统称;其中,第一级项目承包方可以是总包方,第二级项目承包方可以是多个分包方,第三级项目承包方可以是材料供应商、劳务公司和设备供应商等。对于由总包方承包的某个工程项目,总包方可以将该工程项目中的部分工作分包给具有相应资质的分包方,由分包方按照分包合同的约定进行该工程项目的建设;分包方可以从材料供应商处购买该工程项目的建设所需的材料,还可以委托劳务公司雇佣员工,由雇佣的员工执行其承担的该工程项目中的部分工作,并由劳务公司对雇佣的员工进行管理。
91.一方面,在完成了某个阶段的该工程项目建设的情况下,多级项目承包方中的第一级项目承包方可以按照承包合同的约定,将与该阶段的工程项目对应的项目总产值上报给项目发包方,由项目发包方对由第一级项目承包方上报的该项目总产值进行确认,例如:总包方(即第一级项目承包方)可以在每月1日,按照承包合同的约定,将与在上月1日至本月1日的时间段内建设的工程项目对应的项目总产值上报给项目发包方,由项目发包方对由总包方上报的该项目总产值进行确认。如果项目发包方确认了该项目总产值,则说明项目发包方应当向第一级项目承包方支付与该项目总产值等额的资金作为工程款项。
92.另一方面,第一级项目承包方之下的任意一级项目承包方(称为目标承包方)也可以按照相应的合同的约定,将某个阶段内的项目产值上报给目标项目承包方的上一级项目承包方,由上一级项目承包方对由目标项目承包方上报的该项目产值进行确认,例如:图5中示出的材料供应商(即第三级项目承包方)可以在每月1日,按照供应合同的约定,将在上月1日至本月1日的时间段内向该工程项目供应的材料的总价值作为项目产值,上报给与该材料供应商对接的分包方(即第二级项目承包方),由该分包方对由该材料供应商上报的项目产值进行确认。如果上一级项目承包方确认了该项目产值,则说明上一级项目承包方应当向目标项目承包方支付与该项目产值等额的资金。
93.请参考图6,图6是本说明书一示例性实施例示出的一种基于区块链的项目管理方法的流程图。该基于区块链的项目管理方法可以应用于图4所示的项目管理系统,包括以下步骤:
94.步骤601,接收所述多级项目承包方中不为所述第一级项目承包方的任一目标项目承包方上传的目标项目产值数据,并将所述目标项目产值数据发布至所述区块链进行存储;
95.步骤602,响应于由所述目标项目承包方的上一级项目承包方发起的针对所述目标项目产值数据的产值确认交易,调用部署在所述区块链上的智能合约中声明的凭证拆分逻辑,基于所述目标项目产值数据确定所述上一级项目承包方针对所述目标项目承包方的目标未支付账款,并从上一级凭证中拆分出对应于所述目标未支付账款的目标凭证,以将所述目标凭证存储至所述目标项目承包方的项目账户;其中,所述上一级凭证为所述上一级项目承包方的项目账户中存储的凭证。
96.下面以上述项目管理系统为基于区块链搭建的供应链金融系统为例,对本技术技术方案进行详细描述。
97.需要说明的是,该项目管理系统为基于区块链搭建的供应链金融系统仅为示例性的,并不用于对本技术技术方案进行限定;显而易见的,在实际应用中,本领域技术人员可以基于实际的需求,来灵活地搭建该项目管理系统。
98.在本实施例中,在上述供应链金融系统中,可以包括项目发包方和多级项目承包方,还可以包括金融机构(例如:银行)。其中,该供应链金融系统中的核心企业可以是该供应链金融系统中的项目发包方,或者多级项目承包方中的第一级项目承包方。
99.需要说明的是,承建同一个工程项目的项目发包方和多级项目承包方属于同一个供应链金融系统;承建不同的工程项目的项目发包方和项目承包方属于不同的供应链金融系统。也即,供应链金融系统与工程项目之间存在对应关系;对于一个供应链金融系统,该供应链金融系统与其中的项目发包方和多级项目承包方承建的工程项目对应。
100.上述区块链的运营方在搭建区块链网络时,可以对区块链所支持的对象进行扩展。
101.具体地,一方面,在传统的区块链(例如:以太坊)中,区块链所支持的对象通常仅包括账户对象(即用户在区块链中创建的账户)和合约对象(即智能合约)两类。在本说明书中,可以对上述区块链支持的对象进行扩展,在现有的账户对象和合约对象的基础上进一步扩展出一个特定对象(即本说明书中的凭证)。也即,该区块链所支持的对象可以包括账户对象、合约对象和扩展出的特定对象等三类。
102.另一方面,在传统的区块链(例如:以太坊)中,区块链所支持的对象的balance字段(即地址字段)通常用于指示对象持有的代币的数量。在本说明书中,可以对上述区块链所支持的账户对象的balance字段的含义进行扩展,将该balance字段扩展为用于维护该对象持有的凭证的地址信息。在实际应用中,一个账户对象的balance字段可以维护多个凭证的地址信息。
103.在这种情况下,上述供应链金融系统中的项目发包方和多级项目承包方在作为该区块链的成员节点加入该区块链后,可以分别在该区块链中创建与其承建的工程项目(称为目标项目)对应的账户对象(称为项目账户)。对于该供应链金融系统中的项目发包方或任一项目承包方,其持有的凭证的地址信息可以存储在其项目账户的balance字段中。
104.在本实施例中,上述凭证可以用于向上述供应链金融系统中的金融机构发起贷款。该供应链金融系统与目标项目对应,该凭证也与目标项目相对应,该凭证只能在该供应链金融系统中流通。对于该供应链金融系统中的项目发包方或任一项目承包方,该供应链金融系统中的金融机构需要以目标项目的项目产值以及核心企业的信用为基础,才能基于该凭证向其发放贷款。
105.上述供应链金融系统中的核心企业(也可以是上述区块链的运营方或第三方)可以预先开发用于资产管理的智能合约,并在该智能合约中声明与资产管理的执行逻辑相关的程序代码(例如:一些可供调用的程序方法或者函数)。
106.其中,资产管理的执行逻辑具体可以包括用于创建凭证的凭证创建逻辑,以及用于对凭证进行拆分的凭证拆分逻辑等。
107.在实际应用中,本领域技术人员也可以基于实际的业务需求,在智能合约中声明
除了凭证创建逻辑和凭证拆分逻辑之外的其它资产管理的执行逻辑,本说明书对此不做特别限定。
108.上述核心企业在完成上述智能合约的开发后,可以将该智能合约以交易的形式在上述区块链中进行发布;而该区块链中的节点设备在收到该交易后,可以基于该区块链支持的共识算法,对该交易进行共识,并在共识通过后,将该智能合约收录至该区块链的分布式数据库中完成智能合约的部署。
109.在上述智能合约在上述区块链中部署完成后,上述供应链金融系统中的项目发包方、多级项目承包方和金融机构都可以通过向该区块链发布交易,调用该智能合约中声明的资产管理的执行逻辑,完成凭证的创建和拆分等操作。
110.其中,创建和调用上述智能合约的具体流程可以参考如图1、图2和图3所示的智能合约的创建和调用流程,本说明书在此不再赘述。
111.在本实施例中,一方面,在完成了某个阶段的上述目标项目的建设时,上述多级项目承包方中的第一级项目承包方可以按照承包合同的约定,确定与该阶段的工程项目对应的项目总产值,并将包括该项目总产值的数据(称为项目总产值数据)上传至上述区块链中的节点设备,由该节点设备将该项目总产值数据发布至该区块链进行存储。具体地,参考前述的在区块链中持久化存证数据的过程,该节点设备可以将该项目总产值数据构建成区块链所支持的标准的交易格式,并将构建的交易发布至该区块链,由该区块链中的节点设备对该交易进行共识处理,并在达成共识后,由该区块链中作为记账节点的节点设备,将该交易打包进区块,在该区块链中进行持久化存证。
112.上述项目发包方可以对该区块链中存证的数据进行监听,从而可以监听到包括上述项目总产值数据的交易。项目发包方在监听到该交易时,可以对该交易中的项目总产值数据进行确认。具体地,该项目总产值数据除了包括项目总产值之外,还可以包括项目名称、建设进度和第一级项目承包方的名称等数据,项目发包方可以基于这些数据,对该项目总产值数据进行确认。
113.项目发包方在确认了该项目总产值数据时,可以将对应于该项目总产值数据的产值确认信息(即为指示项目发包方已经确认了该项目总产值数据的信息)发送至该区块链的节点设备,由该节点设备将该产值确认信息发布至该区块链进行存储。具体地,参考前述的在区块链中持久化存证数据的过程,该节点设备可以将该产值确认信息构建成区块链所支持的标准的交易格式,并将构建的交易(称为产值确认交易)发布至该区块链,由该区块链中的节点设备对该产值确认交易进行共识处理,并在达成共识后,由该区块链中作为记账节点的节点设备,将该产值确认交易打包进区块,在该区块链中进行持久化存证。
114.对于打包进区块的该产值确认交易,该区块链中的节点设备可以响应于该产值确认交易,调用部署在该区块链上的智能合约中声明的凭证创建逻辑,基于上述项目总产值数据确定上述项目发包方针对上述第一级项目承包方的未支付账款(称为第一级未支付账款),并基于第一级未支付账款创建凭证(称为第一级凭证),以将第一级凭证存储至第一级项目承包方的项目账户,从而使第一级项目承包方持有第一级凭证。具体地,第一级凭证的额度等于第一级未支付账款的金额;可以将第一级凭证的地址信息,添加至第一级项目承包方的项目账户的balance字段。
115.在示出的一种实施方式中,项目发包方所使用的电子设备可以向项目发包方提供
用户界面,项目发包方可以在该用户界面中输入已经以除了凭证之外的其他方式(例如:现金方式)支付给第一级项目承包方的已支付账款(称为第一级已支付账款)的金额,并通过该用户界面对上述项目总产值进行确认。在这种情况下,在由项目发包方发起的上述产值确认交易中,除了包括上述产值确认信息之外,还可以包括第一级已支付账款;进而在基于上述项目总产值数据确定上述第一级未支付账款时,可以计算项目总产值的金额与第一级已支付账款的金额的差值,并将该差值确定为第一级未支付账款的金额,即:第一级未支付账款的金额=项目总产值的金额-第一级已支付账款的金额。
116.另一方面,上述第一级项目承包方之下的任意一级项目承包方(称为目标承包方)也可以按照相应的合同的约定,确定某个阶段内的项目产值,并将包括该项目产值的数据(称为目标项目产值数据)上传至上述区块链中的节点设备,由该节点设备将目标项目产值数据发布至该区块链进行存储。具体地,参考前述的在区块链中持久化存证数据的过程,该节点设备可以将目标项目产值数据构建成区块链所支持的标准的交易格式,并将构建的交易发布至该区块链,由该区块链中的节点设备对该交易进行共识处理,并在达成共识后,由该区块链中作为记账节点的节点设备,将该交易打包进区块,在该区块链中进行持久化存证。
117.上述目标承包方的上一级项目承包方可以对该区块链中存证的数据进行监听,从而可以监听到包括上述目标项目产值数据的交易。上一级项目承包方在监听到该交易时,可以对该交易中的目标项目产值数据进行确认。具体地,目标项目产值数据除了包括项目产值之外,还可以包括项目名称(例如:材料供应)、供应量和目标项目承包方的名称等数据,上一级项目承包方可以基于这些数据,对目标项目产值数据进行确认。
118.上一级项目承包方在确认了目标项目产值数据时,可以将对应于目标项目产值数据的产值确认信息(即为指示上一级项目承包方已经确认了目标项目产值数据的信息)发送至该区块链的节点设备,由该节点设备将该产值确认信息发布至该区块链进行存储。具体地,参考前述的在区块链中持久化存证数据的过程,该节点设备可以将该产值确认信息构建成区块链所支持的标准的交易格式,并将构建的交易(称为产值确认交易)发布至该区块链,由该区块链中的节点设备对该产值确认交易进行共识处理,并在达成共识后,由该区块链中作为记账节点的节点设备,将该产值确认交易打包进区块,在该区块链中进行持久化存证。
119.对于打包进区块的该产值确认交易,该区块链中的节点设备可以响应于该产值确认交易,调用部署在该区块链上的智能合约中声明的凭证拆分逻辑,基于目标项目产值数据确定上述上一级项目承包方针对上述目标项目承包方的未支付账款(称为目标未支付账款),并从上一级项目承包方的项目账户中存储的凭证(称为上一级凭证)中拆分出对应于目标未支付账款的凭证(称为目标凭证),以将目标凭证存储至目标项目承包方的项目账户,从而使目标项目承包方持有目标凭证。具体地,目标凭证的额度等于目标未支付账款的金额;可以将目标凭证的地址信息添加至目标项目承包方的项目账户的balance字段。
120.需要说明的是,在从上一级凭证中拆分出目标凭证后,拆分后的上一级凭证的额度为拆分前的上一级凭证的额度与目标凭证的额度的差值,即:拆分后的上一级凭证的额度=拆分前的上一级凭证的额度-目标凭证的额度。
121.在示出的一种实施方式中,上一级项目承包方所使用的电子设备可以向上一级项
目承包方提供用户界面,上一级项目承包方可以在该用户界面中输入已经以除了凭证之外的其他方式(例如:现金方式)支付给目标项目承包方的已支付账款(称为目标已支付账款)的金额,并通过该用户界面对上述目标项目承包方上传的项目产值进行确认。在这种情况下,在由上一级项目承包方发起的上述产值确认交易中,除了包括上述产值确认信息之外,还可以包括目标已支付账款;进而在基于上述目标项目产值数据确定上述目标未支付账款时,可以计算目标项目产值数据中的项目产值的金额与目标已支付账款的金额的差值,并将该差值确定为上述目标未支付账款的金额,即:目标未支付账款的金额=项目产值的金额-目标已支付账款的金额。
122.在示出的一种实施方式中,在对上述上一级凭证进行拆分时,可以先确定上述目标未支付账款的金额是否超过上一级凭证的额度。
123.如果目标未支付账款的金额未超过上一级凭证的额度,则可以从上一级凭证中拆分出上述目标凭证,以将目标凭证存储至目标项目承包方的项目账户。
124.然而,如果目标未支付账款的金额超过上一级凭证的额度,则无法进行凭证拆分,参考前述的智能合约的事件机制,此时可以生成拆分失败事件,并将该拆分失败事件记录到上述产值确认交易的交易日志或上述智能合约的合约日志,在上述区块链中的节点设备的存储空间中进行存储。上一级项目承包方可以通过监听该区块链中的节点设备的存储空间中存储的该交易日志或该合约日志,获取到该拆分失败事件,从而可以输出指示凭证拆分失败的通知消息,以提醒上一级项目承包方未能成功完成针对目标项目承包方的账款支付。
125.在实际应用中,由于第一级项目承包方每隔一个阶段就会上传一次该阶段内的项目总产值数据,因此针对每个阶段都会创建对应的第一级凭证,而各级项目承包方也就可以得到分别对应于不同阶段的多个凭证,即各级项目承包方的项目账户中存储的凭证可能有多个。
126.在这种情况下,在确定上述目标未支付账款的金额是否超过上述上一级凭证的额度时,可以先统计上一级项目承包方的项目账户中存储的所有凭证的总额度,再确定目标未支付账款的金额是否超过该总额度,如果未超过,则可以对上一级项目承包方的项目账户中存储的所有凭证进行组合、拆分。
127.举例来说,假设上述多级项目承包方中的第二级项目承包方一共持有3个凭证(即第二级项目承包方的项目账户中存储的所有凭证的数量为3个),分别为:对应于1月1日至2月1日的时间段的凭证1(额度为200万元)、对应于2月1日至3月1日的时间段的凭证2(额度为100万元)、对应于3月1日至4月1日的时间段的凭证3(额度为150万元);进一步假设第二级项目承包方针对第三级项目承包方(即第二级项目承包方的下一级项目承包方)的对应于3月1日至4月1日的时间段的未支付账款的金额为300万元,则由于200万元 100万元 150万元=450万元>300万元,因此可以直接将凭证1和凭证2存储至第三级项目承包方的项目账户,此时第二级项目承包方的项目账户仅存储凭证3,这样相当于从凭证1、凭证2和凭证3的总和中拆分出凭证1和凭证2;或者,也可以将凭证3和从凭证1中拆分出的凭证4(额度为150万元)存储至第三级项目承包方的项目账户,此时第二级项目承包方的项目账户存储拆分后的凭证1(额度为50万元)和凭证2,这样相当于从凭证1、凭证2和凭证3的总和中拆分出凭证3和凭证4。
128.在示出的一种实施方式中,上述多级项目承包方中的任一需要贷款的项目承包方(即上述第一级项目承包方和上述目标项目承包方中的任一需要贷款的项目承包方)都可以将包括贷款金额的贷款请求发送至该区块链的节点设备,由该节点设备将该贷款请求发布至该区块链进行存储。具体地,参考前述的在区块链中持久化存证数据的过程,该节点设备可以将该贷款请求构建成区块链所支持的标准的交易格式,并将构建的交易(称为贷款交易)发布至该区块链,由该区块链中的节点设备对该贷款交易进行共识处理,并在达成共识后,由该区块链中作为记账节点的节点设备,将该贷款交易打包进区块,在该区块链中进行持久化存证。
129.对于打包进区块的该贷款交易,该区块链中的节点设备可以响应于该贷款交易,调用部署在该区块链上的智能合约中声明的凭证拆分逻辑,从该项目承包方的项目账户中存储的凭证中拆分出对应于上述贷款金额的凭证(称为贷款凭证),以将贷款凭证存储至上述金融机构在该区块链中创建的区块链账户,从而使金融机构可以将以对应于贷款凭证的未支付账款视为抵押,基于贷款凭证的额度向该项目承包方发放贷款。具体地,金融机构可以基于贷款凭证的额度,从金融机构的管理账户向该项目承包方的资金账户(例如:在金融机构开通的账户)进行转账处理。
130.在实际应用中,在对该项目承包方的项目账户中存储的凭证进行拆分时,可以先确定上述贷款金额是否超过该项目承包方的项目账户中存储的凭证的额度。
131.如果该贷款金额未超过该项目承包方的项目账户中存储的凭证的额度,则可以从该项目承包方的项目账户中存储的凭证中拆分出对应于该贷款金额的贷款凭证,以将贷款凭证存储至上述金融机构在该区块链中创建的区块链账户。
132.然而,如果该贷款金额超过该项目承包方的项目账户中存储的凭证的额度,则无法进行凭证拆分,参考前述的智能合约的事件机制,此时可以生成贷款失败事件,并将该贷款失败事件记录到上述贷款交易的交易日志或上述智能合约的合约日志,在上述区块链中的节点设备的存储空间中进行存储。该项目承包方可以通过监听该区块链中的节点设备的存储空间中存储的该交易日志或该合约日志,获取到该贷款失败事件,从而可以输出指示贷款失败的通知消息,以提醒该项目承包方未能成功完成贷款。
133.在示出的一种实施方式中,可以由上述项目发包方发起针对上述贷款凭证的还款交易。上述区块链中的节点设备可以将该还款交易发布至该区块链进行存储,从而使上述金融机构在监听到该还款交易时,基于贷款凭证的额度,从项目发包方的资金账户向金融机构的管理账户进行转账处理,并从金融机构在该区块链中创建的区块链账户中移除贷款凭证。
134.或者,可以由上述需要贷款且已经成功完成贷款的项目承包方发起针对上述贷款凭证的还款交易。上述区块链中的节点设备可以将该还款交易发布至该区块链进行存储,从而使上述金融机构在监听到该还款交易时,基于贷款凭证的额度,从该项目承包方的资金账户向金融机构的管理账户进行转账处理,并将贷款凭证从金融机构在该区块链中创建的区块链账户转移至该项目承包方的项目账户。
135.在上述技术方案中,可以在供应链金融系统中,项目发包方确认了第一级项目承包方上传的项目总产值时,生成对应于项目发包方针对第一级项目承包方的未支付账款的凭证,并根据第一级项目承包方针对第二级项目承包方的未支付账款对该凭证进行拆分,
以此类推,从而使该供应链金融系统中的各级项目承包方都能够得到与该项目承包方上报但尚未被支付的项目产值对应的凭证。这样,可以保证工程项目建设中项目发包方针对第一级项目承包方或者上一级项目承包方针对下一级项目承包方的未支付款项的足额支付,保障项目承包方的基本利益。
136.与前述基于区块链的项目管理方法的实施例相对应,本说明书还提供了基于区块链的项目管理装置的实施例。
137.本说明书基于区块链的项目管理装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本说明书基于区块链的项目管理装置所在电子设备的一种硬件结构图,除了图7所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该基于区块链的项目管理的实际功能,还可以包括其他硬件,对此不再赘述。
138.请参考图8,图8是本说明书一示例性实施例示出的一种基于区块链的项目管理装置的框图。该基于区块链的项目管理装置80可以应用于如图7所示的基于区块链搭建的项目管理系统中的电子设备;所述项目管理系统包括目标项目的项目发包方和多级项目承包方;所述项目发包方和多级项目承包方分别在所述区块链中创建了与所述目标项目对应的项目账户;其中,所述多级项目承包方中的第一级项目承包方的项目账户中存储了基于所述项目发包方针对所述第一级项目承包方的第一级未支付账款创建的第一级凭证;该基于区块链的项目管理装置80可以包括:
139.第一接收模块801,用于接收所述多级项目承包方中不为所述第一级项目承包方的任一目标项目承包方上传的目标项目产值数据,并将所述目标项目产值数据发布至所述区块链进行存储;
140.拆分模块802,用于响应于由所述目标项目承包方的上一级项目承包方发起的针对所述目标项目产值数据的产值确认交易,调用部署在所述区块链上的智能合约中声明的凭证拆分逻辑,基于所述目标项目产值数据确定所述上一级项目承包方针对所述目标项目承包方的目标未支付账款,并从上一级凭证中拆分出对应于所述目标未支付账款的目标凭证,以将所述目标凭证存储至所述目标项目承包方的项目账户;其中,所述上一级凭证为所述上一级项目承包方的项目账户中存储的凭证。
141.在本实施例中,所述装置80还包括:
142.第二接收模块803,用于接收所述第一级项目承包方上传的项目总产值数据,并将所述项目总产值数据发布至所述区块链进行存储;
143.创建模块804,用于响应于由所述项目发包方发起的针对所述项目总产值数据的产值确认交易,调用部署在所述区块链上的智能合约中声明的凭证创建逻辑,基于所述项目总产值数据确定所述项目发包方针对所述第一级项目承包方的第一级未支付账款,并基于所述第一级未支付账款创建第一级凭证,以将所述第一级凭证存储至所述第一级项目承包方的项目账户。
144.在本实施例中,所述拆分模块802具体用于:
145.确定所述目标未支付账款的金额是否超过所述上一级凭证的额度;
146.如果所述目标未支付账款的金额未超过所述上一级凭证的额度,则从所述上一级凭证中拆分出对应于所述目标未支付账款的目标凭证,以将所述目标凭证存储至所述目标项目承包方的项目账户。
147.在本实施例中,所述拆分模块802还用于:
148.如果所述目标未支付账款的金额超过所述上一级凭证的额度,则生成拆分失败事件,以由所述上一级项目承包在监听到所述拆分失败事件时,输出指示凭证拆分失败的通知消息。
149.在本实施例中,所述产值确认交易包括由上一级项目承包方设置的所述上一级项目承包方针对所述目标项目承包方的目标已支付账款;
150.所述拆分模块802具体用于:
151.计算所述目标项目产值数据与所述目标已支付账款的差值,并基于所述差值确定所述上一级项目承包方针对所述目标项目承包方的目标未支付账款。
152.在本实施例中,所述项目管理系统为供应链金融系统;所述项目发包方或所述第一级项目承包方为所述供应链金融系统中的核心企业;所述供应链金融系统还包括金融机构;其中,所述凭证用于向所述金融机构发起贷款。
153.在本实施例中,所述装置80还包括:
154.第三接收模块805,用于接收所述多级项目承包方中的任一需要贷款的项目承包方发送的贷款交易,并将所述贷款交易发布至所述区块链进行存储;其中,所述贷款交易包括预设的贷款金额;
155.贷款模块806,用于响应于所述贷款交易,调用部署在所述区块链上的智能合约中声明的凭证创建逻辑,从所述需要贷款的项目承包方的项目账户中存储的凭证中拆分出对应于所述贷款金额的贷款凭证,以将所述贷款凭证存储至所述金融机构在所述区块链中创建的区块链账户,从而使所述金融机构基于所述贷款凭证的额度向所述需要贷款的项目承包方发放贷款。
156.在本实施例中,所述装置80还包括:
157.还款模块807,用于接收所述项目发包方发送的针对所述贷款凭证的还款交易,并将所述还款交易发布至所述区块链进行存储,以使所述金融机构在监听到所述还款交易时,基于所述贷款凭证的额度从所述项目发包方的资金账户向所述金融机构的管理账户进行转账处理,并从所述金融机构在所述区块链中创建的区块链账户中移除所述贷款凭证;
158.或者用于,接收所述需要贷款的项目承包方发送的针对所述贷款凭证的还款交易,并将所述还款交易发布至所述区块链进行存储,以使所述金融机构在监听到所述还款交易时,基于所述贷款凭证的额度从所述需要贷款的项目承包方的资金账户向所述金融机构的管理账户进行转账处理,并将所述贷款凭证从所述金融机构在所述区块链中创建的区块链账户转移至所述需要贷款的项目承包方的项目账户。
159.在本实施例中,所述凭证用于向所述金融机构发起融资贷款。
160.上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
161.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件
说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
162.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
163.在一个典型的配置中,计算机包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
164.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
165.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
166.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
167.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
168.在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
169.应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来
描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
170.以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献