CN112015399A - 一种生成智能合约的数据处理方法及装置 - Google Patents

一种生成智能合约的数据处理方法及装置 Download PDF

Info

Publication number
CN112015399A
CN112015399A CN202010896449.6A CN202010896449A CN112015399A CN 112015399 A CN112015399 A CN 112015399A CN 202010896449 A CN202010896449 A CN 202010896449A CN 112015399 A CN112015399 A CN 112015399A
Authority
CN
China
Prior art keywords
intelligent contract
block chain
template
information
configuration information
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
CN202010896449.6A
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.)
JD Digital Technology Holdings Co Ltd
Original Assignee
JD Digital Technology Holdings 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 JD Digital Technology Holdings Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN202010896449.6A priority Critical patent/CN112015399A/zh
Publication of CN112015399A publication Critical patent/CN112015399A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种生成智能合约的数据处理方法及装置,其中方法包括:确定需要进行智能合约配置的区块链的区块链信息;匹配得到与所述区块链信息对应的智能合约模板;获取用于写入所述智能合约模板的配置信息;根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。本申请实施例提供的上述技术方案与现有技术相比具有如下优点:在选用对应的智能合约模板之后,只需对其进行配置即可得到最终可以写入区块链的智能合约,无需进行代码层面的开发,可以有效降低对相关人员的技术要求,并提升智能合约生成的便捷性和规范性。

Description

