CN110879701B - 工作流可视化配置方法、服务器、系统及介质 - Google Patents
工作流可视化配置方法、服务器、系统及介质 Download PDFInfo
- Publication number
- CN110879701B CN110879701B CN201911077703.3A CN201911077703A CN110879701B CN 110879701 B CN110879701 B CN 110879701B CN 201911077703 A CN201911077703 A CN 201911077703A CN 110879701 B CN110879701 B CN 110879701B
- Authority
- CN
- China
- Prior art keywords
- task
- server
- tasks
- workflow
- dependency relationship
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种工作流可视化配置方法、服务器、系统及介质,其中,所述服务器中存储有能够用于面板创建的插件,所述方法包括:当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板;配置任务参数,生成多个任务;检测所述有向无环图面板上的触控操作;根据所述触控操作生成所述多个任务之间的依赖关系;根据所述多个任务及所述依赖关系生成工作流;显示所述工作流。本发明能够提高可视化工作流的配置效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及工作流可视化配置方法、服务器、系统及介质。
背景技术
目前,对工作流进行可视化配置,往往需要用户打包并上传压缩文件至工作流调度系统才能完成工作流的配置,然而,这种配置方式的配置效率低下,此外,当修改工作流中任务的依赖关系时,需要重新编写压缩文件并上传,这种方式在操作上不灵活,不利于用户的体验,因此,如何提高可视化工作流的配置效率成了亟待解决的问题。
发明内容
本发明的主要目的在于提供工作流可视化配置方法、服务器、系统及介质,旨在解决如何提高可视化工作流的配置效率的问题。
为实现上述目的,本发明提供一种工作流可视化配置方法,应用于服务器中,所述服务器中存储有能够用于面板创建的插件,所述方法包括:
当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板;
配置任务参数,生成多个任务;
检测所述有向无环图面板上的触控操作;
根据所述触控操作生成所述多个任务之间的依赖关系;
根据所述多个任务及所述依赖关系生成工作流;
显示所述工作流。
优选地,在所述服务器中没有存储能够提供面板创建的插件时,所述方法还包括:
获取所述服务器的文件入口;
将所述插件写入目录文件中;
将所述目录文件导入所述文件入口,得到嵌入在所述服务器中的插件;
根据嵌入在所述服务器中的插件创建所述有向无环图面板。
优选地,所述方法还包括:
当接收到任务变更指令时,从所述任务变更指令中确定第一任务,检测所述有向无环图面板上的变更操作,根据该变更操作变更所述第一任务;及/或
当接收到依赖关系变更指令时,从所述依赖关系变更指令中确定目标依赖关系,检测所述有向无环图面板上的触控操作,根据该触控操作变更所述目标依赖关系。
优选地,所述根据所述多个任务及所述依赖关系生成工作流包括:
根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径;
集成所述多个任务及所述依赖路径,得到所述工作流。
优选地,所述方法还包括:
当检测到有光标移动至所述多个任务中的任意任务上时,以悬浮框形式显示所述任意任务的目标信息;及/或
当检测到任意任务被触发时,显示所述任意任务的所有信息。
优选地,所述方法还包括:
当检测到所述多个任务中有任务执行失败时,将该任务确定为目标任务;
确定所述目标任务的任务级别;
根据所述任务级别,生成告警信息;
根据所述告警信息的告警级别,确定告警形式;
以所述告警形式发送所述告警信息。
为实现上述目的,本发明进一步提供一种服务器,所述服务器包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述工作流可视化配置方法。
优选地,所述服务器为组成内容分发网络或者区块链网络的节点。
为实现上述目的,本发明进一步提供一种工作流可视化配置系统,运行于服务器中,所述服务器中存储有能够用于面板创建的插件,所述系统包括:
创建单元,用于当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板;
生成单元,用于配置任务参数,生成多个任务;
检测单元,用于检测所述有向无环图面板上的触控操作;
所述生成单元,还用于根据所述触控操作生成所述多个任务之间的依赖关系;
所述生成单元,还用于根据所述多个任务及所述依赖关系生成工作流;
显示单元,用于显示所述工作流。
优选地,所述系统还包括:
获取单元,用于在所述服务器中没有存储能够提供面板创建的插件时,获取所述服务器的文件入口;
写入单元,用于将所述插件写入目录文件中;
导入单元,用于将所述目录文件导入所述文件入口,得到嵌入在所述服务器中的插件;
所述创建单元,还用于根据嵌入在所述服务器中的插件创建所述有向无环图面板。
优选地,所述系统还包括:
变更单元,用于当接收到任务变更指令时,从所述任务变更指令中确定第一任务,检测所述有向无环图面板上的变更操作,根据该变更操作变更所述第一任务;及/或
所述变更单元,还用于当接收到依赖关系变更指令时,从所述依赖关系变更指令中确定目标依赖关系,检测所述有向无环图面板上的触控操作,根据该触控操作变更所述目标依赖关系。
优选地,所述生成单元根据所述多个任务及所述依赖关系生成工作流包括:
根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径;
集成所述多个任务及所述依赖路径,得到所述工作流。
优选地,所述显示单元,还用于当检测到有光标移动至所述多个任务中的任意任务上时,以悬浮框形式显示所述任意任务的目标信息;及/或
所述显示单元,还用于当检测到任意任务被触发时,显示所述任意任务的所有信息。
优选地,所述系统还包括:
确定单元,用于当检测到所述多个任务中有任务执行失败时,将该任务确定为目标任务;
所述确定单元,还用于确定所述目标任务的任务级别;
所述生成单元,还用于根据所述任务级别,生成告警信息;
所述确定单元,还用于根据所述告警信息的告警级别,确定告警形式;
发送单元,用于以所述告警形式发送所述告警信息。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有工作流可视化配置程序,所述工作流可视化配置程序可被一个或者多个处理器执行,以实现所述的工作流可视化配置方法。
综上所述,本发明提高了可视化工作流的配置效率。
附图说明
图1为本发明一实施例的流程示意图;
图2为本发明有向无环图面板的展示示意图;
图3为本发明一实施例揭露的服务器的内部结构示意图;
图4为本发明工作流可视化配置系统的功能模块示意图;
主要元件符号说明
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量,应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种工作流可视化配置方法。
参照图1,图1为本发明一实施例的流程示意图。根据不同的需求,该流程示意图中步骤的顺序可以改变,某些步骤可以省略。
所述工作流可视化配置方法应用于一个或者多个服务器中,所述服务器是一种能够依据事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,所述服务器的硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(DigitalSignal Processor,DSP)、嵌入式设备等。
所述服务器可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述服务器还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云。
所述服务器所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
在一实施例中,应用于服务器中,所述服务器中存储有能够用于面板创建的插件,该方法包括:
S10,当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板。
在本发明的至少一个实施例中,所述插件的功能菜单包括至少一个功能选项,所述至少一个功能选项包括,但不限于:有向无环图面板选项、任务选项等。由于所述插件的功能菜单包括所述有向无环图面板选项,因此,所述服务器能够创建所述有向无环图面板。
在本发明的至少一个实施例中,所述可视化配置指令可以由用户触发(例如:通过预设功能按键进行触发),也可以在预设时间内自动触发,本发明不作限制。
其中,所述预设时间可以是个时间点(例如:每天早上九点),也可以是个时间段。
在本发明的至少一个实施例中,在所述服务器中没有存储能够提供面板创建的插件时,所述方法还包括:
获取所述服务器的文件入口,进一步地,所述服务器将所述插件写入目录文件中,更进一步地,所述服务器将所述目录文件导入所述文件入口,得到嵌入在所述服务器中的插件,根据嵌入在所述服务器中的插件创建所述有向无环图面板。
其中,所述服务器可以包括工作流调度系统,本发明不作限制。
通过上述实施方式,不仅能够在未嵌入所述插件的服务器中嵌入所述插件,为所述有向无环图面板提供创建条件,还能够在所述服务器上创建所述有向无环图面板,为后续依赖关系的生成及变更提供基础。
在本发明的至少一个实施例中,所述有向无环图面板的展示示意图如图2所示,例如:所述有向无环图面面板上展示任务A、任务B、任务C、任务D,以及所述任务A、所述任务B、所述任务C与所述任务D之间的关系。
S11,配置任务参数,生成多个任务。
在本发明的至少一个实施例中,所述任务参数包括,但不限于:任务名、任务所在项目的名称、任务的类型、任务的命令、与任务相依赖的依赖任务、允许尝试执行任务的次数、尝试执行任务的时间间隔等。
其中,所述允许尝试执行任务的次数是指当任务执行失败时,所述服务器自动执行该任务的次数,进一步地,所述允许尝试执行任务的次数可以根据实际情况进行自定义设置,本发明不作限制,例如:所述允许尝试执行任务的次数为10次。
进一步地,所述时间间隔是指任务被执行失败时的时间与任务重新被执行的时间的间隔,所述时间间隔一般以毫秒级进行设置,例如:1000ms。
在本发明的至少一个实施例中,由于所述插件的功能菜单包括任务选项,因此,所述任务参数可以在所述服务器上进行配置,进而得到所述多个任务,所述服务器能够直接对所述任务参数进行配置,进而生成任务,提高了生成任务的效率。
在本发明的至少一个实施例中,当所述任务参数配置结束时,所述服务器生成所述多个任务。
其中,所述多个任务的生成个数与所述任务名的个数相等。
S12,检测所述有向无环图面板上的触控操作。
在本发明的至少一个实施例中,所述触控操作包括,但不限于:点击、滑动、拖拽等,本发明不作限制。
在本发明的至少一个实施例中,所述服务器可以从所述触控操作中确定出初始位置及终点位置。
S13,根据所述触控操作生成所述多个任务之间的依赖关系。
在本发明的至少一个实施例中,所述依赖关系是指两个任务之间相互关联的关系。例如,任务A触发完成后,任务B才被执行,也就是说,任务A与任务B之间具有相互依赖的执行顺序。
在本发明的至少一个实施例中,所述服务器能够从所述触控操作中确定初始位置对应的任务及终点位置对应的任务,因此,所述服务器可以根据所述触控操作确定所述多个任务之间的依赖关系。
在本发明的至少一个实施例中,所述方法还包括:
(1)当接收到任务变更指令时,所述服务器从所述任务变更指令中确定第一任务,进一步地,所述服务器检测所述有向无环图面板上的变更操作,根据该变更操作变更所述第一任务。
其中,所述任务变更指令包括:任务的增加、任务的删除等。
例如:当接收到任务变更指令为“增加任务A”,所述服务器从“增加任务A”中确定所述第一任务为“任务A”,进一步地,所述服务器检测所述有向无环图面板上的变更操作为“配置任务参数”,所述服务器根据配置的任务参数生成所述任务A。
通过上述方式,能够直接在所述有向无环图面板上完成所述第一任务的变更操作,而无需重新编写压缩文件再上传到所述服务器,提高了任务变更的效率。
(2)当接收到依赖关系变更指令时,所述服务器从所述依赖关系变更指令中确定目标依赖关系,进一步地,所述服务器检测所述有向无环图面板上的触控操作,根据该触控操作变更所述目标依赖关系。
其中,所述依赖关系变更指令包括:依赖关系的添加、依赖关系的删除等。
通过上述方式,能够直接在所述有向无环图面板上完成所述目标依赖关系的变更操作,而无需重新编写压缩文件再上传到所述服务器,提高了依赖关系变更的效率。
在其他实施例中,所述服务器可以在配置任务参数时,对所述任务参数中的“与任务相依赖的依赖任务”进行配置,从而生成依赖关系。
S14,根据所述多个任务及所述依赖关系生成工作流。
在本发明的至少一个实施例中,所述工作流是指根据一系列过程规则,将任务在不同的角色(例如,操作人员、管理人员、稽核人员等不同的执行者)之间进行传递与执行,所述工作流包括所述多个任务及所述依赖关系。
在本发明的至少一个实施例中,所述服务器根据所述多个任务及所述依赖关系生成工作流包括:
所述服务器根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,所述服务器从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,所述服务器将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径,进一步地,所述服务器集成所述多个任务及所述依赖路径,得到所述工作流。
通过上述实施方式,能够快速生成所述工作流。
S15,显示所述工作流。
在本发明的至少一个实施例中,所述工作流可以显示在所述插件上,也可以显示在所述有向无环图面板上。
例如,显示在所述有向无环图面板上的工作流可以如图2所示,具体为任务A触发完成后,任务B及任务C被执行,当所述任务B及所述任务C执行完后,任务D被触发。
在本发明的至少一个实施例中,所述多个任务可以以列表的形式显示。当需要查找任务时,可以通过在所述列表中搜索,进而定位到待查找任务上,从而实现快速查找所述待查找任务。
在本发明的至少一个实施例中,在显示所述工作流之前,所述方法还包括:
所述服务器加密所述工作流,得到目标密文,当检测到所述目标密文被解密成功时,显示所述工作流。
通过上述实施方式,能够避免所述工作流被篡改而影响任务的执行,提高所述工作流的安全性。
在本发明的至少一个实施例中,所述方法还包括:
(1)当检测到有光标移动至所述多个任务中的任意任务上时,以悬浮框形式显示所述任意任务的目标信息。
其中,所述目标信息包括所述任意任务所在的项目、与所述任意任务相依赖的依赖任务。
(2)当检测到任意任务被触发时,显示所述任意任务的所有信息。
在本发明的至少一个实施例中,所述方法还包括:
当检测到所述多个任务中有任务执行失败时,所述服务器将该任务确定为目标任务,进一步地,所述服务器确定所述目标任务的任务级别,根据所述任务级别,生成告警信息,更进一步地,所述服务器根据所述告警信息的告警级别,确定告警形式,以所述告警形式发送所述告警信息。
其中,所述任务级别根据任务的重要程度设定的,所述任务级别可以包括级别一、级别二、级别三等。
进一步地,所述告警形式包括:电话告警、钉钉告警、邮件告警等。
通过上述实施方式,能够根据任务的任务级别以合适的告警形式通知相关联系人。
综上所述,本发明当接收到可视化配置指令时,创建有向无环图面板,配置任务参数,生成多个任务,检测所述有向无环图面板上的触控操作,根据所述触控操作生成所述多个任务之间的依赖关系,根据所述多个任务及所述依赖关系生成工作流,显示所述工作流,从而提高可视化工作流的配置效率。
参见图3,图3为本发明一实施例揭露的服务器的内部结构示意图。
所述服务器1可以是组成内容分发网络或者区块链网络的节点。
所述服务器1可以包括存储器12、处理器13和总线,还可以包括存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如工作流可视化配置程序。
本领域技术人员可以理解,所述示意图仅仅是服务器1的示例,并不构成对服务器1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述服务器1还可以包括输入输出设备、网络接入设备等。
需要说明的是,所述服务器1仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
其中,存储器12至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器12在一些实施例中可以是服务器1的内部存储单元,例如该服务器1的移动硬盘。存储器12在另一些实施例中也可以是服务器1的外部存储设备,例如服务器1上配备的插接式移动硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器12还可以既包括服务器1的内部存储单元也包括外部存储设备。存储器12不仅可以用于存储安装于服务器1的应用软件及各类数据,例如数据存储程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器13在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。处理器13是所述服务器1的控制核心(Control Unit),利用各种接口和线路连接整个服务器1的各个部件,通过运行或执行存储在所述存储器12内的程序或者模块(例如执行数据存储程序等),以及调用存储在所述存储器12内的数据,以执行服务器1的各种功能和处理数据。
所述处理器13执行所述服务器1的操作系统以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个数据存储方法实施例中的步骤,例如图1所示的步骤S10、S11、S12、S13、S14、S15。
或者,所述处理器13执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如:当接收到可视化配置指令时,在所述服务器的用户界面上创建有向无环图面板;配置任务参数,生成多个任务;检测所述有向无环图面板上的触控操作;根据所述触控操作生成所述多个任务之间的依赖关系;根据所述多个任务及所述依赖关系生成工作流;显示所述工作流。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述服务器1中的执行过程。例如,所述计算机程序可以被分割成创建单元110、生成单元111、检测单元112、显示单元113、获取单元114、写入单元115、导入单元116、变更单元117、确定单元118、发送单元119及加密单元120。
总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一根箭头表示,但并不表示仅有一根总线或一种类型的总线。所述总线被设置为实现所述存储器12以及所述至少一个处理器13等之间的连接通信。
尽管未示出,所述服务器1还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与至少一个处理器13逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述服务器1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,服务器还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该服务器1与其他服务器之间建立通信连接。
可选地,该服务器1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在服务器1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,计算机设备,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。
所述服务器1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
图3仅示出了具有组件12-13,以及工作流可视化配置程序的服务器1,本领域技术人员可以理解的是,图3示出的结构并不构成对所述服务器1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
结合图1,所述服务器1中的所述存储器12存储多个指令以实现一种工作流可视化配置方法,所述处理器13可执行所述多个指令从而实现:当接收到可视化配置指令时,在所述服务器的用户界面上创建有向无环图面板;配置任务参数,生成多个任务;检测所述有向无环图面板上的触控操作;根据所述触控操作生成所述多个任务之间的依赖关系;根据所述多个任务及所述依赖关系生成工作流;显示所述工作流。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
参照图4,为本发明工作流可视化配置系统的功能模块示意图。所述工作流可视化配置系统11包括创建单元110、生成单元111、检测单元112、显示单元113、获取单元114、写入单元115、导入单元116、变更单元117、确定单元118、发送单元119及加密单元120。本发明所称的模块/单元是指一种能够被处理器13所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
在本发明的至少一个实施例中,所述工作流可视化配置系统11运行于服务器中,所述服务器中存储有能够用于面板创建的插件。
当接收到可视化配置指令时,创建单元110基于所述插件在所述服务器的用户界面上创建有向无环图面板。
在本发明的至少一个实施例中,所述插件的功能菜单包括至少一个功能选项,所述至少一个功能选项包括,但不限于:有向无环图面板选项、任务选项等。由于所述插件的功能菜单包括所述有向无环图面板选项,因此,所述创建单元110能够创建所述有向无环图面板。
在本发明的至少一个实施例中,所述可视化配置指令可以由用户触发(例如:通过预设功能按键进行触发),也可以在预设时间内自动触发,本发明不作限制。
其中,所述预设时间可以是个时间点(例如:每天早上九点),也可以是个时间段。
在本发明的至少一个实施例中,在所述服务器中没有存储能够提供面板创建的插件时,所述方法还包括:
获取单元114获取所述服务器的文件入口,进一步地,写入单元115将所述插件写入目录文件中,更进一步地,导入单元116将所述目录文件导入所述文件入口,得到嵌入在所述服务器中的插件,根据嵌入在所述服务器中的插件创建所述有向无环图面板。
其中,所述服务器可以包括工作流调度系统,本发明不作限制。
通过上述实施方式,不仅能够在未嵌入所述插件的服务器中嵌入所述插件,为所述有向无环图面板提供创建条件,还能够在所述服务器上创建所述有向无环图面板,为后续依赖关系的生成及变更提供基础。
在本发明的至少一个实施例中,所述有向无环图面板的展示示意图如图2所示,例如:所述有向无环图面面板上展示任务A、任务B、任务C、任务D,以及所述任务A、所述任务B、所述任务C与所述任务D之间的关系。
生成单元111配置任务参数,生成多个任务。
在本发明的至少一个实施例中,所述任务参数包括,但不限于:任务名、任务所在项目的名称、任务的类型、任务的命令、与任务相依赖的依赖任务、允许尝试执行任务的次数、尝试执行任务的时间间隔等。
其中,所述允许尝试执行任务的次数是指当任务执行失败时,自动执行该任务的次数,进一步地,所述允许尝试执行任务的次数可以根据实际情况进行自定义设置,本发明不作限制,例如:所述允许尝试执行任务的次数为10次。
进一步地,所述时间间隔是指任务被执行失败时的时间与任务重新被执行的时间的间隔,所述时间间隔一般以毫秒级进行设置,例如:1000ms。
在本发明的至少一个实施例中,由于所述插件的功能菜单包括任务选项,因此,所述任务参数可以在所述服务器上进行配置,进而得到所述多个任务,所述生成单元111能够直接对所述任务参数进行配置,进而生成任务,提高了生成任务的效率。
在本发明的至少一个实施例中,当所述任务参数配置结束时,所述生成单元111生成所述多个任务。
其中,所述多个任务的生成个数与所述任务名的个数相等。
检测单元112检测所述有向无环图面板上的触控操作。
在本发明的至少一个实施例中,所述触控操作包括,但不限于:点击、滑动、拖拽等,本发明不作限制。
在本发明的至少一个实施例中,所述生成单元111可以从所述触控操作中确定出初始位置及终点位置。
所述生成单元111根据所述触控操作生成所述多个任务之间的依赖关系。
在本发明的至少一个实施例中,所述依赖关系是指两个任务之间相互关联的关系。例如,任务A触发完成后,任务B才被执行,也就是说,任务A与任务B之间具有相互依赖的执行顺序。
在本发明的至少一个实施例中,所述生成单元111能够从所述触控操作中确定初始位置对应的任务及终点位置对应的任务,因此,所述生成单元111可以根据所述触控操作确定所述多个任务之间的依赖关系。
在本发明的至少一个实施例中,所述方法还包括:
(1)当接收到任务变更指令时,变更单元117从所述任务变更指令中确定第一任务,进一步地,所述变更单元117检测所述有向无环图面板上的变更操作,所述变更单元117根据该变更操作变更所述第一任务。
其中,所述任务变更指令包括:任务的增加、任务的删除等。
例如:当接收到任务变更指令为“增加任务A”,所述变更单元117从“增加任务A”中确定所述第一任务为“任务A”,进一步地,所述变更单元117检测所述有向无环图面板上的变更操作为“配置任务参数”,所述变更单元117根据配置的任务参数生成所述任务A。
通过上述方式,能够直接在所述有向无环图面板上完成所述第一任务的变更操作,而无需重新编写压缩文件再上传到所述服务器,提高了任务变更的效率。
(2)当接收到依赖关系变更指令时,所述变更单元117从所述依赖关系变更指令中确定目标依赖关系,进一步地,所述变更单元117检测所述有向无环图面板上的触控操作,所述变更单元117根据该触控操作变更所述目标依赖关系。
其中,所述依赖关系变更指令包括:依赖关系的添加、依赖关系的删除等。
通过上述方式,能够直接在所述有向无环图面板上完成所述目标依赖关系的变更操作,而无需重新编写压缩文件再上传到所述服务器,提高了依赖关系变更的效率。
在其他实施例中,所述生成单元111可以在配置任务参数时,对所述任务参数中的“与任务相依赖的依赖任务”进行配置,从而生成依赖关系。
所述生成单元111根据所述多个任务及所述依赖关系生成工作流。
在本发明的至少一个实施例中,所述工作流是指根据一系列过程规则,将任务在不同的角色(例如,操作人员、管理人员、稽核人员等不同的执行者)之间进行传递与执行,所述工作流包括所述多个任务及所述依赖关系。
在本发明的至少一个实施例中,所述生成单元111根据所述多个任务及所述依赖关系生成工作流包括:
所述生成单元111根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,所述生成单元111从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,所述生成单元111将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径,进一步地,所述生成单元111集成所述多个任务及所述依赖路径,得到所述工作流。
通过上述实施方式,能够快速生成所述工作流。
显示单元113显示所述工作流。
在本发明的至少一个实施例中,所述工作流可以显示在所述插件上,也可以显示在所述有向无环图面板上。
例如,显示在所述有向无环图面板上的工作流可以如图2所示,具体为任务A触发完成后,任务B及任务C被执行,当所述任务B及所述任务C执行完后,任务D被触发。
在本发明的至少一个实施例中,所述多个任务可以以列表的形式显示。当需要查找任务时,可以通过在所述列表中搜索,进而定位到待查找任务上,从而实现快速查找所述待查找任务。
在本发明的至少一个实施例中,在显示所述工作流之前,所述方法还包括:
加密单元120加密所述工作流,得到目标密文,当检测到所述目标密文被解密成功时,所述显示单元113显示所述工作流。
通过上述实施方式,能够避免所述工作流被篡改而影响任务的执行,提高所述工作流的安全性。
在本发明的至少一个实施例中,所述方法还包括:
(1)当检测到有光标移动至所述多个任务中的任意任务上时,以悬浮框形式显示所述任意任务的目标信息。
其中,所述目标信息包括所述任意任务所在的项目、与所述任意任务相依赖的依赖任务。
(2)当检测到任意任务被触发时,显示所述任意任务的所有信息。
在本发明的至少一个实施例中,所述方法还包括:
当检测到所述多个任务中有任务执行失败时,确定单元118将该任务确定为目标任务,进一步地,所述确定单元118确定所述目标任务的任务级别,所述生成单元111根据所述任务级别,生成告警信息,更进一步地,所述确定单元118根据所述告警信息的告警级别,确定告警形式,发送单元119以所述告警形式发送所述告警信息。
其中,所述任务级别根据任务的重要程度设定的,所述任务级别可以包括级别一、级别二、级别三等。
进一步地,所述告警形式包括:电话告警、钉钉告警、邮件告警等。
通过上述实施方式,能够根据任务的任务级别选择合适的告警形式通知相关联系人。
综上所述,本发明当接收到可视化配置指令时,创建有向无环图面板,配置任务参数,生成多个任务,检测所述有向无环图面板上的触控操作,根据所述触控操作生成所述多个任务之间的依赖关系,根据所述多个任务及所述依赖关系生成工作流,显示所述工作流,从而提高可视化工作流的配置效率。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生依据本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、移动硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态移动硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动移动硬盘、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种工作流可视化配置方法,应用于服务器中,其特征在于,所述服务器中存储有能够用于面板创建的插件,所述方法包括:
当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板;
配置任务参数,生成多个任务;
检测所述有向无环图面板上的触控操作;
根据所述触控操作生成所述多个任务之间的依赖关系;
根据所述多个任务及所述依赖关系生成工作流,包括:根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径;集成所述多个任务及所述依赖路径,得到所述工作流;
显示所述工作流;
当接收到任务变更指令时,从所述任务变更指令中确定第一任务,检测所述有向无环图面板上的变更操作,根据该变更操作变更所述第一任务。
2.如权利要求1所述的工作流可视化配置方法,其特征在于,在所述服务器中没有存储能够提供面板创建的插件时,所述方法还包括:
获取所述服务器的文件入口;
将所述插件写入目录文件中;
将所述目录文件导入所述文件入口,得到嵌入在所述服务器中的插件;
根据嵌入在所述服务器中的插件创建所述有向无环图面板。
3.如权利要求1所述的工作流可视化配置方法,其特征在于,所述方法还包括:
当接收到依赖关系变更指令时,从所述依赖关系变更指令中确定目标依赖关系,检测所述有向无环图面板上的触控操作,根据该触控操作变更所述目标依赖关系。
4. 如权利要求1所述的工作流可视化配置方法,其特征在于,所述方法还包括:
当检测到有光标移动至所述多个任务中的任意任务上时,以悬浮框形式显示所述任意任务的目标信息;及/或
当检测到任意任务被触发时,显示所述任意任务的所有信息。
5.如权利要求1所述的工作流可视化配置方法,其特征在于,所述方法还包括:
当检测到所述多个任务中有任务执行失败时,将该任务确定为目标任务;
确定所述目标任务的任务级别;
根据所述任务级别,生成告警信息;
根据所述告警信息的告警级别,确定告警形式;
以所述告警形式发送所述告警信息。
6.一种服务器,其特征在于,所述服务器包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1至5中任意一项所述的工作流可视化配置方法。
7.根据权利要求6所述的服务器,其特征在于,所述服务器为组成内容分发网络或者区块链网络的节点。
8.一种工作流可视化配置系统,运行于服务器中,其特征在于,所述服务器中存储有能够用于面板创建的插件,所述系统包括:
创建单元,用于当接收到可视化配置指令时,基于所述插件在所述服务器的用户界面上创建有向无环图面板;
生成单元,用于配置任务参数,生成多个任务;
检测单元,用于检测所述有向无环图面板上的触控操作;
所述生成单元,还用于根据所述触控操作生成所述多个任务之间的依赖关系;
所述生成单元,还用于根据所述多个任务及所述依赖关系生成工作流,包括:根据所述依赖关系确定所述多个任务间的依赖路径,包括:对于所述依赖关系中的给定依赖关系,从所述给定依赖关系中确定初始位置及终点位置,当检测到所述初始位置及所述终点位置之间的连线间没有其他任务时,将所述连线确定为所述给定依赖关系对应的任务之间的依赖路径;集成所述多个任务及所述依赖路径,得到所述工作流;
显示单元,用于显示所述工作流;
变更单元,用于当接收到任务变更指令时,从所述任务变更指令中确定第一任务,检测所述有向无环图面板上的变更操作,根据该变更操作变更所述第一任务。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有工作流可视化配置程序,所述工作流可视化配置程序可被一个或者多个处理器执行,以实现如权利要求1至5中任一项所述的工作流可视化配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911077703.3A CN110879701B (zh) | 2019-11-06 | 2019-11-06 | 工作流可视化配置方法、服务器、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911077703.3A CN110879701B (zh) | 2019-11-06 | 2019-11-06 | 工作流可视化配置方法、服务器、系统及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110879701A CN110879701A (zh) | 2020-03-13 |
CN110879701B true CN110879701B (zh) | 2023-05-12 |
Family
ID=69729020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911077703.3A Active CN110879701B (zh) | 2019-11-06 | 2019-11-06 | 工作流可视化配置方法、服务器、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110879701B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542796B (zh) * | 2020-04-22 | 2023-08-08 | 腾讯科技(深圳)有限公司 | 视频评测方法、装置、计算机设备和存储介质 |
CN113010531B (zh) * | 2021-02-05 | 2022-11-01 | 成都库珀创新科技有限公司 | 一种基于有向无环图的区块链baas系统任务调度框架 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663569A (zh) * | 2012-05-07 | 2012-09-12 | 广东优迈信息通信技术有限公司 | 一种可视化工作流引擎系统 |
US9952899B2 (en) * | 2014-10-09 | 2018-04-24 | Google Llc | Automatically generating execution sequences for workflows |
CN110310088B (zh) * | 2019-06-14 | 2023-06-20 | 平安科技(深圳)有限公司 | 工作流配置方法及相关产品 |
-
2019
- 2019-11-06 CN CN201911077703.3A patent/CN110879701B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110879701A (zh) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160103750A1 (en) | Application programming interface monitoring tool notification and escalation method and system | |
CN112015663B (zh) | 测试数据录制方法、装置、设备及介质 | |
US10175954B2 (en) | Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information | |
CN108038112A (zh) | 文件处理方法、移动终端及计算机可读存储介质 | |
CN110879701B (zh) | 工作流可视化配置方法、服务器、系统及介质 | |
US20130232481A1 (en) | Information processing apparatus and client management method | |
CN110708366A (zh) | 一种插件进程的管理方法及相关方法和相关装置 | |
US9912522B2 (en) | Automatic task tracking | |
CN112148700A (zh) | 日志数据处理方法、装置、计算机设备和存储介质 | |
US10601685B2 (en) | Visualization of cyclical patterns in metric data | |
WO2017189727A1 (en) | Techniques for monitoring version numbers of web frameworks | |
CN110244963B (zh) | 数据更新方法、装置及终端设备 | |
US10536407B1 (en) | Converting shared files to message attachments | |
CN110688073B (zh) | 数据存储方法、电子设备、系统及介质 | |
CN111245727A (zh) | 基于dht网络的消息路由方法、电子设备、代理节点及介质 | |
CN109104481B (zh) | 文件完整性检测方法、文件完整性检测装置及终端设备 | |
CN107609119B (zh) | 文件处理方法、移动终端及计算机可读存储介质 | |
CN115793911A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114357032A (zh) | 一种数据质量监控方法、装置、电子设备及存储介质 | |
CN110309062B (zh) | 用例生成方法、装置、电子设备及存储介质 | |
CN110716939B (zh) | 数据管理方法、电子设备、系统及介质 | |
CN111078550A (zh) | 软件测试方法及装置、计算机装置及存储介质 | |
CN110879743B (zh) | 基于边缘计算环境的任务剔除方法、设备、系统及介质 | |
CN116306591B (zh) | 流程表单生成方法、装置、设备及介质 | |
CN112765582B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |