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

基于区块链的订单处理方法、装置和服务器

2022-11-23 16:52:30 来源:中国专利 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.图1为本技术实施例提供的基于区块链的订单处理方法的应用场景示意图;
31.图2为本技术一个实施例提供的基于区块链的订单处理方法的流程示意图;
32.图3为本技术一个实施例提供的区块链网络结构示意图;
33.图4为本技术一个实施例中提供的基于区块链的订单处理装置的结构示意图;
34.图5为本技术一个实施例中提供的服务器的结构示意图;
35.图6为本技术一个实施例中提供的计算机可读存储介质的结构示意图。
具体实施方式
36.下面将对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
37.为了更详细说明本技术,下面结合附图对本技术提供的一种基于区块链的订单处理方法、装置、终端设备和计算机可读存储介质,进行具体地描述。
38.请参考图1,图1示出了本技术实施例提供的基于区块链的订单处理方法的应用场景的示意图,该应用场景包括本技术实施例提供的用户端102和服务器104,其中服务器104与用户端102之间设置有网络。网络用于在用户端102和服务器104之间提供通信链路的介质。其中,用户端102通过网络与服务器104交互,以接收或发送消息等,服务器104可以是提供各种服务的服务器。其中服务器104可以用来执行本技术实施例中提供的区块链的订单处理方法,客户可以通过用户端来进行下单,从而生成订单信息从而发送给服务器104。
39.可选的,用户端102可以是具有显示屏的各种电子设备,包括但不限于智能手机和计算机设备,其中计算机设备可以是台式计算机、便携式计算机、膝上型计算机、平板电脑等设备中的至少一种。用户端102可以泛指多个终端设备中的一个。
40.应该理解,用户端、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器可以是多个服务器组成的服务器集群等。
41.基于此,本技术实施例中提供了一种基于区块链的订单处理方法。请参阅图2,图2示出了本技术实施例提供的一种基于区块链的订单处理方法的流程示意图,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
42.步骤s110,接收客户通过用户端发送的订单信息。
43.具体地,当客户需要购买商品或者服务时,可以通过用户端进入与提供商品与服务相关的app或网页,办理下单业务,并填写相关信息,从而生成订单信息。例如客户办理下单业务可以时可以选择使用商家提供的前端页面进行办理,以生成订单信息。
44.订单类型或者种类可以是多种,例如购物订单等。
45.订单信息可以包括但不限于订单种类或类型,订单中物品或服务名称,物品数量、颜色,服务机构等。
46.步骤s120,根据订单信息建立一个区块链网络;区块链网络包含一个商家节点,其中商家节点存储智能合约和账本;智能合约是根据订单信息确定的。
47.当客户下单后形成订单信息后,将订单信息发送给商家后台服务器,该服务器此时可以生成一个区块链网络,该区块链网络中包含有商家节点,商家节点其实质就是一个区块链节点,主要用来维持和存储于订单信息相关的智能合约和账本。
48.智能合约是传统合约的数字化版本,是在区块链系统上自动运行的计算机程序,可以在满足约定条件时自动执行。智能合约一旦部署就不可更改,具备可信特征。区块链与智能合约是天生的联盟,可有效结合使用。在本实施例中,智能合约主要部署在区块链商家节点上面的代码,由订单信息确定的,该代码中记录了整个订单中涉及的变量。账本主要是用来记录区块链中的各个交易,即记录区块链等信息。
49.步骤s130,接收客户通过用户端发送的区块链网络加入请求,在区块链网络中增加客户节点。
50.步骤s140,分别将根据智能合约形成的智能合约副本和根据账本形成的账本副本发送至客户节点,以使客户节点存储智能合约副本和账本副本。
51.具体来说,区块链网络具有准入机制,与订单信息相关性的客户可以申请加入该区块链网络。具体操作过程为:客户可以采用用户端,利用商家提供的前端页面,点击加入按钮进行一键加入区块链网络,商家后端服务器会执行相应的代码完成对将客户节点加入区块链网络。如果客户不信任商家,用户也可以自行通过代码连入区块链网络。其中,客户节点又称为对等节点,表示与商家节点具有对等或相同功能的节点。
52.对等节点的数量可以是一个或多个。具体与订单中涉及到的用户数量有关,其中在订单中涉及到或者是与订单性关联的用户都可以申请加入该区块链网络,一个用户就可以形成一个对等节点。
53.进一步地,给出了一种具有多个对等节点的实施方式,详细描述如下:
54.在一个实施例中,方法还包括:接收任意一个或多个中间用户发送的区块链网络加入请求,在区块链网络中对应增加一个或多个中间用户节点;中间用户节点存储智能合约副本和账本副本;其中,中间用户是指与订单信息相关联的,除了商家和客户之外的其他用户。
55.具体而言,一个订单中通常情况下,除了涉及到一个商家和一个客户之外,往往还涉及到其他的一些用户或公司,即与订单信息相关联的除了商家和客户之外,还有其他用户。如果一个订单还涉及一些公司,这些公司中的一个或多个都可以选择加入区块链网络。此时,这些公司中的一个或多个需要加入区块链网络时,可以采用终端设备发送的区块链网络加入请求至服务器,服务器根据其情况在区块链网络中构建出相应数量的中间用户节点,又称为对等节点。其中,区块链网络的结构图请参照图3,其中n表示区块链网络,p1、p2和p3表示对等节点,s表示智能合约,l表示账本。这些节点中的任一个对等节点可以表示商家节点,其他对等节点分别表示客户节点或中间用户节点。除了商家节点上存储智能合约和账本外,其他对等节点都是存储智能合约副本,和账本副本。智能合约副本、账本副本分别是智能合约、账本的复制文件,其内容与智能合约和账本的内容都是相同的。
56.步骤s150,当商家需要修改智能合约中的订单变量时,发起第一修改变量交易。
57.步骤s160,将第一修改变量交易广播到用户端。
58.步骤s170,接收客户通过用户端发送的第一修改变量交易确认指令。
59.当对订单过程涉及的变量进行赋值或者更改的时候,都会调用智能合约中相应的函数,对合约中相关的变量也同步更改。并且调用合约的函数的操作被认为是一笔交易,这些交易最终都会存入账本中的区块链中。即当商家需要修改智能合约中的订单变量时,商家会发动一笔区块链上交易,并通过区块链网络中广播出去。客户收到交易,确认交易无误。也就是客户可以从商家前端页面查询到此时有一笔待执行交易,客户点击确认,完成交易确认。或者用户可以使用代码连接区块链网络,获取到未确认交易,并进行确认,确认后可以发送第一修改变量交易确认指令至服务器。
60.步骤s180,执行第一修改变量交易,根据第一修改变量交易生成第一智能合约和第一账本。
61.步骤s190,根据第一智能合约来更新智能合约和智能合约副本;并根据第一账本来更新账本和账本副本。
62.当服务器接收到第一修改变量交易确认指令后,执行第一修改变量交易。另外,第一修改变量交易会生成一个新的与订单相关的智能合约,并且会将客户订单变量涉及的值赋值给智能合约相应变量,即根据第一修改变量交易生成第一智能合约和第一账本。最后根据第一智能合约来更新智能合约和智能合约副本;并根据第一账本来更新账本和账本副本。
63.当商家想修改智能合约上面的变量,就会发动一笔调用合约函数的交易,但是客户有权拒绝该交易,并且客户也维护了合约的副本,导致该过程无法实施。所以该机制保证数据一致性,不可篡改性。
64.本技术实施例中的基于区块链的订单处理方法,构建区块链网络,其中商家和用户都可以加入区块链网络;并将订单生成、修改以及删除等都记录在智能合约中,并且只有在客户商家才能修改智能合约,避免了商家随意修改订单,保证订单准确性和安全性,当订单出现问题时也方便查询。
65.接下来,给出了一种客户修改订单变量的实施方式,详细描述如下:
66.在一个实施例中,方法还包括:
67.s1:当客户需要修改智能合约中的订单变量时,接收客户通过用户端发送的第二修改变量交易。
68.s2:确认并执行第二修改变量交易;
69.s3:根据第二修改变量交易生成第二智能合约和第二账本;
70.s4:根据第二智能合约来更新智能合约和智能合约副本;并根据第二账本来更新账本和账本副本。
71.具体来说,当客户家想修改智能合约上面的变量,也会发动一笔调用合约函数的交易(即第二修改变量交易)。首先将第二修改变量交易通过用户端发送至服务器,商家通过服务器确认该交易无误时,就可以执行第二修改变量交易。在执行第二修改变量交易后,根据第二修改变量交易生成第二智能合约和第二账本;根据第二智能合约来更新智能合约和智能合约副本;并根据第二账本来更新账本和账本副本。在这个过程中,商家有权同意或
拒绝该交易,维护了智能合约以及其副本。该机制保证数据一致性,不可篡改性。
72.在一个实施例中,执行第一修改变量交易之前,还包括:当第一修改变量交易关联到一个或多个中间用户时,将第一修改变量交易广播到关联到一个或多个中间用户,接收每一个中间用户发送的第一修改变量交易确认指令。
73.在一个实施例中,执行第二修改变量交易之前,还包括:当第二修改变量交易关联到一个或多个中间用户时,将第二修改变量交易广播到关联到一个或多个中间用户,接收每一个中间用户发送的第二修改变量交易确认指令。
74.具体地,一个订单中常常涉及到多个公司,即一个订单除了涉及到商家或客户之外,还涉及到一个或多个中间用户。一旦商家或客户想修改修改智能合约上面的变量,商家或客户就会发送一笔修改变量的交易,该交易需要与该交易相关的用户(包括中间用户和客户)审批确认后方可执行。因此,当第一修改变量交易关联到一个或多个中间用户时或当第二修改变量交易关联到一个或多个中间用户时,服务器都需要接收到每一个中间用户的交易确认指令才能执行相关的交易。采用该方法可以保证数据一致性,不可篡改性,以避免商家或客户随意修改订单,从而造成订单有误等问题。
75.接下来,给出了一种删除区块链网络的具体实施方式,具体描述如下:
76.在一个实施例中,方法还包括:当订单完成或销毁时,发送删除区块链网络信息至客户的用户端和每一个与订单相关联的中间用户;当接收到用户端和每一个中间用户发送的同意删除指令时,删除区块链网络。
77.具体地,当订单被销毁或者完成的时候,商家可以在客户以及各个中间用户同意后的情况下删除区块链网络。
78.应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
79.上述本技术公开的实施例中详细描述了一种基于区块链的订单处理方法,对于本技术公开的上述方法可采用多种形式的设备实现,因此本技术还公开了对应上述方法的基于区块链的订单处理装置,下面给出具体的实施例进行详细说明。
80.请参阅图4,为本技术实施例公开的一种基于区块链的订单处理装置,装置应用于服务器,装置包括:
81.订单信息接收模块410,用于接收客户通过用户端发送的订单信息;
82.区块链网络建立模块420,用于根据订单信息建立一个区块链网络;区块链网络包含一个商家节点,其中商家节点存储智能合约和账本;智能合约是根据订单信息确定的;
83.节点增加模块430,用于接收客户通过用户端发送的区块链网络加入请求,在区块链网络中增加客户节点;
84.副本发送模块440,用于分别将根据智能合约形成的智能合约副本和根据账本形成的账本副本发送至客户节点,以使客户节点存储智能合约副本和账本副本;
85.第一交易发起模块440,用于当商家需要修改智能合约中的订单变量时,发起第一
修改变量交易;
86.第一交易广播模块460,用于将第一修改变量交易广播到用户端;
87.第一指令接收模块470,用于接收客户通过用户端发送的第一修改变量交易确认指令;
88.第一交易执行模块480,用于执行第一修改变量交易,根据第一修改变量交易生成第一智能合约和第一账本;
89.更新模块490,用于根据第一智能合约来更新智能合约和智能合约副本;并根据第一账本来更新账本和账本副本。
90.在一个实施例中,装置还包括:
91.第二交易接收模块,用于当客户需要修改智能合约中的订单变量时,接收客户通过用户端发送的第二修改变量交易;
92.第二交易执行模块,用于确认并执行第二修改变量交易;
93.合约账本生成模块,用于根据第二修改变量交易生成第二智能合约和第二账本;
94.副本更新模块,用于根据第二智能合约来更新智能合约和智能合约副本;并根据第二账本来更新账本和账本副本。
95.在一个实施例中,装置还包括:节点增加模块,用于接收任意一个或多个中间用户发送的区块链网络加入请求,在区块链网络中对应增加一个或多个中间用户节点;中间用户节点存储智能合约副本和账本副本;其中,中间用户是指与订单信息相关联的,除了商家和客户之外的其他用户。
96.在一个实施例中,装置还包括:第二指令接收模块,用于当第一修改变量交易关联到一个或多个中间用户时,将第一修改变量交易广播到关联到一个或多个中间用户,接收每一个中间用户发送的第一修改变量交易确认指令。
97.在一个实施例中,装置还包括:第三指令接收模块,用于当第二修改变量交易关联到一个或多个中间用户时,将第二修改变量交易广播到关联到一个或多个中间用户,接收每一个中间用户发送的第二修改变量交易确认指令。
98.在一个实施例中,装置还包括:区块链网络删除模块,用于当订单完成或销毁时,发送删除区块链网络信息至客户的用户端和每一个与订单相关联的中间用户;当接收到用户端和每一个中间用户发送的同意删除指令时,删除区块链网络。
99.关于基于区块链的订单处理装置的具体限定可以参见上文中对于方法的限定,在此不再赘述。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端设备中的处理器中,也可以以软件形式存储于终端设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
100.请参考图5,图5其示出了本技术实施例提供的一种服务器的结构框图。该服务器50可以是计算机设备。本技术中的服务器50可以包括一个或多个如下部件:处理器52、存储器54以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器54中并被配置为由一个或多个处理器52执行,一个或多个应用程序配置用于执行上述应用于服务器的方法实施例中所描述的方法,也可以配置用于执行上述应用于基于区块链的订单处理方法实施例中所描述的方法。
101.处理器52可以包括一个或者多个处理核。处理器52利用各种接口和线路连接整个
服务器50内的各个部分,通过运行或执行存储在存储器54内的指令、程序、代码集或指令集,以及调用存储在存储器54内的数据,执行服务器50的各种功能和处理数据。可选地,处理器52可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器52可集成中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器52中,单独通过一块通信芯片进行实现。
102.存储器54可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。存储器54可用于存储指令、程序、代码、代码集或指令集。存储器54可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储服务器50在使用中所创建的数据等。
103.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
104.综上,本技术实施例提供的服务器用于实现前述方法实施例中相应的基于区块链的订单处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。
105.请参阅图6,其示出了本技术实施例提供的一种计算机可读取存储介质的结构框图。该计算机可读取存储介质60中存储有程序代码,程序代码可被处理器调用执行上述基于区块链的订单处理方法实施例中所描述的方法,也可以被处理器调用执行上述基于区块链的订单处理方法实施例中所描述的方法。
106.计算机可读取存储介质60可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读取存储介质60包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读取存储介质60具有执行上述方法中的任何方法步骤的程序代码62的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码62可以例如以适当形式进行压缩。
107.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
108.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术
将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献