一种生成智能合约的数据处理方法及装置
技术领域
本申请涉及数据处理技术领域,尤其涉及一种生成智能合约的数据处理方法及装置。
背景技术
随着区块链技术的不断发展,智能合约(Smart contract,是一种旨在以信息化方式传播、验证或执行合同的计算机协议)的使用价值得到了极大的提升,但是目前智能合约只能依靠编码方式实现方式,而且区块链之间的编程语言也不尽相同,导致使用门槛较高,开发效率较低。目前解决办法有两种:1、通过制作SDK,制作规范对外接口,方便编码调用;2、搭建Baas平台,集成区块链搭建、合约开发、合约发布、合约测试等功能,提升研发效率。
在实现本发明过程中,发明人发现:现有智能合约实现普遍依据各区块链社区提供的区块链SDK或BaaS平台实现,均是面向开发人员的技术工具和平台,门槛较高,对业务运营人员不友好,不能支撑业务快速接入的需求。
针对相关技术中存在的诸多技术问题,目前尚未提供有效的解决方案。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种生成智能合约的数据处理方法及装置。
第一方面,本申请实施例提供了一种生成智能合约的数据处理方法,包括:
确定需要进行智能合约配置的区块链的区块链信息;
匹配得到与所述区块链信息对应的智能合约模板;
获取用于写入所述智能合约模板的配置信息;
根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。
可选的,如前述的方法,所述匹配得到与所述区块链信息对应的智能合约模板,包括:
根据所述区块链信息确定所述区块链的开发语言;
根据所述开发语言在预设的模板库中查询得到与所述区块链对应的所述智能合约模板;
建立所述区块链信息与所述智能合约模板的第一对应关系。
可选的,如前述的方法,所述根据所述开发语言在预设的模板库中查询得到与所述区块链对应的所述智能合约模板,包括:
将候选业务类型通过预设的交互界面进行展示;
根据接收得到的第一选择指令,确定从所有所述候选业务类型中选择得到的目标业务类型;
从所述模板库中查询得到与所述目标业务类型对应的所有候选智能合约模板;
根据所述开发语言在所有所述候选智能合约模板中查询得到与所述区块链对应的所述智能合约模板。
可选的,如前述的方法,所述获取用于写入所述智能合约模板的配置信息,包括:
通过预设的交互界面接收用于对待配置对象的对象类型进行编辑的编辑指令;
根据所述编辑指令确定所述待配置对象的对象类型;
通过所述编辑指令确定对各个所述对象类型进行配置的参数值,并得到所述对象类型与所述参数值之间的第二对应关系;
按照所述第二对应关系,将各个所述对象类型及参数值对应进行存储。
可选的,如前述的方法,所述获取用于写入所述智能合约模板的配置信息,包括:
从预设的配置信息数据库中读取得到所有历史配置信息;
根据接收的第二选择指令,确定从所有所述历史配置信息中选择得到的目标历史配置信息;
根据所述目标历史配置信息得到所述配置信息;或者,
接收对所述目标历史配置信息的编辑,根据编辑后的所述目标历史配置信息得到所述配置信息。
可选的,如前述的方法,所述根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约,包括:
读取得到所述区块链信息、配置信息以及智能合约模板;
将所述配置信息以及区块链信息进行组合,得到合约描述信息;
将所述合约描述信息配置至所述智能合约模板中,得到所述智能合约。
可选的,如前述的方法,还包括:
接收对所述智能合约进行编译的编译指令;
根据所述编译指令加载得到所述智能合约;
对所述智能合约进行编译,转换为二进制的编译后智能合约。
可选的,如前述的方法,还包括:
接收将所述编译后智能合约写入区块链的上链指令;
根据所述上链指令将所述编译后智能合约发布至所述区块链中。
可选的,如前述的方法,所述根据所述上链指令将所述编译后智能合约发布至所述区块链中,包括:
获取与所述区块链对应的测试环境;
将所述编译后智能合约发布至所述测试环境中;
在所述测试环境中的编译后智能合约满足预设要求时,根据所述上链指令将所述编译后智能合约发布至所述区块链中。
可选的,如前述的方法,所述确定需要进行智能合约配置的区块链的区块链信息,包括:
将至少两个候选区块链映射至交互界面中,分别得到与各个所述候选区块链对应的映射对象,并确定所述候选区块链与映射对象之间的第三对应关系;
根据接收得到的第三选择指令,确定从所有所述映射对象中选择得到的目标映射对象;
根据所述目标映射对象以及第三对应关系,确定需要进行智能合约配置的区块链;
根据所述需要进行智能合约配置的区块链,获取所述区块链信息。
可选的,如前述的方法,还包括:
获取上传的待审核智能合约模板;
对所述待审核智能合约模板进行质量检测,并得到检测结果;
在所述检测结果符合预设要求时,将所述待审核智能合约模板存储至模板库中;
将所述待审核智能合约模板发布至模板共享平台。
可选的,如前述的方法,所述智能合约模板包括与不同功能对应的模板接口;所述配置信息包括与不同功能对应的子配置信息;在所述根据所述上链指令将所述编译后智能合约发布至所述区块链中之后,还包括:
接收合约调用请求;
根据所述合约调用请求中携带的目标功能调用对应的模板接口;
通过所述模板接口读取与所述目标功能对应的目标子配置信息;
根据所述目标子配置信息生成对应的表单;
在接收对所述表单进行的编辑后,得到目标表单信息。
第二方面,本申请实施例提供了一种生成智能合约的数据处理装置,包括:
确定模块,用于确定需要进行智能合约配置的区块链的区块链信息;
匹配模块,用于匹配得到与所述区块链信息对应的智能合约模板;
配置模块,用于获取用于写入所述智能合约模板的配置信息;
生成模块,用于根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现如前述任一项所述的处理方法。
第四方面,本申请实施例提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如前述任一项所述的处理方法。
本申请实施例提供了一种生成智能合约的数据处理方法及装置,其中方法包括:确定需要进行智能合约配置的区块链的区块链信息;匹配得到与所述区块链信息对应的智能合约模板;获取用于写入所述智能合约模板的配置信息;根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。本申请实施例提供的上述技术方案与现有技术相比具有如下优点:在选用对应的智能合约模板之后,只需对其进行配置即可得到最终可以写入区块链的智能合约,无需进行代码层面的开发,可以有效降低对相关人员的技术要求,并提升智能合约生成的便捷性和规范性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种生成智能合约的数据处理方法的流程示意图;
图2为本申请另一实施例提供的一种生成智能合约的数据处理方法的流程示意图;
图3为本申请另一实施例提供的一种生成智能合约的数据处理方法的流程示意图;
图4为本申请实施例提供的一种生成智能合约的数据处理装置的框图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种生成智能合约的数据处理方法,包括如下所述步骤S1至S4:
步骤S1.确定需要进行智能合约配置的区块链的区块链信息。
具体的,由于区块链的开发语言存在多种,例如:Go语言、Rust语言、Java语言等等;而智能合约的编码语言需要与区块链相一致,才能配置到对应的区块链上;因此区块链信息可以包括但不限于:区块链ID、区块链名称、区块链描述以及区块链开发语言等信息。其中,区块链名称和区块链描述是用于对区块链的基本信息进行描述;区块链开发语言用于限定智能合约的编码语言;区块链ID用于确定智能合约进行上链发布的地址。
进一步的,智能合约模板可以包括合约接口详情以及合约模板文件;其中合约接口详情用于表征该智能合约模板对外提供的接口的信息,例如:入参和出参的信息,以及该智能合约模板提供什么类型的服务;合约模板文件可以是能够进行元信息配置的源码文件。
步骤S2.匹配得到与区块链信息对应的智能合约模板。
具体的,智能合约模板可以是合约开发者开发的针对特定业务场景、特定链码语言的智能合约的模板文件,智能合约模板与特定支持的区块链进行绑定;开发者可以通过上传智能合约模板至特定的平台,并在经平台审核验证后可供其他用户调取使用。
为了快速进行智能合约模板的匹配,可以给每个智能合约模板配置对应的业务场景或编码语言对应的描述性标签信息;进而可以根据区块链信息快速匹配到对应的智能合约模板。
进一步的,智能合约模板可以为Freemarker格式的源码模板文件。其中,FreeMarker是一款模板引擎:即一种基于模板和要改变的数据,并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。
步骤S3.获取用于写入所述智能合约模板的配置信息。
具体的,配置信息可以是操作者导入智能合约模板的可配置项进行配置的文件,或者通过特定的配置界面对智能合约模板中的填充对象进行配置后得到的数据。
在进行配置时,配置信息可以包括:对信息的种类进行增删,也可以对信息对应的变量值进行编辑修改。
可选的,本实施例中的配置信息可以是用于对智能合约对应的合约类型以及业务对象等信息进行配置的信息。
步骤S4.根据区块链信息、配置信息和智能合约模板生成与区块链对应的智能合约。
具体的,获取区块链信息,可以是用于根据区块链信息获取最终得到的智能合约的上链位置;可选的,可以在步骤S1中确定需要进行智能合约配置的区块链时,便获取该区块链对应的区块链信息,且区块链信息可以存储在数据表中,以在最终生成阶段直接从数据表中读取得到该区块链信息后便配置到智能合约模板中,生成与该区块链对应的智能合约。
通过本实施例中的方法,可以在选用对应的智能合约模板之后,通过将区块链信息和配置信息配置至智能合约模板中即可得到最终可以写入区块链的智能合约,有效降低对相关人员的技术要求,并提升智能合约生成的便捷性和规范性。
如图2所示,在一些实施例中,如前述的方法,步骤S2匹配得到与区块链信息对应的智能合约模板,包括如下所述步骤S21至S23:
步骤S21.根据区块链信息确定区块链的开发语言。
具体的,由前述实施例可知,由于区块链信息中可以包括:区块链ID,区块链名称、区块链描述以及区块链开发语言等信息。因此,可以根据区块链信息得到该区块链对应的开发语言。
步骤S22.根据开发语言在预设的模板库中查询得到与区块链对应的智能合约模板。
具体的,模板库可以是由合约开发者开发的针对特定业务场景、特定链码语言的智能合约的模板文件,智能合约模板与特定支持的区块链进行绑定;开发者可以通过上传智能合约模板至特定的平台,并在经平台审核验证后可供其他用户调取使用。
在模板库中,可以根据匹配规则对各个智能合约模板进行打标签,在本实施例中,是通过开发语言进行查询的,因此可以将各个智能合约模板的开发语言作为标签,以快速匹配得到与该区块链对应的智能合约模板。
步骤S23.建立区块链信息与智能合约模板的第一对应关系。
具体的,一般会在得到所有用于对智能合约模板进行配置的数据之后再对该智能合约模板进行统一配置,以便于提高配置的效率。因此,在得到智能合约模板之后,通过建立区块链信息与智能合约模板的第一对应关系,可以便于之后快速确定对智能合约模板进行配置的区块链信息以及通过区块链信息确定该区块链对应的智能合约模板。
其中一种可选的实现方式可以是:
1.在交互界面选择需要配置智能合约的区块链,可选的,可以通过将区块链的区块链信息映射到交互界面上,以使配置人员能够根据交互界面上显示的信息选择正确的区块链;
2.当确定区块链之后,即可按照区块链信息(编码语言)查询得到对应的智能合约模板。
在一些实施例中,如前述的方法,步骤S22根据开发语言在预设的模板库中查询得到与区块链对应的智能合约模板,包括如下所述步骤S221至S224:
步骤S221.将候选业务类型通过预设的交互界面进行展示。
具体的,不同的业务类型的智能合约模板对应的业务逻辑各不相同;其中业务类型可以包括:对产品进行溯源、支付、还款等等;因此不同的业务类型对应的智能合约模板也各不相同。
可以预先确定模板库中所有候选智能合约模板对应的业务类型;一般的,相同业务类型采用相同的表述,因此,可以根据表述的内容确定业务类型,由于不同开发语言开发的区块链,即使对应同样的业务类型,也需不同的候选智能合约模板生成对应的智能合约,因此,需要对业务类型进行去重,并在交互界面中进行展示,进一步的,可以对应的选项的方式进行展示。其中,可以使交互界面中展示的业务类型选项都关联至模板库中对应的候选智能合约模板,以便于后期进行模板的调取。
步骤S222.根据接收得到的第一选择指令,确定从所有候选业务类型中选择得到的目标业务类型。
具体的,第一选择指令可以是:识别得到的对某一个候选业务类型对应的选项进行的特定的操作(例如:单击、双击、指针滑动等等);然后根据第一选择指令即可确定被选择的候选业务类型,并将其作为目标业务类型。
步骤S223.从模板库中查询得到与目标业务类型对应的所有候选智能合约模板。
具体的,在实现步骤S221的时候,可以建立不同业务类型与候选智能合约模板之间的对应关系,因此得到目标业务类型之后,即可从模板库中查询得到与目标业务类型对应的所有候选智能合约模板。
步骤S224.根据开发语言在所有候选智能合约模板中查询得到与区块链对应的智能合约模板。
具体的,可以将开发语言作为各个候选智能合约模板的标签,因此得到区块链的开发语言之后,即可快速匹配得到与该区块链对应的智能合约模板。
通过本实施例中的方法,可以便于用户根据不同的业务类型快速查询得到对应的智能合约模板,提高作业效率。
如图3所示,在一些实施例中,如前述的方法,步骤S3获取用于写入所述智能合约模板的配置信息,包括如下所述步骤S311至S314:
步骤S311.通过预设的交互界面接收用于对待配置对象的对象类型进行编辑的编辑指令。
步骤S312.根据编辑指令确定待配置对象的对象类型。
具体的,待配置对象是需要写入智能合约模板中,并且可以进行配置的目标信息;编辑指令可以是通过一预设交互界面接收操作者对需要写入智能合约模板中的待配置对象进行编辑(例如:增加、删除等等)的操作后得到,其中,交互界面可以是采用JS+html开发完成单页应用;对象类型是待配置对象中包括的一个或多个子信息的类型。
可以通过在交互界面上的配置操作,达到获取用于对待配置对象进行编辑的编辑指令的目的;进而可以通过该编辑指令对待配置对象进行编辑,其中编辑可以包括:对待配置对象中的对象类型(例如:ID、描述信息、名称等等)进行删除或者增加,对待配置对象的信息的变量值进行修改。
其中一种可选的实现方式可以是,将预设的,与该区块链对应的智能合约中会包括的预设对象类型映射至交互界面中,也可以是通过在空白模板添加各个对象类型;然后,生成与每个信息对应的可操作对象;最后接受操作者对交互界面中的可操作对象进行编辑操作,进而根据该编辑得到上述的编辑指令。
当待配置对象中的各个信息是元信息时,可以通过编辑指令对业务对象中的各个元信息进行增删改,最后,还可以把该智能合约模板对应的源码存储在数据表中。其中,业务对象是与该智能合约提供的服务对应的对象;一般的,业务对象对应的源数据信息可以包括:元信息ID、元信息名称、元信息描述、元信息类型(例如:数字、小数、日期、金额和文本等等)以及元信息校验规则(例如;是否可空、是否特定类型、长度限制)。
步骤S313.通过编辑指令确定对各个对象类型进行配置的参数值,并得到对象类型与参数值之间的第二对应关系。
步骤S314.按照第二对应关系,将各个对象类型对象及参数值对应进行存储。
具体的,当完成对智能合约模板中的待配置对象进行配置之后,需要对各个对象类型通过设置参数值进行赋值,并在交互界面完成配置之后,可以将各个参数值与各个对象类型建立第二对应关系之后存储在特定的数据表中。
在一些实施例中,如前述的方法,步骤S3获取用于写入智能合约模板的配置信息,包括如下所述步骤S321至S324:
步骤S321.从预设的配置信息数据库中读取得到所有历史配置信息。
步骤S322.根据接收的第二选择指令,确定从所有历史配置信息中选择得到的目标历史配置信息。
步骤S323.根据目标历史配置信息得到配置信息。
步骤S324.接收对目标历史配置信息的编辑,根据编辑后的目标历史配置信息得到配置信息。
具体的,在每次配置得到一个配置信息之后,都可以将其存储至配置信息数据库中,可选的,可以通过建立历史配置信息与业务类型之间的对应关系,以便于后期快速进行历史配置信息的查询。
可以将历史配置信息对应的业务类型或者版本信息映射至交互界面上,以使用户可以从中进行选择。可选的,第二选择指令可以是:识别得到的对某一个业务类型或版本信息对应的选项进行的特定的操作(例如:单击、双击、指针滑动等等);然后根据第二选择指令即可确定被选择的历史配置信息,并将其作为目标历史配置信息。
当目标历史配置信息满足预设的使用要求时,可以将其直接作为配置信息。
当目标历史配置信息中需要进行部分修改,才能满足使用要求时,则可以对目标历史配置信息进行编辑,可选的,编辑方式可以包括:对信息的种类进行增删,也可以对信息对应的变量值进行编辑修改。在完成修改之后,即可得到配置信息。
通过本实施例中的方法,可以对历史配置信息进行复用,避免每次在需要生成智能合约的时候,都必须进行全部信息的配置,可以有效提高智能合约的生成效率,降低工作量。
在一些实施例中,如前述的方法,步骤S4根据区块链信息、配置信息和智能合约模板生成与区块链对应的智能合约,包括如下所述步骤S41和S43:
步骤S41.读取得到区块链信息、配置信息以及智能合约模板。
步骤S42.将配置信息以及区块链信息进行组合,得到合约描述信息。
具体的,前述的区块链信息、智能合约模板以及配置信息在获取或编辑之后都可以写入数据库中进行存储,以在获取时,可以从数据库中读取得到前述实施例中获取的区块链信息,以及根据操作者进行配置后得到的智能合约模板以及配置信息。
进一步的,可以按照事先设定的路由依次读取得到上述信息,举例的:由于一般是通过确定区块链之后,再选择对应的智能合约模板以及进行配置,因此,可以先加载得到区块链信息,之后再依次加载得到智能合约模板以及参数值。
步骤S43.将合约描述信息配置至智能合约模板中,得到智能合约。
具体的,将合约描述信息配置至智能合约模板中,可以是:预先确定合约描述信息中各项子信息(每个子信息可以包括:信息名称以及信息值)在智能合约模板中的填充的位置,可选的,可以通过对智能合约模板中需要进行信息填充的部分采用特殊字段进行表征,以在信息***时,能够识别得到该位置,以达到将描述信息准确***对应位置的目的。
当智能合约模板根据区块链信息以及参数值完成配置之后,得到配置后智能合约模板,最后再对配置后智能合约模板进行解析,得到可以编译为二进制文件的智能合约,因此,本实施例中的智能合约是合约源码文件。
其中一种可选的实现方式可以是,当智能合约模板是Freemaker文件时,先确定区块链信息以及参数值中各个参数值对应的参数名称,然后按照对应关系将各个参数值填充至智能合约模板中,得到配置后智能合约模板;当需得到java语言的智能合约时,可以使用maven作为编译构件工具,对配置后只能合约模板进行解析,得到智能合约。并且在得到智能合约之后,可以对其进行持久化,并存储在对应的数据库中,可选的,在存储时可以先建立智能合约与区块链信息之间的对应关系,然后根据该对应关系进行存储,以便于后期可以根据区块链快速调取得到对应的智能合约。
在一些实施例中,如前述的方法,还包括如下所述步骤S5至S7:
步骤S5.接收对智能合约进行编译的编译指令。
步骤S6.根据编译指令加载得到智能合约。
步骤S7.对智能合约进行编译,转换为二进制的编译后智能合约。
具体的,当得到智能合约之后,由于区块链上只能运行编译后的二进制文件,因此若需对其进行上链,需要对智能合约进行编译,并转换为二进制文件之后再进行上链。
其中,接收对智能合约进行编译的编译指令,可以是操作人员通过特定用于进行合约编译的编译交互界面上进行,可选的,由于智能合约都是针对特定的区块链生成的,因此可以将各个区块链的区块链信息在前端的编译交互界面上进行展示,当一区块链信息被选择之后,即可将该选择行为记为需要对该区块链信息对应的智能合约进行编译的编译指令;然后根据该编译指令生成对应的加载指令,从存储有智能合约的数据库中加载得到与该区块链信息对应的智能合约。在加载得到智能合约之后,再获取与该智能合约的语言种类,并选择与该语言种类对应的编译工具对智能合约进行编译,转化得到二进制的编译后智能合约。
在得到编译后智能合约之后,可以对其进行持久化,并存储在对应的数据库中,可选的,在存储时可以先建立编译后智能合约与区块链信息之间的对应关系,然后根据该对应关系进行存储,以便于后期可以根据需要进行上链的区块链快速调取得到对应的编译后智能合约。
在一些实施例中,如前述的方法,还包括如下所述步骤S8和S9:
步骤S8.接收将编译后智能合约写入区块链的上链指令。
步骤S9.根据上链指令将编译后智能合约发布至区块链中。
具体的,接收将编译后智能合约写入区块链的上链指令,可以是操作人员通过特定用于进行合约发布的发布交互界面上进行,可选的,由于智能合约都是针对特定的区块链生成的,因此可以将各个区块链的区块链信息在前端的发布交互界面上进行展示,当一区块链信息被选择之后,即可将该选择行为记为需要对该区块链信息对应的智能合约进行上链发布的上链指令;然后根据该上链指令生成对应的加载指令,从存储有编译后智能合约的数据库中加载得到与该区块链信息对应的编译后智能合约。在加载得到编译后智能合约之后,便可将其发布至区块链中。
进一步的,由于发布合约对于区块链来说就是生成一笔链上交易的过程,因此,在区块链上发布编译后智能合约需要所有区块链节点达成共识之后才可进行上链。
在一些实施例中,如前述的方法,步骤S9根据上链指令将编译后智能合约发布至区块链中,包括如下所述步骤S91至S93:
步骤S91.获取与区块链对应的测试环境。
具体的,在确定需要部署智能合约的区块链之后,即可通过对区块链的链码进行分析得到与其对应的测试环境;且一般的,当智能合约在测试环境中能够达到预设的性能要求时,将其部署在区块链中也能达到相应的性能要求。
步骤S92.将编译后智能合约发布至测试环境中。
步骤S93.在测试环境中的编译后智能合约满足预设要求时,根据上链指令将编译后智能合约发布至区块链中。
具体的,预设要求一般与智能合约预期达到的功能相对应设置。并且,只有在编译后智能合约在测试环境中测试通过之后,才可以将其发布至区块链中。因此采用本实施例中的方法可以对编译后智能合约进行校验,避免出现无法达到预设效果等问题,可以有效提高部署的成功率,提升配置效率。
在一些实施例中,如前述的方法,步骤S1确定需要进行智能合约配置的区块链的区块链信息,包括如下所述步骤S11至S14:
步骤S11.将至少两个候选区块链映射至交互界面中,分别得到与各个候选区块链对应的映射对象,并确定候选区块链与映射对象之间的第三对应关系。
具体的,候选区块链可以是与实现本实施例方法的***连通,并且可以通过该***进行智能合约配置的区块链;映射对象可以是:在交互界面中与各个候选区块链对应的对象(例如:可选择控件)。可选的,可以将所有候选区块链都映射至交互界面中,并且映射对象可以通过候选区块链的业务类型等特征进行表征。
可选的,候选区块链与映射对象之间的第三对应关系可以是:候选区块链的区块链ID与映射对象之间的对应关系。
步骤S12.根据接收得到的第三选择指令,确定从所有映射对象中选择得到的目标映射对象。
可选的,第三选择指令可以是:识别得到的对某一个映射对象进行的特定的操作(例如:单击、双击、指针滑动等等);然后根据第三选择指令即可确定被选择的映射对象,并将其作为目标映射对象。
步骤S13.根据目标映射对象以及第三对应关系,确定需要进行智能合约配置的区块链。
具体的,由于第三对应关系中建立了候选区块链与映射对象之间的对应关系。因此,根据目标映射对象可以确定需要进行智能合约配置的区块链。
步骤S14.根据需要进行智能合约配置的区块链,获取区块链信息。
具体的,当定位得到区块链之后,可以通过对其进行信息读取,即可得到区块链信息。
通过本实施例中的方法,通过点击操作即可获取区块链信息,而无需人工录入,提高了信息的准确性,且可以有效提高效率,降低配置人员工作量。
在一些实施例中,如前述的方法,还包括如下所述步骤P1至P4:
步骤P1.获取上传的待审核智能合约模板。
步骤P2.对待审核智能合约模板进行质量检测,并得到检测结果。
步骤P3.在检测结果符合预设要求时,将待审核智能合约模板存储至模板库中。
步骤P4.将待审核智能合约模板发布至模板共享平台。
具体的,待审核智能合约模板可以由开发人员编写完成之后通过预设的接口上传至审核端;审核端对待审核智能合约模板的质量检测的类型可以包括:对业务的逻辑进行审核以及对代码质量进行审核;因此,对应的,检测结果可以包括逻辑审核结果以及质量结果。
一般的,预设要求可以根据实际使用进行限定,只要能够保障智能合约模板能够满足性能要求,不会发生错误即可。在检测结果符合预设要求时,将待审核智能合约模板存储至模板库中,进行保存;并且,可以将其上传至模板共享平台,以供其他用户使用。
在一些实施例中,如前述的方法,智能合约模板包括与不同功能对应的模板接口;配置信息包括与不同功能对应的子配置信息;在步骤S9根据上链指令将编译后智能合约发布至区块链中之后,还包括如下所述步骤Q1至Q5:
步骤Q1.接收合约调用请求;
步骤Q2.根据合约调用请求中携带的目标功能调用对应的模板接口;
步骤Q3.通过模板接口读取与目标功能对应的目标子配置信息;
步骤Q4.根据目标子配置信息生成对应的表单;
步骤Q5.在接收对表单进行的编辑后,得到目标表单信息。
具体的,合约调用请求一般在智能合约成功部署至区块链中之后,并且用户上链进行操作时接收得到。进一步的,预先流程还可以包括:用户确定需要上链的区块链的链码信息,然后用户在该区块链中登录账户。
合约调用请求可以是通过触发某一目标功能对应的控件之后得到的。因此合约调用请求中可以包括目标功能相关信息,进而调用对应的模板接口。
其中,配置信息包括与不同功能对应的子配置信息,而配置信息一般是元数据;因此不同功能可以对应不同的元数据;举例的,当功能是还款时,元数据则可以包括:还款时间,还款金额等信息;当功能是借款时,元数据则可以包括:借款时间,借款金额、到期还款时间等信息。不同的子配置信息在配置时即可与模板接口相对应。
根据目标子配置信息生成对应的表单可以是,将其中的元数据写入表格中,进而得到对应的表单;且一般的,在表单中,每个元数据后都可以关联有可执行写操作的对象,以接收用户对表单进行的编辑,在完成编辑之后,可以通过接受得到的指令(例如:提交、完成等等)对相关信息进行提交,以得到目标表单信息。
如图4所示,根据本申请另一方面,还提供了一种生成智能合约的数据处理装置,包括:
确定模块1,用于确定需要进行智能合约配置的区块链的区块链信息;
匹配模块2,用于匹配得到与区块链信息对应的智能合约模板;
配置模块3,用于获取用于写入智能合约模板的配置信息;
生成模块4,用于根据区块链信息、配置信息和智能合约模板生成与区块链对应的智能合约。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
本装置通过将生成智能合约生命周期进行拆分,可以基于合约设计界面实现上述步骤,可以自定义具体业务对象模型,选用合约模板实现无代码开发调用智能合约,提升了区块链服务接入的便捷性和规范性。
根据本申请的另一个实施例,还提供一种电子设备,包括:如图5所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的程序时,实现上述方法实施例的步骤。
上述电子设备提到的总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述方法实施例的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (15)

1.一种生成智能合约的数据处理方法,其特征在于,包括:
确定需要进行智能合约配置的区块链的区块链信息;
匹配得到与所述区块链信息对应的智能合约模板;
获取用于写入所述智能合约模板的配置信息;
根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。
2.根据权利要求1所述的方法,其特征在于,匹配得到与所述区块链信息对应的智能合约模板,包括:
根据所述区块链信息确定所述区块链的开发语言;
根据所述开发语言在预设的模板库中查询得到与所述区块链对应的所述智能合约模板;
建立所述区块链信息与所述智能合约模板的第一对应关系。
3.根据权利要求2所述的方法,其特征在于,所述根据所述开发语言在预设的模板库中查询得到与所述区块链对应的所述智能合约模板,包括:
将候选业务类型通过预设的交互界面进行展示;
根据接收得到的第一选择指令,确定从所有所述候选业务类型中选择得到的目标业务类型;
从所述模板库中查询得到与所述目标业务类型对应的所有候选智能合约模板;
根据所述开发语言在所有所述候选智能合约模板中查询得到与所述区块链对应的所述智能合约模板。
4.根据权利要求1所述的方法,其特征在于,所述获取用于写入所述智能合约模板的配置信息,包括:
通过预设的交互界面接收用于对待配置对象的对象类型进行编辑的编辑指令;
根据所述编辑指令确定所述待配置对象的对象类型;
通过所述编辑指令确定对各个所述对象类型进行配置的参数值,并得到所述对象类型与所述参数值之间的第二对应关系;
按照所述第二对应关系,将各个所述对象类型及参数值对应进行存储。
5.根据权利要求4所述的方法,其特征在于,所述获取用于写入所述智能合约模板的配置信息,包括:
从预设的配置信息数据库中读取得到所有历史配置信息;
根据接收的第二选择指令,确定从所有所述历史配置信息中选择得到的目标历史配置信息;
根据所述目标历史配置信息得到所述配置信息;或者,
接收对所述目标历史配置信息的编辑,根据编辑后的所述目标历史配置信息得到所述配置信息。
6.根据权利要求4所述的方法,其特征在于,所述根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约,包括:
读取得到所述区块链信息、配置信息以及智能合约模板;
将所述配置信息以及区块链信息进行组合,得到合约描述信息;
将所述合约描述信息配置至所述智能合约模板中,得到所述智能合约。
7.根据权利要求1所述的方法,其特征在于,还包括:
接收对所述智能合约进行编译的编译指令;
根据所述编译指令加载得到所述智能合约;
对所述智能合约进行编译,转换为二进制的编译后智能合约。
8.根据权利要求7所述的方法,其特征在于,还包括:
接收将所述编译后智能合约写入区块链的上链指令;
根据所述上链指令将所述编译后智能合约发布至所述区块链中。
9.根据权利要求8所述的方法,其特征在于,所述根据所述上链指令将所述编译后智能合约发布至所述区块链中,包括:
获取与所述区块链对应的测试环境;
将所述编译后智能合约发布至所述测试环境中;
在所述测试环境中的编译后智能合约满足预设要求时,根据所述上链指令将所述编译后智能合约发布至所述区块链中。
10.根据权利要求1所述的方法,其特征在于,所述确定需要进行智能合约配置的区块链的区块链信息,包括:
将至少两个候选区块链映射至交互界面中,分别得到与各个所述候选区块链对应的映射对象,并确定所述候选区块链与映射对象之间的第三对应关系;
根据接收得到的第三选择指令,确定从所有所述映射对象中选择得到的目标映射对象;
根据所述目标映射对象以及第三对应关系,确定需要进行智能合约配置的区块链;
根据所述需要进行智能合约配置的区块链,获取所述区块链信息。
11.根据权利要求1所述的方法,其特征在于,还包括:
获取上传的待审核智能合约模板;
对所述待审核智能合约模板进行质量检测,并得到检测结果;
在所述检测结果符合预设要求时,将所述待审核智能合约模板存储至模板库中;
将所述待审核智能合约模板发布至模板共享平台。
12.根据权利要求8所述的方法,其特征在于,所述智能合约模板包括与不同功能对应的模板接口;所述配置信息包括与不同功能对应的子配置信息;在所述根据所述上链指令将所述编译后智能合约发布至所述区块链中之后,还包括:
接收合约调用请求;
根据所述合约调用请求中携带的目标功能调用对应的模板接口;
通过所述模板接口读取与所述目标功能对应的目标子配置信息;
根据所述目标子配置信息生成对应的表单;
在接收对所述表单进行的编辑后,得到目标表单信息。
13.一种生成智能合约的数据处理装置,其特征在于,包括:
确定模块,用于确定需要进行智能合约配置的区块链的区块链信息;
匹配模块,用于匹配得到与所述区块链信息对应的智能合约模板;
配置模块,用于获取用于写入所述智能合约模板的配置信息;
生成模块,用于根据所述区块链信息、配置信息和智能合约模板生成与所述区块链对应的智能合约。
14.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现权利要求1-12任一项所述的处理方法。
15.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行权利要求1-12任一项所述的处理方法。
CN202010896449.6A 2020-08-31 2020-08-31 一种生成智能合约的数据处理方法及装置 Pending CN112015399A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010896449.6A CN112015399A (zh) 2020-08-31 2020-08-31 一种生成智能合约的数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010896449.6A CN112015399A (zh) 2020-08-31 2020-08-31 一种生成智能合约的数据处理方法及装置

