CN118409747A - 智能合约生成方法、装置、设备、存储介质和程序产品 - Google Patents
智能合约生成方法、装置、设备、存储介质和程序产品 Download PDFInfo
- Publication number
- CN118409747A CN118409747A CN202410859638.4A CN202410859638A CN118409747A CN 118409747 A CN118409747 A CN 118409747A CN 202410859638 A CN202410859638 A CN 202410859638A CN 118409747 A CN118409747 A CN 118409747A
- Authority
- CN
- China
- Prior art keywords
- contract
- function components
- connection
- contract function
- components
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000004044 response Effects 0.000 claims abstract description 56
- 230000006870 function Effects 0.000 claims description 253
- 238000004590 computer program Methods 0.000 claims description 36
- 238000010586 diagram Methods 0.000 claims description 18
- 230000036961 partial effect Effects 0.000 claims description 2
- 239000000306 component Substances 0.000 description 282
- 238000011161 development Methods 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 239000008358 core component Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种智能合约生成方法、装置、设备、存储介质和程序产品,涉及区块链技术领域。所述方法包括:通过显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件,响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示,响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系,然后根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,能够直接根据合约功能组件以及多个合约功能组件之间的逻辑关系生成智能合约,从而能够实现智能合约的自动生成,简化了智能合约开发的操作,并且提高智能合约开发的准确性和效率。
Description
技术领域
本申请涉及区块链技术领域,特别是涉及一种智能合约生成方法、装置、设备、存储介质和程序产品。
背景技术
随着信息技术的飞速发展,区块链技术作为一种去中心化、不可篡改、安全可靠的分布式账本技术,正逐渐改变着我们的生活方式和经济格局。在区块链技术的众多应用中,智能合约(Smart Contract)作为其核心组成部分之一,受到了广泛的关注和研究。
目前,智能合约需要具备专业编程知识的开发人员人工开发,导致智能合约在开发中存在一定限制,开发门槛高。
发明内容
基于此,有必要针对上述技术问题,提供一种能够自动生成智能合约的智能合约生成方法、装置、设备、存储介质和程序产品。
第一方面,本申请提供了一种智能合约生成方法。该方法包括:
显示合约生成界面,该合约生成界面中包括工作区,以及组件库区域,该组件库区域中包括若干合约功能组件;
响应于针对多个合约功能组件的拖拽操作,将该多个合约功能组件移动至该工作区内显示;
响应于针对该工作区内显示的该多个合约功能组件的连接操作,获取该多个合约功能组件之间的逻辑关系;
根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约。
在其中一个实施例中,该根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约之前,该方法还包括:
响应于针对目标合约功能组件的编辑操作,在该合约生成界面上显示该目标合约功能组件的编辑区,该编辑区中包括:属性编辑控件;
响应于针对该属性编辑控件的输入操作,在该编辑区内显示该输入操作对应的属性参数;
将该属性参数输入该目标合约功能组件对应的模板代码,以得到该目标合约功能组件的功能代码。
在其中一个实施例中,该根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约之前,该方法还包括:
响应于针对该工作区内显示的该多个合约功能组件的连接操作,显示与该连接操作对应的该多个合约功能组件的连接图;
若该多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;该第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在其中一个实施例中,该响应于针对该工作区内显示的该多个合约功能组件的连接操作,获取该多个合约功能组件之间的逻辑关系之后,该方法还包括:
若该多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;该第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在其中一个实施例中,该响应于针对该属性编辑控件的输入操作,在该编辑区内显示该输入操作对应的属性参数之后,该方法还包括:
若该输入操作对应的属性参数存在错误,则显示参数错误提示信息;该参数错误提示信息用于提醒用户输入的属性参数存在错误。
在其中一个实施例中,该合约生成界面中还包括智能合约生成控件,该根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约,包括:
响应于针对该智能合约生成控件的点击操作,根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示该智能合约的生成进度提示信息;
其中,该生成进度提示信息包括:生成该智能合约的预计剩余等待时长,和/或,生成该智能合约的进度百分比数值。
第二方面,本申请还提供了一种智能合约生成装置。该装置包括:
第一显示模块,用于显示合约生成界面,该合约生成界面中包括工作区,以及组件库区域,该组件库区域中包括若干合约功能组件;
移动模块,用于响应于针对多个合约功能组件的拖拽操作,将该多个合约功能组件移动至该工作区内显示;
获取模块,用于响应于针对该工作区内显示的该多个合约功能组件的连接操作,获取该多个合约功能组件之间的逻辑关系;
生成模块,用于根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约。
在其中一个实施例中,该装置还包括:
第二显示模块,用于响应于针对目标合约功能组件的编辑操作,在该合约生成界面上显示该目标合约功能组件的编辑区,该编辑区中包括:属性编辑控件;
第三显示模块,用于响应于针对该属性编辑控件的输入操作,在该编辑区内显示该输入操作对应的属性参数;
输入模块,用于将该属性参数输入该目标合约功能组件对应的模板代码,以得到该目标合约功能组件的功能代码。
在其中一个实施例中,该装置还包括:
第四显示模块,用于响应于针对该工作区内显示的该多个合约功能组件的连接操作,显示与该连接操作对应的该多个合约功能组件的连接图;
第五显示模块,用于若该多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;该第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在其中一个实施例中,该装置还包括:
第六显示模块,用于若该多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;该第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在其中一个实施例中,该装置还包括:
第七显示模块,用于若该输入操作对应的属性参数存在错误,则显示参数错误提示信息;该参数错误提示信息用于提醒用户输入的属性参数存在错误。
在其中一个实施例中,该生成模块,具体用于响应于针对该智能合约生成控件的点击操作,根据该逻辑关系,将该多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示该智能合约的生成进度提示信息;
其中,该生成进度提示信息包括:生成该智能合约的预计剩余等待时长,和/或,生成该智能合约的进度百分比数值。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述任一方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一方法的步骤。
第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一方法的步骤。
上述智能合约生成方法、装置、设备、存储介质和程序产品,通过显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件,响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示,响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系,然后根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。由于本申请实施例中,通过显示合约生成界面获取合约功能组件以及多个合约功能组件之间的逻辑关系,然后直接根据合约功能组件以及多个合约功能组件之间的逻辑关系生成了智能合约,从而能够实现智能合约的自动生成,简化了智能合约开发的操作,降低了智能合约开发的门槛,并且提高智能合约开发的准确性和效率。
附图说明
图1是本申请实施例提供的一种计算机设备的内部结构图;
图2是本申请实施例提供的一种智能合约生成方法的流程示意图;
图3是本申请实施例提供的一种合约生成界面的示意图;
图4是本申请实施例提供的一种功能代码获取方法的流程示意图;
图5是本申请实施例提供的一种第一连接错误提示信息显示方法的流程示意图;
图6是本申请实施例提供的一种基于图像界面的智能合约生成方法的流程示意图;
图7是本申请实施例提供的一种智能合约生成装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
随着信息技术的飞速发展,区块链技术作为一种去中心化、不可篡改、安全可靠的分布式账本技术,正逐渐改变着我们的生活方式和经济格局。在区块链技术的众多应用中,智能合约(Smart Contract)作为其核心组成部分之一,受到了广泛的关注和研究。
目前,智能合约需要具备专业编程知识的开发人员人工开发,导致智能合约在开发中存在一定限制,开发门槛高。
本申请实施例提供的智能合约生成方法,可以应用于如图1所示的应用环境中。图1是本申请实施例提供的一种计算机设备的内部结构图,该计算机设备可以是服务器,其内部结构图可以如图1所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种智能合约生成方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,如图2所示,图2是本申请实施例提供的一种智能合约生成方法的流程示意图,该方法可以应用于图1中计算机设备,该方法包括以下步骤:
S201,显示合约生成界面。
其中,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件。
示例性的,参照图3,图3是本申请实施例提供的一种合约生成界面的示意图。如图3所示,合约生成界面可以包括工作区、组件库区域、编辑区、顶部菜单栏和底部状态栏。其中,工作区是用户进行操作的主要区域,用户可以从组件库区域中选择多个合约功能组件,并使其在工作区内显示。用户还可以在工作区分别连接各合约功能组件的输入连接点和输出连接点。组件库区域用于显示若干合约功能组件,该若干合约功能组件可以是智能合约开发中常用功能的合约功能组件。编辑区用于编辑选中的目标合约功能组件的属性参数。顶部菜单栏包括文件管理、视图、生成等功能控件。用户可以通过上述功能控件完成打开或保存文件、切换视图、生成智能合约等操作。底部状态栏可以用于显示当前智能合约的状态,例如显示错误提示信息或生成进度提示信息。
本申请实施例中,可以通过响应于针对智能合约生成软件图标的点击操作,显示合约生成界面。
可选的,合约功能组件可以包括基本逻辑组件、数据处理组件和交易相关组件中的至少一个。其中,基本逻辑组件例如可以为条件判断组件、循环控制组件中的至少一个;数据处理组件例如可以为数据存储组件、数据检索组件中的至少一个;交易相关组件例如可以为资源转移组件、合约调用组件中的至少一个。
S202,响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示。
本申请实施例中,用户可以在组件库区域选择生成智能合约所需的合约功能组件,并将选择的合约功能组件拖拽至工作区内显示。响应于针对合约功能组件的拖拽操作,将用户选择的合约功能组件在工作区内显示。
S203,响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系。
在一个实施例中,合约功能组件包括输入连接点和输出连接点。用户可以通过将合约功能组件的输入连接点和输出连接点与其他合约功能组件的连接点连接,以实现连接多个合约功能组件。响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系。
可选的,合约功能组件的输入连接点可以用于接收数据或指令,以通过输入连接点接收上一合约功能组件输出的数据或指令。类似的,合约功能组件的输出连接点可以用于输出数据或指令,以通过输出连接点向下一合约功能组件输出数据或指令。
S204,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
在一种可能的实施方式中,一个合约功能组件对应一组模板代码。用户可以通过编辑区设置选中的合约功能组件的属性参数。响应于该属性参数编辑操作,可以将用户输入的属性参数转化为对应的数据结构,并将该数据结构写入模板代码,以得到该选中的合约功能组件的功能代码。
示例性的,用户可以根据实际需求选择目标编程语言。响应于该编程语言选择操作,可以将用户输入的属性参数转化为目标编程语言的数据结构,并将该数据结构写入目标编程语言的模板代码中,以得到目标编程语言的合约功能组件的功能代码。
本申请实施例中,可以根据各合约功能组件的连接点之间的连接关系,即各合约功能组件之间的逻辑关系,将多个合约功能组件的功能代码进行拼接,得到完整的智能合约代码。
可选的,在智能合约代码生成后,用户可以根据需求对该智能合约代码进行手动编辑和调整,以提高智能合约生成的灵活性。
本申请实施例中,通过显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件,响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示,响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系,然后根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。由于本申请实施例中,通过显示合约生成界面获取合约功能组件以及多个合约功能组件之间的逻辑关系,然后直接根据合约功能组件以及多个合约功能组件之间的逻辑关系生成了智能合约,从而能够实现智能合约的自动生成,简化了智能合约开发的操作,降低了智能合约开发的门槛,并且提高智能合约开发的准确性和效率。
参照图4,图4是本申请实施例提供的一种功能代码获取方法的流程示意图。在上述实施例的基础上,上述S204之前,该方法还包括如下步骤:
S401,响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区。
其中,编辑区中包括:属性编辑控件。
在一个实施例中,用户可以在工作区中选中目标合约组件,通过双击或单击目标合约功能组件对目标合约组件进行编辑。响应于针对目标合约功能组件的双击或单击操作,在合约生成界面上显示目标合约功能组件的编辑区。
S402,响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数。
可选的,属性编辑控件可以包括输入控件,和/或,选择控件。
在属性编辑控件包括输入控件时,用户可以通过输入控件输入目标合约功能控件对应的属性参数。响应于针对输入控件的输入操作,在编辑区内显示输入操作对应的属性参数。
在属性编辑控件包括选择控件时,用户可以通过选择控件的选项列表选择目标合约功能控件对应的属性参数。响应于针对选择控件的选择操作,在编辑区内显示输入操作对应的属性参数。
示例性的,目标合约功能组件可以为资源转移组件,则属性参数包括资源转移数值以及接收方地址。或者,目标合约功能组件可以为循环控制组件,则属性参数包括循环条件和循环周期。
S403,将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
可选的,可以将属性参数转化为对应的数据结构,并将该数据结构写入模板代码,以得到目标合约功能组件的功能代码。
本申请实施例中,响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区,响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数,将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码,从而能够提高智能合约生成的灵活性,使之更好地适应不同的需求,并且将模板代码和属性参数分离,便于对模板代码和属性参数进行修改,同时降低了智能合约生成过程中出现错误的风险。
参照图5,图5是本申请实施例提供的一种第一连接错误提示信息显示方法的流程示意图。在上述实施例的基础上,上述S204之前,该方法还包括如下步骤:
S501,响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图。
在一个实施例中,用户可以在工作区内通过输入连接点和输出连接点将多个合约功能组件连接起来。响应于针对工作区内多个合约功能组件的连接点的连接操作,在工作区中显示与连接操作对应的多个合约功能组件的连接图,即除了显示多个合约功能组件外,还要在工作区中显示各合约功能组件的连接点之间的连接线。
S502,若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息。
其中,第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
可选的,可以工作区中的各合约功能组件的连接点的连接关系进行实时监测,若多个合约功能组件中存在输入连接点和输出连接点均未与其他合约功能组件的连接点连接的第一合约功能组件,则生成第一连接错误提示信息,并在底部状态栏显示该第一连接错误提示信息,以通过第一连接错误提示信息指示用户当前的连接图中存在未与其他合约功能组件连接的合约功能组件。
本申请实施例中,响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图,若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息,以通过第一连接错误提示信息指示用户当前的连接图中存在未与其他合约功能组件连接的合约功能组件,从而能够提示用户对多个合约功能组件之间的连接关系进行修改,降低了多个合约功能组件的连接图出现错误的风险,进而提高根据连接图生成的智能合约的准确性。
在上述实施例的基础上,上述S203之后,该方法还包括如下步骤:
若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息。
其中,第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
示例性的,若两个或多个合约功能组件之间形成了循环依赖,即合约功能组件A调用了合约功能组件B,合约功能组件B又调用了合约功能组件A,导致循环依赖,则确定多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突。
或者,若合约功能组件A的输出连接点与合约功能组件B的输入连接点连接,但合约功能组件A的输出的数据类型与合约功能组件B的输入的数据类型不匹配,则确定多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突。
若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则生成第二连接错误提示信息,并在底部状态栏显示该第二连接错误提示信息,以通过第二连接错误提示信息指示用户当前的连接图中部分合约功能组件之间的连接存在逻辑冲突。
本申请实施例中,若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息,从而能够提示用户对多个合约功能组件之间的连接关系进行修改,降低了多个合约功能组件的连接图出现错误的风险,进而提高根据连接图生成的智能合约的准确性。
在上述实施例的基础上,上述S402之后,该方法还包括如下步骤:
若输入操作对应的属性参数存在错误,则显示参数错误提示信息。
其中,参数错误提示信息用于提醒用户输入的属性参数存在错误。
示例性的,若输入操作对应的属性参数已经在其他合约功能组件中定义过,即出现了重复定义的变量,则确定输入操作对应的属性参数存在错误。
或者,假设目标合约功能组件为条件判断组件,则输入操作对应的属性参数可以为判断条件。若条件判断组件的多个判断条件中包含了相互矛盾的条件,则确定输入操作对应的属性参数存在错误。
或者,若输入操作对应的属性参数的数据类型与目标合约功能组件所需的属性参数的数据类型不同,则确定输入操作对应的属性参数存在错误。
可选的,若输入操作对应的属性参数存在错误,则生成参数错误提示信息,并在底部状态栏显示该参数错误提示信息,以通过参数错误提示信息指示用户输入的属性参数存在错误。
本申请实施例中,若输入操作对应的属性参数存在错误,则显示参数错误提示信息,从而能够提示用户及时根据该显示参数错误提示信息对输入的属性参数进行修改,降低了智能合约开发过程中出现错误的风险,提高了智能合约开发的效率和智能合约的质量。
在上述实施例的基础上,上述的S204还可以通过如下步骤实现:
响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息。
其中,生成进度提示信息包括:生成智能合约的预计剩余等待时长,和/或,生成智能合约的进度百分比数值。
合约生成界面的顶部菜单栏中可以包括智能合约生成控件,可以响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。并且在生成智能合约的过程中,在底部状态栏实时显示智能合约的生成进度提示信息。
本申请实施例中,响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息,从而能够直观的反映智能合约的生成进度,提高智能合约生成平台的可信度和用户的使用体验感,并且在智能合约生成过程中出现错误时,智能合约的生成进度提示信息可以帮助用户快速定位错误出现的位置,从而提高错误排查的速度。
参照图6,图6是本申请实施例提供的一种基于图像界面的智能合约生成方法的流程示意图。该方法包括如下步骤:
S601,显示合约生成界面。
S602,响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示。
S603,响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系。
S604,响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数。
S605,将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
S606,响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的智能合约生成方法的智能合约生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个智能合约生成装置实施例中的具体限定可以参见上文中对于智能合约生成方法的限定,在此不再赘述。
在一个实施例中,如图7所示,图7是本申请实施例提供的一种智能合约生成装置的结构框图,该装置700包括:
第一显示模块701,用于显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件。
移动模块702,用于响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示。
获取模块703,用于响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系。
生成模块704,用于根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
在其中一个实施例中,装置700还包括:
第二显示模块,用于响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区,编辑区中包括:属性编辑控件;
第三显示模块,用于响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数;
输入模块,用于将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
在其中一个实施例中,装置700还包括:
第四显示模块,用于响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图;
第五显示模块,用于若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在其中一个实施例中,装置700还包括:
第六显示模块,用于若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在其中一个实施例中,装置700还包括:
第七显示模块,用于若输入操作对应的属性参数存在错误,则显示参数错误提示信息;参数错误提示信息用于提醒用户输入的属性参数存在错误。
在其中一个实施例中,生成模块,具体用于响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息;
其中,生成进度提示信息包括:生成智能合约的预计剩余等待时长,和/或,生成智能合约的进度百分比数值。
上述智能合约生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件;
响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示;
响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系;
根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区,编辑区中包括:属性编辑控件;
响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数;
将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图;
若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若输入操作对应的属性参数存在错误,则显示参数错误提示信息;参数错误提示信息用于提醒用户输入的属性参数存在错误。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息;
其中,生成进度提示信息包括:生成智能合约的预计剩余等待时长,和/或,生成智能合约的进度百分比数值。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件;
响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示;
响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系;
根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区,编辑区中包括:属性编辑控件;
响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数;
将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图;
若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若输入操作对应的属性参数存在错误,则显示参数错误提示信息;参数错误提示信息用于提醒用户输入的属性参数存在错误。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息;
其中,生成进度提示信息包括:生成智能合约的预计剩余等待时长,和/或,生成智能合约的进度百分比数值。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
显示合约生成界面,合约生成界面中包括工作区,以及组件库区域,组件库区域中包括若干合约功能组件;
响应于针对多个合约功能组件的拖拽操作,将多个合约功能组件移动至工作区内显示;
响应于针对工作区内显示的多个合约功能组件的连接操作,获取多个合约功能组件之间的逻辑关系;
根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对目标合约功能组件的编辑操作,在合约生成界面上显示目标合约功能组件的编辑区,编辑区中包括:属性编辑控件;
响应于针对属性编辑控件的输入操作,在编辑区内显示输入操作对应的属性参数;
将属性参数输入目标合约功能组件对应的模板代码,以得到目标合约功能组件的功能代码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对工作区内显示的多个合约功能组件的连接操作,显示与连接操作对应的多个合约功能组件的连接图;
若多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若输入操作对应的属性参数存在错误,则显示参数错误提示信息;参数错误提示信息用于提醒用户输入的属性参数存在错误。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
响应于针对智能合约生成控件的点击操作,根据逻辑关系,将多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示智能合约的生成进度提示信息;
其中,生成进度提示信息包括:生成智能合约的预计剩余等待时长,和/或,生成智能合约的进度百分比数值。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种智能合约生成方法,其特征在于,所述方法包括:
显示合约生成界面,所述合约生成界面中包括工作区,以及组件库区域,所述组件库区域中包括若干合约功能组件;
响应于针对多个合约功能组件的拖拽操作,将所述多个合约功能组件移动至所述工作区内显示;
响应于针对所述工作区内显示的所述多个合约功能组件的连接操作,获取所述多个合约功能组件之间的逻辑关系;
根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约。
2.根据权利要求1所述的方法,其特征在于,所述根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约之前,所述方法还包括:
响应于针对目标合约功能组件的编辑操作,在所述合约生成界面上显示所述目标合约功能组件的编辑区,所述编辑区中包括:属性编辑控件;
响应于针对所述属性编辑控件的输入操作,在所述编辑区内显示所述输入操作对应的属性参数;
将所述属性参数输入所述目标合约功能组件对应的模板代码,以得到所述目标合约功能组件的功能代码。
3.根据权利要求2所述的方法,其特征在于,所述根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约之前,所述方法还包括:
响应于针对所述工作区内显示的所述多个合约功能组件的连接操作,显示与所述连接操作对应的所述多个合约功能组件的连接图;
若所述多个合约功能组件的连接图中存在未与其他合约功能组件连接的第一合约功能组件,则显示第一连接错误提示信息;所述第一连接错误提示信息用于提示用户存在未与其他合约功能组件连接的合约功能组件。
4.根据权利要求2所述的方法,其特征在于,所述响应于针对所述工作区内显示的所述多个合约功能组件的连接操作,获取所述多个合约功能组件之间的逻辑关系之后,所述方法还包括:
若所述多个合约功能组件中部分合约功能组件之间的连接存在逻辑冲突,则显示第二连接错误提示信息;所述第二连接错误提示信息用于提示用户部分合约功能组件之间的连接存在逻辑冲突。
5.根据权利要求2所述的方法,其特征在于,所述响应于针对所述属性编辑控件的输入操作,在所述编辑区内显示所述输入操作对应的属性参数之后,所述方法还包括:
若所述输入操作对应的属性参数存在错误,则显示参数错误提示信息;所述参数错误提示信息用于提醒用户输入的属性参数存在错误。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述合约生成界面中还包括智能合约生成控件,所述根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约,包括:
响应于针对所述智能合约生成控件的点击操作,根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约,并显示所述智能合约的生成进度提示信息;
其中,所述生成进度提示信息包括:生成所述智能合约的预计剩余等待时长,和/或,生成所述智能合约的进度百分比数值。
7.一种智能合约生成装置,其特征在于,所述装置包括:
第一显示模块,用于显示合约生成界面,所述合约生成界面中包括工作区,以及组件库区域,所述组件库区域中包括若干合约功能组件;
移动模块,用于响应于针对多个合约功能组件的拖拽操作,将所述多个合约功能组件移动至所述工作区内显示;
获取模块,用于响应于针对所述工作区内显示的所述多个合约功能组件的连接操作,获取所述多个合约功能组件之间的逻辑关系;
生成模块,用于根据所述逻辑关系,将所述多个合约功能组件的功能代码进行拼接,以生成智能合约。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410859638.4A CN118409747A (zh) | 2024-06-28 | 2024-06-28 | 智能合约生成方法、装置、设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410859638.4A CN118409747A (zh) | 2024-06-28 | 2024-06-28 | 智能合约生成方法、装置、设备、存储介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118409747A true CN118409747A (zh) | 2024-07-30 |
Family
ID=91996253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410859638.4A Pending CN118409747A (zh) | 2024-06-28 | 2024-06-28 | 智能合约生成方法、装置、设备、存储介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118409747A (zh) |
-
2024
- 2024-06-28 CN CN202410859638.4A patent/CN118409747A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112036736B (zh) | 一种工作流创建方法及装置 | |
JP5295464B1 (ja) | システム構築支援ツール及びシステム | |
RU2488159C2 (ru) | Ранжирование типов визуализации на основании пригодности для визуализации набора данных | |
EP2338116A2 (en) | Document-based workflows | |
JP2009501970A (ja) | 有限状態マシンモデルの構築 | |
US20090178026A1 (en) | Self-describing re-usable software components | |
CN113094125B (zh) | 业务流程处理方法、装置、服务器及存储介质 | |
CN106600226B (zh) | 用于优化流程管理系统的方法及装置 | |
KR20100081351A (ko) | 논리 구조 설계 표면 | |
KR20150110063A (ko) | 빅데이터 처리를 위한 맵리듀스를 통합하는 장치 및 방법 | |
CN113918437B (zh) | 用户行为数据分析方法、装置、计算机设备和存储介质 | |
CN117252559B (zh) | 业务流程的处理方法、装置、计算机设备、存储介质 | |
CN114238085A (zh) | 接口测试方法、装置、计算机设备、存储介质 | |
US7567257B2 (en) | Partition-based undo of partitioned object graph | |
JP2023531931A (ja) | 半導体デバイスのモデリング方法及び装置 | |
CN118409747A (zh) | 智能合约生成方法、装置、设备、存储介质和程序产品 | |
CN112446625A (zh) | 一种工艺线路生成系统、方法、平台及存储介质 | |
CN116167882A (zh) | 条件表达式动态配置方法、会计条件计算方法及装置 | |
CN113407163B (zh) | 模块关联赋值方法、装置、计算机设备及可读存储介质 | |
CN113821219B (zh) | 一种实现应用程序容器化的方法及系统 | |
CN115269390A (zh) | 一种图形化接口自动测试方法、装置及存储介质 | |
CN117610505B (zh) | 一种基于标准模型的数据处理方法及装置 | |
KR20210121574A (ko) | 데이터 셋 관리 장치 및 이를 이용한 기계학습 모델과 데이터 셋 사이의 관계 표시 방법 | |
JP7287486B2 (ja) | 可視化データへの付箋の付与及び復元 | |
CN118152137A (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 |