Publications (1)

Publication Number Publication Date
CN112015399A true CN112015399A (zh) 2020-12-01

Family

ID=73503052

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010896449.6A Pending CN112015399A (zh) 2020-08-31 2020-08-31 一种生成智能合约的数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN112015399A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685016A (zh) * 2020-12-31 2021-04-20 北京存金所贵金属有限公司 区块链应用的开发方法、装置和设备
CN112799674A (zh) * 2021-01-19 2021-05-14 腾讯科技(深圳)有限公司 区块链中智能合约的执行方法、装置及节点设备
CN113222757A (zh) * 2021-05-06 2021-08-06 永旗(北京)科技有限公司 一种区块链智能合约管理方法及***
CN113408259A (zh) * 2021-06-09 2021-09-17 微易签(杭州)科技有限公司 一种基于区块链填写文件的方法、***、装置和存储介质
CN113448592A (zh) * 2021-02-08 2021-09-28 北京科技大学 一种基于合同文本标记语言的智能法律合约生成方法
CN113468862A (zh) * 2021-07-08 2021-10-01 微易签(杭州)科技有限公司 区块链创建版式文件的方法、装置、电子设备及存储介质
CN114997866A (zh) * 2022-05-26 2022-09-02 成都质数斯达克科技有限公司 一种业务合约生成方法、装置、设备及可读存储介质
US20240104663A1 (en) * 2022-09-28 2024-03-28 Change Healthcare Holdings, Llc Systems and methods for decentralized contract management

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630514A (zh) * 2016-02-24 2016-06-01 浪潮通用软件有限公司 一种基于模板化的表单设计方法
US20190026847A1 (en) * 2017-07-21 2019-01-24 Leap, Llc Dynamic Content Generator
CN109542421A (zh) * 2018-11-12 2019-03-29 夸克链科技(深圳)有限公司 一种模块化区块链智能合约
CN110221837A (zh) * 2019-05-21 2019-09-10 深圳壹账通智能科技有限公司 智能合约调用方法、装置、设备和存储介质
CN110933163A (zh) * 2019-11-27 2020-03-27 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
CN111047327A (zh) * 2019-11-22 2020-04-21 支付宝(杭州)信息技术有限公司 一种智能合约的执行方法、装置及设备
CN111427555A (zh) * 2020-03-30 2020-07-17 中科全维科技(苏州)有限公司 一种轻量化智能合约框架及合约开发方法
CN111459504A (zh) * 2020-03-30 2020-07-28 百度国际科技(深圳)有限公司 智能合约的处理方法、装置、设备和存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630514A (zh) * 2016-02-24 2016-06-01 浪潮通用软件有限公司 一种基于模板化的表单设计方法
US20190026847A1 (en) * 2017-07-21 2019-01-24 Leap, Llc Dynamic Content Generator
CN109542421A (zh) * 2018-11-12 2019-03-29 夸克链科技(深圳)有限公司 一种模块化区块链智能合约
CN110221837A (zh) * 2019-05-21 2019-09-10 深圳壹账通智能科技有限公司 智能合约调用方法、装置、设备和存储介质
CN111047327A (zh) * 2019-11-22 2020-04-21 支付宝(杭州)信息技术有限公司 一种智能合约的执行方法、装置及设备
CN110933163A (zh) * 2019-11-27 2020-03-27 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
CN111427555A (zh) * 2020-03-30 2020-07-17 中科全维科技(苏州)有限公司 一种轻量化智能合约框架及合约开发方法
CN111459504A (zh) * 2020-03-30 2020-07-28 百度国际科技(深圳)有限公司 智能合约的处理方法、装置、设备和存储介质

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685016A (zh) * 2020-12-31 2021-04-20 北京存金所贵金属有限公司 区块链应用的开发方法、装置和设备
CN112685016B (zh) * 2020-12-31 2024-07-09 北京存金所贵金属有限公司 区块链应用的开发方法、装置和设备
CN112799674A (zh) * 2021-01-19 2021-05-14 腾讯科技(深圳)有限公司 区块链中智能合约的执行方法、装置及节点设备
CN112799674B (zh) * 2021-01-19 2024-03-26 腾讯科技(深圳)有限公司 区块链中智能合约的执行方法、装置及节点设备
CN113448592A (zh) * 2021-02-08 2021-09-28 北京科技大学 一种基于合同文本标记语言的智能法律合约生成方法
CN113448592B (zh) * 2021-02-08 2023-03-24 北京科技大学 一种基于合同文本标记语言的智能法律合约生成方法
CN113222757A (zh) * 2021-05-06 2021-08-06 永旗(北京)科技有限公司 一种区块链智能合约管理方法及***
CN113408259A (zh) * 2021-06-09 2021-09-17 微易签(杭州)科技有限公司 一种基于区块链填写文件的方法、***、装置和存储介质
CN113408259B (zh) * 2021-06-09 2024-05-07 微易签(杭州)科技有限公司 一种基于区块链填写文件的方法、***、装置和存储介质
CN113468862A (zh) * 2021-07-08 2021-10-01 微易签(杭州)科技有限公司 区块链创建版式文件的方法、装置、电子设备及存储介质
CN114997866A (zh) * 2022-05-26 2022-09-02 成都质数斯达克科技有限公司 一种业务合约生成方法、装置、设备及可读存储介质
US20240104663A1 (en) * 2022-09-28 2024-03-28 Change Healthcare Holdings, Llc Systems and methods for decentralized contract management

Similar Documents

Publication Publication Date Title
CN112015399A (zh) 一种生成智能合约的数据处理方法及装置
CN109976761B (zh) 软件开发工具包的生成方法、装置及终端设备
CN106874244B (zh) 一种基于工作序列的文档自动生成模型的构建方法
US20080276221A1 (en) Method and apparatus for relations planning and validation
NL2012132C2 (en) Pricing user-defined financial instruments.
CN113127347A (zh) 一种接口测试方法、装置、设备及可读存储介质
US8145992B2 (en) Validation assisted document conversion design
CN115686606A (zh) 一种项目依赖树的展示方法、装置、***及介质
US11899570B2 (en) System and method for optimizing assessment and implementation of microservices code for cloud platforms
CN115543781A (zh) 汽车软件模型自动化验证的方法及交互***
CN114168565A (zh) 业务规则模型的回溯测试方法、装置、***及决策引擎
CN110806891B (zh) 嵌入式设备软件版本的生成方法及装置
US11977473B2 (en) Providing a pseudo language for manipulating complex variables of an orchestration flow
CN117215556A (zh) 模块化的页面快速构建方法、***、设备及介质
CN116755669A (zh) 一种基于dsl语言操作模型的低代码开发方法和工具
CN110852050A (zh) 一种配置报表生成***的方法、装置和电子设备
CN114356783A (zh) 单元测试代码自动生成方法、装置、存储介质及设备
CN112257392B (zh) 一种计算机程序操作文档的生成方法、装置及设备
CN113504904A (zh) 用户定义函数实现方法、装置、计算机设备和存储介质
CN112764742A (zh) 一种数据处理的方法和装置
CN113535162A (zh) 前端界面配置方法、展示方法及装置
KR101737575B1 (ko) 자동 생성된 sql 구문 기반의 데이터 검증 방법 및 장치
CN112130841B (zh) Sql开发方法、装置及终端设备
CN117234466B (zh) 企业管理软件开发方法、***、设备及存储介质
CN113052675B (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
CB02 Change of applicant information

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Digital Technology Holding Co., Ltd

CB02 Change of applicant information