CN111813391A - 工作流生成方法、装置、计算机设备及存储介质 - Google Patents
工作流生成方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111813391A CN111813391A CN202010707526.9A CN202010707526A CN111813391A CN 111813391 A CN111813391 A CN 111813391A CN 202010707526 A CN202010707526 A CN 202010707526A CN 111813391 A CN111813391 A CN 111813391A
- Authority
- CN
- China
- Prior art keywords
- task
- atomic
- workflow
- target
- tasks
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- 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/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请是关于一种工作流生成方法、装置、计算机设备及存储介质,所述方法包括:展示工作流设计界面,工作流设计界面中包括至少一个原子任务的选择控件;响应于对至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;响应于对至少两个原子任务的任务图案的连接操作,获取至少两个原子任务之间的上下级关系;获取至少两个原子任务的任务执行参数;基于至少两个原子任务之间的上下级关系,以及至少两个原子任务的任务执行参数生成目标工作流;用户可以通过可视化的设计流程自行设计出自动执行的工作流,而不需要通过开发人员通过编写程序代码进行工作流开发,节约了代码开发的时间,从而提升了工作流的应用效率。
Description
技术领域
本申请涉及终端定位领域,特别涉及一种定位信号发送方法、装置、计算机设备及存储介质。
背景技术
工作流是指业务过程的部分或整体在计算机应用环境下的自动化,并且为了实现某个业务目标,利用计算机在多个参与者之间按照某种预定规则自动传递文档、信息或者任务。
相关技术中,通常采用XML(Extensible Markup Language,可标记扩展语言)开发工作流,例如,用户将工作流的设计需求提交给开发人员,由开发人员通过计算机编程语言按照一定的语法和规范进行工作流的编写。
然而,上述方案中对于用户提出的每一个工作流需求,都需要开发人员进行代码开发,该过程需要消耗大量的开发时间,导致工作流的应用效率较低。
发明内容
本申请实施例提供了一种工作流生成方法、装置、计算机设备及存储介质,可以提升了工作流的应用效率,该技术方案如下:
一方面,提供了一种工作流生成方法,所述方法包括:
展示工作流设计界面,所述工作流设计界面中包括至少一个原子任务的选择控件;
响应于对所述至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系;
获取所述至少两个原子任务的任务执行参数;
基于所述至少两个原子任务之间的上下级关系,以及所述至少两个原子任务的任务执行参数生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
又一方面,提供了一种工作流生成方法,所述方法包括:
展示工作流设计界面,所述工作流设计界面中包含任务选择区域以及工作流设计区域;所述任务选择区域中包括至少一个原子任务的选择控件;
响应于对所述至少一个原子任务的选择控件的选择操作,在所述工作流设计区域中展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
响应于对所述至少两个原子任务的任务图案的连接操作,展示所述至少两个原子任务之间的连线,所述至少两个原子任务之间的连线指示所述至少两个原子任务之间的上下级关系;
响应于接收到设计完成操作,生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系依次自动执行的工作流。
又一方面,提供了一种工作流生成装置,所述装置包括:
设计界面展示模块,用于展示工作流设计界面,所述工作流设计界面中包括至少一个原子任务的选择控件;
任务图案展示模块,用于响应于对所述至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
任务等级获取模块,用于响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系;
执行参数获取模块,用于获取所述至少两个原子任务的任务执行参数;
工作流生成模块,用于基于所述至少两个原子任务之间的上下级关系,以及所述至少两个原子任务的任务执行参数生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
在一种可能的实现方式中,所述执行参数获取模块,包括:
参数界面展示单元,用于响应于接收到对第一目标任务的任务图案的指定操作,展示所述第一目标任务的参数设置界面;所述第一目标任务是所述至少两个原子任务中的任意一个;
执行参数接收单元,用于接收在所述参数设置界面中设置的,所述第一目标任务的任务执行参数。
在一种可能的实现方式中,所述执行参数接收单元,用于,
响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的第一访问地址;
响应于所述第一目标任务是工作流触发任务,接收在所述参数设置界面中设置的触发条件,所述触发条件时触发所述目标工作流开始执行的条件;
响应于所述第一目标任务是数据处理任务,接收在所述参数设置界面中设置的数据处理参数,所述数据处理参数是所述数据处理任务对应的处理算法的算法参数。
在一种可能的实现方式中,所述执行参数接收单元,用于响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的,所述第一访问地址的访问凭证。
在一种可能的实现方式中,所述执行参数接收单元,包括:
凭证管理接收子单元,用于响应于接收到凭证管理触发操作,展示凭证管理界面,所述凭证管理界面中包含已有访问地址对应的凭证管理选项;所述已有访问地址是已有的跨域交互任务的访问地址;
访问凭证管理子单元,用于响应于接收到对第二访问地址的凭证管理选项的管理操作,对所述第二访问地址的访问凭证进行管理;所述第二访问地址是所述已有访问地址中的任意一个;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
在一种可能的实现方式中,所述执行参数获取模块,包括:
选择控件创建单元,用于响应于所述目标工作流生成完成,在所述工作流设计界面中,创建所述第一目标任务的选择控件;
执行参数设置单元,将所述第一目标任务的任务执行参数,设置为所述第一目标任务的选择控件对应的默认参数。
在一种可能的实现方式中,所述执行参数获取模块,用于获取第二目标任务的选择控件对应的默认参数,作为所述第二目标任务的任务执行参数;
所述第二目标任务是所述至少两个原子任务中的任意一个。
在一种可能的实现方式中,所述装置还包括:
任务界面展示模块,用于响应于接收到任务管理触发操作,展示任务管理界面;所述任务管理界面中包含已有的各个原子任务的任务管理选项;
任务管理模块,用于响应于接收到对第三目标任务的任务管理选项的管理操作,对所述第三目标任务进行管理;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
在一种可能的实现方式中,所述装置还包括:
原子实例生成模块,用于响应于对所述至少一个原子任务的选择控件的选择操作,生成所述至少两个原子任务各自的原子任务实例;
所述任务等级获取模块,包括:
标识获取单元,用于响应于对所述至少两个原子任务的任务图案的连接操作,获取连接出发端对应的原子任务实例的标识,以及连接结束端对应的原子任务实例的标识;
上级数组写入单元,用于将连接出发端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的上级标识数组;
下级数组写入单元,用于将连接结束端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的下级标识数组。
在一种可能的实现方式中,所述装置还包括:
试运行模块,用于对所述目标工作流进行试运行,获取所述目标工作流的试运行结果;
异常信息展示模块,用于响应于所述试运行结果与预期运行结果不同,展示异常信息。
在一种可能的实现方式中,所述工作流设计界面是浏览器页面。
再一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述的工作流生成方法。
再一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述的工作流生成方法。
又一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的工作流生成方法。
本申请提供的技术方案可以包括以下有益效果:
在本申请实施例所示的方案中,在工作流设计界面上,将原子任务构成的工作流通过可视化的方式展示在工作流画布上,用户可以通过对原子任务对应的任务图案进行连线等操作,从而直观的进行工作流的设计,计算机设备可以根据设计过程产生的任务执行参数和执行顺序,自动生成该工作流,即用户可以通过可视化的设计流程自行设计出自动执行的工作流,而不需要通过开发人员通过编写程序代码进行工作流开发,节约了代码开发的时间,从而提升了工作流的应用效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种工作流生成系统的结构示意图;
图2是根据一示例性实施例示出的一种工作流生成方法的流程示意图;
图3是根据一示例性实施例提供的一种工作流生成方法的方法流程图;
图4是图3所示实施例涉及的一种工作流设计界面示意图;
图5是图3所示实施例涉及的一种任务图案操作控件示意图;
图6是图3所示实施例涉及的一种节点参数设置界面示意图;
图7是图3所示实施例涉及的凭证管理界面示意图;
图8是图3所示实施例涉及的任务管理界面示意图;
图9是一种工作流设计系统的架构图;
图10和图11是根据一示例性实施例提供的工作流编辑器的操作流程图;
图12是根据一示例性实施例示出的一种工作流生成过程示意图;
图13是根据一示例性实施例示出的工作流生成装置的结构方框图;
图14是根据一示例性实施例示出的一种计算机设备的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在对本申请所示的各个实施例进行说明之前,首先对本申请涉及到的几个概念进行介绍:
1)工作流
工作流(WorkFlow)就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递数据。
2)原子任务
在本申请实施例中,原子任务是指工作流涉及的多个任务中的一个。在工作流中,一个原子任务在执行完毕之前不被其它任务或事件中断。原子任务可以是一个任务,也可以是多个任务,但是其顺序不能被打乱,也不可以被切割而只执行其中的一部分,其核心特征是将整个任务视为一个整体。
3)访问凭证
在用户访问某个系统或网络地址的过程中,系统或者网络地址的管理设备需要对用户进行验证,以确定用户是否具有访问的权限,而访问凭证是用户在访问系统或网络地址时所需要上传给系统或网络地址的安全信息,常见的访问凭证有用户名、密码和证书等。
图1是根据一示例性实施例示出的一种工作流生成系统的结构示意图。该系统包括:后台服务器120以及用户终端140。
后台服务器120是一台服务器,或者包括若干台服务器,或者是一个虚拟化平台,或者是一个云计算服务中心等,本申请不做限制。
用户终端140可以是具有界面显示功能的终端设备,比如,用户终端可以是手机、平板电脑、膝上型便携计算机和台式计算机等等。用户终端140的数量不做限定。
其中,用户终端140中可以安装有客户端,该客户端可以是即时通信客户端、浏览器客户端、教育客户端等。本申请实施例不限定客户端的软件类型。
用户终端140与后台服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
在本申请实施例中,后台服务器120可以将原子任务提供给用户终端140,由用户终端140根据原子任务生成目标工作流。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与后台服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
在本申请实施例中,后台服务器120中还包括凭证存储器。该凭证存储器用于存储访问凭证。可选的,用户终端140接收到输入的访问凭证后,将该访问凭证发送至后台服务器120,存储至凭证存储器中。
在本申请实施例中,后台服务器120中还包括任务存储器。该任务存储器用于存储原子任务。可选的,该原子任务可以是预先保存在任务存储器中的,也可以是用户通过终端140创建并发送至后台服务器120的。
在本申请实施例中,后台服务器120中还包括HTTP请求转发器。该HTTP请求转发器用于将需要跨域请求转发至其他服务器。
请参考图2,其是根据一示例性实施例示出的一种工作流生成方法的流程示意图。该方法可以由计算机设备执行,该计算机设备可以是用户终端,其中,该用户终端可以是上述图1所示的实施例中的用户终端140。如图2所示,该工作流生成的流程可以包括如下步骤:
步骤21,展示工作流设计界面,该工作流设计界面中包括至少一个原子任务的选择控件。
在本申请实施例中,上述工作流设计界面是一种可视化界面,在该工作流设计界面中,工作流的设计过程可以以图案的形式直观的展现给设计者。
在一种可能的实现方式中,上述工作流设计界面是浏览器界面。
用户在可以打开浏览器界面的任意类型系统的终端中,通过上述工作流设计界面进行工作流的设计。
在另一种可能的实现方式中,上述工作流设计界面可以是应用程序界面。
步骤22,响应于对该至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案,该至少两个原子任务是所述选择操作对应的原子任务。
在一种可能的实现方式中,对该至少一个原子任务的选择控件的选择操作,可以是鼠标拖动操作。用户对该原子任务的选择控件进行拖动,工作流设计界面响应于用户对该选择控件的拖动地点,生成与该原子任务对应的原子任务图案。
步骤23,响应于对该至少两个原子任务的任务图案的连接操作,获取该至少两个原子任务之间的上下级关系。
在本申请实施例中,响应于对该两个原子任务图案的连接操作,获取两个原子任务图案连接的顺序,将连接操作起始端的原子任务图案对应的原子任务作为上级原子任务,将连接操作终止端的原子任务图案对应的原子任务作为下级原子任务。
在一种可能的实现方式中,一个原子任务可能有一个或多个上级原子任务,一个原子任务也可能有一个或多个下级原子任务。
步骤24,获取该至少两个原子任务的任务执行参数。
在本申请实施例中,任务执行参数为原子任务执行所需要的执行参数,任务执行设备(比如终端)根据原子任务的任务执行参数,执行原子任务。
步骤25,基于该至少两个原子任务之间的上下级关系,以及该至少两个原子任务的任务执行参数生成目标工作流,该目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
在本申请实施例中,目标工作流是上述至少两个原子任务所构成的。目标工作流中包含了上述至少两个原子任务,以及该至少两个原子任务所对应的上下级关系。其中,该目标工作流的运行方式为,按照该至少两个原子任务对应的上下级关系,依序执行该至少两个原子任务。
综上所述,在本申请实施例所示的方案中,在工作流设计界面上,将原子任务构成的工作流通过可视化的方式展示在工作流画布上,用户可以通过对原子任务对应的任务图案进行连线等操作,从而直观的进行工作流的设计,计算机设备可以根据设计过程产生的任务执行参数和执行顺序,自动生成该工作流,即用户可以通过可视化的设计流程自行设计出自动执行的工作流,而不需要通过开发人员通过编写程序代码进行工作流开发,节约了代码开发的时间,从而提升了工作流的应用效率。
请参考图3,其是根据一示例性实施例提供的一种工作流生成方法的方法流程图。该方法可以由计算机设备执行,该计算机设备可以是用户终端,其中,该用户终端可以是上述图1所示的实施例中的用户终端140。如图3所示,该工作流生成方法可以包括如下步骤:
步骤301,展示工作流设计界面;该工作流设计界面中包括至少一个原子任务的选择控件。
其中,上述工作流设计界面是一种可视化界面,在该工作流设计界面中,工作流的设计过程以图案的形式直观的展现给设计者。
在一种可能的实现方式中,该工作流设计界面中包含任务选择区域以及工作流设计区域;该任务选择区域中包括至少一个原子任务的选择控件。
比如,请参考图4,其示出了本申请实施例涉及的一种工作流设计界面示意图。如图4所示,图4左边是原子任务列表41(即上述任务选择区域),该原子任务列表中包含至少一个原子任务的选择控件;图4中间是画布界面42,即上述工作流设计区域,该画布界面用于显示原子任务对应的任务图案,用户可以在画布界面上对原子任务对应的任务图案进行指定操作;图4右边是画布界面的区域选择界面43,用户可以在拖动区域选择界面中的方框,选择需要进行操作的画布界面区域。
在一种可能的实现方式中,该工作流设计界面至少包括画布、工具栏、原子任务列表等子界面。
画布即为用于工作流设计过程时,展示工作流对应的可视化图案的子界面;工具栏为用于展示工作流设计过程中所需要用到的快捷功能控件的子界面;原子任务栏即为展示可使用的原子任务的选择控件的子界面。
在一种可能的实现方式中,在展示工作流设计界面之前,用户终端对工作流设计界面进行初始化。即在展示工作流设计界面之前,用户终端需要对上述画布、工具栏、原子任务列表等子界面进行初始化。
步骤302,响应于对该至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;该至少两个原子任务是该选择操作对应的原子任务。
在一种可能的实现方式中,该工作流设计界面包含原子任务选择界面,该原子任务选择界面中包括至少一个原子任务选择控件,该原子任务选择控件中显示有原子任务对应的名称和类型信息。
在一种可能的实现方式中,响应于对该原子任务的选择控件的指定操作,在该工作流设计界面上展示该原子任务的选择控件的详细信息。
在一种可能的实现方式中,响应于对该原子任务的选择控件的指定操作,在该工作流设计界面上展示原子任务信息界面,该原子任务信息界面上记载了该原子任务的选择控件对应的原子任务的详细信息。
在一种可能的实现方式中,对原子任务的选择控件的选择操作,可以是对多个原子任务的选择控件的选择操作,也可以是对一个原子任务的选择控件的多次选择操作。
即用户可以对多个原子任务的选择控件进行操作,从而在工作流设计界面中展示出该多个原子任务的选择控件分别对应的原子任务的任务图案;用户也可以对一个原子任务的选择控件进行多次操作,从而在工作流设计界面中,展示出多个相同的原子任务对应的任务图案。
在一种可能的实现方式中,用户终端根据原子任务的类型信息显示该原子任务的任务图案。
该原子任务的类型信息可以包括判断类任务,执行类任务,触发类任务等。
例如,响应于用户对判断类任务的一次选择操作,在该工作流设计界面展示一个棱形的原子任务图案;响应于用户对执行类任务的一次选择操作,在该工作流设计界面展示矩形的原子任务图案;响应于用户对触发类任务的一次选择操作,在该工作流设计界面展示圆形的原子任务图案。
在一种可能的实现方式中,该响应于对该至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案,包括:
响应于对该至少一个原子任务的选择控件的拖动操作,在该工作流设计界面上展示该选择控件对应的任务图案。
即用户对原子任务的选择控件的操作为拖动操作时,用户终端在用户对该原子任务的选择控件的拖动的终点处展示该选择控件对应的任务图案。
在一种可能的实现方式中,响应于对该至少一个原子任务的选择控件的拖动操作,在该选择控件的拖动过程中的某一时刻所处的拖动地点,实时显示该选择控件对应的任务图案。
即用户对拖动原子任务的选择控件时,工作流设计界可以随着用户拖动地点的变化,实时改变该原子任务的选择控件对应的图案的位置。
在一种可能的实现方式中,响应于对该至少一个原子任务的选择控件的拖动操作,在该工作流设计界面上展示该选择控件对应的任务图案,包括:
响应于对该至少一个原子任务的选择控件的拖动终点位于画布界面,在该画布界面的拖动终点上展示该选择控件对应的任务图案。
用户终端对该至少一个原子任务的选择控件的拖动操作范围进行判断,如果对该至少一个原子任务的选择控件的拖动操作范围位于画布界面的范围之外,则用户的拖动操作可能出现了错误,此时拖动操作可能出现了错误或偏差,则不在画布界面上显示该原子任务对应的任务图案。
步骤303,响应于对该至少两个原子任务的任务图案的连接操作,获取该至少两个原子任务之间的上下级关系。
在本申请实施例中,响应于对该两个原子任务图案的连接操作,用户终端获取两个原子任务图案连接的顺序,将连接操作起始端的原子任务图案对应的原子任务作为上级原子任务,将连接操作终止端的原子任务图案对应的原子任务作为下级原子任务。
在一种可能的实现方式中,某一原子任务的上级可以是多个原子任务,即该多个原子任务都完成时,该原子任务才会被触发执行;某一原子任务的下级也可以是多个原子任务,即该原子任务完成之后,同时触发执行多个下级原子任务。
在一种可能的实现方式中,响应于对该至少一个原子任务的选择控件的选择操作,用户终端生成该至少两个原子任务各自的原子任务实例;
上述响应于对该至少两个原子任务的任务图案的连接操作,获取该至少两个原子任务之间的上下级关系,包括:
响应于对该至少两个原子任务的任务图案的连接操作,获取连接出发端对应的原子任务实例的标识,以及连接结束端对应的原子任务实例的标识;
将连接出发端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的上级标识数组。
在本申请实施例中,原子任务实例为原子任务对应的实例数据。在一种可能的实现方式中,响应于对该至少第一原子任务的选择控件的选择操作,终端通过HTTP请求从后台服务器的任务存储器中获取该原子任务对应的任务详情,将其初始化为原子任务实例,并且得到该原子任务实例的ID标识,空的上级原子任务实例数组ID,空的下级原子任务实例数组ID等。
步骤304,获取该至少两个原子任务的任务执行参数。
在一种可能的实现方式中,该获取该至少两个原子任务的任务执行参数,包括:
响应于接收到对第一目标任务的任务图案的指定操作,展示该第一目标任务的参数设置界面;该第一目标任务是该至少两个原子任务中的任意一个;
接收在该参数设置界面中设置的,该第一目标任务的任务执行参数。
在该工作流设计界面中,用户可以对至少两个原子任务中的任意一个原子任务对应的任务图案进行指定操作,终端响应于该操作,在工作流设计界面展示该原子任务对应的参数设置界面,用户在该参数设置界面设置该原子任务对应的任务执行参数。
在一种可能的实现方式中,用户对至少两个原子任务中的任意一个原子任务对应的任务图案进行制定操作,终端响应于该操作,在工作流设计界面展示该任务图案对应的操作控件。请参考图5,其示出了本申请实施例涉及的一种任务图案操作控件示意图。如图5所示,在对至少两个原子任务中的任意一个原子任务对应的任务图案51进行指定操作时,在工作流设计界面中展示该原子任务的操作控件52,该操作控件52可以包括编辑、复制和删除等。
在一种可能的实现方式中,用户对该工作流设计界面展示的该原子任务的操作控件中的编辑控件进行指定操作时,在工作流设计界面中展示原子任务的节点参数设置界面。请参考图6,其示出了本申请实施例涉及的一种节点参数设置界面示意图。如图6所示,图6右边展示了节点参数设置界面61,在节点参数设置界面61上,包括访问凭证选择控件、URL输入控件、请求方法选择控件、请求超时输入控件以及请求头输入控件。用户对URL输入控件进行输入操作,可以设置该原子任务执行时访问的URL地址;用户对访问凭证选择控件进行选择操作时,在节点参数设计界面上展示凭证选择界面,该凭证选择界面中至少包含一个访问凭证选择控件,响应于对该访问凭证选择控件的选择操作,可以将该选择控件对应的访问凭证确定为该原子任务对应的访问凭证。
在一种可能的实现方式中,该节点参数设置界面中有重置控件,响应于对该重置控件的操作,该原子任务的参数初始化为默认的原子任务参数。
在一种可能的实现方式中,接收在该参数设置界面中的,该第一目标任务的任务执行参数,包括:
响应于所述第一目标任务是跨域交互任务,接收在该参数设置界面中设置的第一访问地址。
其中,跨域交互任务是指需要跨服务器进行交互的任务,比如,从其他网络域的服务器中请求数据,向其他网络域的服务器发送数据(比如发送邮件),向其他网络域的数据库中写入/修改数据等等,都属于跨域交互任务。
当该第一目标任务是跨域交互任务,该第一目标任务无法在该终端与对应的后台服务器中执行,需要对其他服务器进行访问,因此需要用户在参数设置界面设置第一访问地址,而后终端执行该第一目标任务时,可以根据设置的该第一访问地址访问对应的服务器,得到该第一目标任务的执行结果。
在一种可能的实现方式中,响应于该第一目标任务是跨域交互任务,接收在该参数设置界面中设置的,该第一访问地址的访问凭证。在跨域交互任务的执行过程中,访问其他服务器的过程中需要进行鉴权,而在本申请实施例中,可以将该第一访问地址的访问凭证预先保存到后台服务器中,该第一目标任务是跨域交互任务时,在该第一目标任务发送至后台服务器进行后台转发时,直接从后台服务器获取与需要转发的第一访问地址对应访问凭证。
在一种可能的实现方式中,响应于接收到凭证管理触发操作,展示凭证管理界面,该凭证管理界面中包含已有访问地址对应的凭证管理选项;该已有访问地址是已有的跨域交互任务的访问地址;
响应于接收到对第二访问地址的凭证管理选项的管理操作,对该第二访问地址的访问凭证进行管理;该第二访问地址是该已有访问地址中的任意一个;
其中,该管理操作包括查看、编辑以及删除中的至少一项。
在本申请实施例中,用户通过凭证管理界面统一管理访问凭证。请参考图7,其示出了本申请实施例涉及的凭证管理界面示意图。在接收到凭证管理触发操作之后,终端向后台服务器中的凭证存储器发送HTTP请求,获取凭证存储器中存储的所有访问地址以及与所有访问地址对应的访问凭证,终端根据该访问地址以及与访问地址对应的访问凭证,在凭证管理界面中生成该所有访问地址对应的访问凭证管理选项,用户对该访问凭证操作的操作控件71进行操作,可以实现对该访问凭证的查看、编辑或删除功能。
在一种可能的实现方式中,该管理操作还包括创建访问凭证。用户通过凭证管理界面的指定操作创建空的访问凭证,再通过访问凭证管理界面对该新的访问凭证进行编辑管理,从而实现访问凭证的创建。
在一种可能的实现方式中,响应于该第一目标任务是工作流触发任务,接收在该参数设置界面中设置的触发条件,该触发条件是触发该目标工作流开始执行的条件。
工作流触发任务即为当终端检测到触发条件完成后,该工作流触发任务被触发执行。例如触发条件为“早上六点”时,终端检测到时间为早上六点时,该工作流触发任务被触发,终端开始执行此任务。
在一种可能的实现方式中,响应于该第一目标任务是数据处理任务,接收在该参数设置界面中设置的数据处理参数,该数据处理参数是该数据处理任务对应的处理算法的算法参数。
当该第一目标任务是数据处理任务时,用户在该参数设置界面对该第一目标任务对应的数据处理参数进行设置,该数据处理参数可以是数据处理任务中的算法参数,该第一目标任务执行时,可以通过该算法参数对应的算法对数据进行处理。
在一种可能的实现方式中,响应于该目标工作流生成完成,在该工作流设计界面中,创建该第一目标任务的选择控件;
将该第一目标任务的任务执行参数,设置为该第一目标任务的选择控件对应的默认参数。
当目标工作流生成完成之后,即工作流中的该第一目标任务已经生成完成,终端自动读取工作流中的该第一目标任务的数据,并保存至后台服务器中的任务存储器中。用户在工作流设计过程中,一个原子任务往往会在多个工作流的设计过程中重复使用,因此在工作流完成之后,自动将工作流的原子任务保存至后台服务器中,当用户在之后的工作流设计过程中需要用到该原子任务时,可以直接从后台服务器的任务存储器中读取已经创建好的原子任务,提高了工作流的设计效率。
在一种可能的实现方式中,用户对原子任务的编辑操作完成之后,在该工作流设计界面中,创建编辑操作完成之后的原子任务对应的选择控件。
即用户可以通过对原有原子任务的编辑操作,创建新的原子任务。新的原子任务可以是在原有原子任务的数据和选择控件上覆盖产生的,也可以是在保留原有原子任务数据和选择控件的基础上,根据用户的操作创建新的原子任务的数据和选择控件而产生的。
在一种可能的实现方式中,获取第二目标任务的选择控件对应的默认参数,作为该第二目标任务的任务执行参数;
该第二目标任务是该至少两个原子任务中的任意一个。
在本申请实施例的一种可能的实现方式中,该默认参数存储在后台服务器中的任务存储器中,响应于对原子任务的选择控件的选择操作,用户终端向后台服务器发送HTTP请求,获取与该原子任务对应的默认参数。
用户在工作流的创建过程中,可以直接获取他人已经创建好的原子任务,即第二目标任务。该原子任务可以是浏览器中预先设置的常用原子任务模板,也可以是用户通过下载等方式获取的他人创建好的原子任务,本申请不予限制。
在一种可能的实现方式中,响应于接收到任务管理触发操作,展示任务管理界面;该任务管理界面中包含已有的各个原子任务的任务管理选项;
响应于接收到对第三目标任务的任务管理选项的管理操作,对该第三目标任务进行管理;
其中,该管理操作包括查看、编辑以及删除中的至少一项。
用户在工作流的创建过程中,可以通过操作呼出任务管理界面,该任务管理界面中包含对已有的各个原子任务的任务管理选项,该任务管理选项可以包括查看、编辑以及删除中的至少一项,也就是说用户可以通过该任务管理界面,对已有的各个原子任务进行查看、编辑以及删除操作。请参考图8,其示出了本申请实施例涉及的任务管理界面示意图。如图8所示,该任务管理界面中展示了后台服务器的任务存储器中存储的原子任务,并展示了该原子任务的名称、模板类型、说明和创建人等信息,用户可以通过该任务管理界面中显示的任意原子任务的操作控件81,对该原子任务进行查看、编辑或删除操作。
在一种可能的实现方式中,用户除了直接获取他人已经创建好的原子任务,也通过任务管理界面直接对后台服务器中预先设置的原子任务模板进行编辑操作,从而获取新的原子任务模板。
另一种可能的实现方式中,任务管理界面除了该查看、编辑以及删除操作之外,还可以进行创建操作,如图8所示,用户可以在任务管理界面,直接创建新的原子任务,当用户执行了创建原子任务的操作时,该任务管理界面中展示出原子任务生成界面,用户在该原子任务生成界面进行输入或选择操作,生成新的原子任务。
步骤305,基于该至少两个原子任务之间的上下级关系,以及该至少两个原子任务的任务执行参数生成目标工作流;该目标工作流是该至少两个原子任务基于该上下级关系,依次按照各自的任务执行参数自动执行的工作流。
在本申请实施例中,目标工作流是基于至少两个原子任务的任务执行参数以及上下级关系生成的,即目标工作流的执行过程是至少两个原子任务按照上下级关系对应的运行方式,依序执行对应的原子任务的过程。并且在本申请实施例中,该目标工作流是自动运行的,即工作流中的原子任务执行过程以及原子任务之间数据的传递都是由计算机设备自动执行的。
在一种可能的实现方式中,该自动执行的工作流中可以包含人工的触发操作。例如,工作流中的某个原子任务的执行,可以增加一个需要人工确认的步骤,又或者是,工作流的触发条件,可以是用户点击某一个预设按键,本申请对此不予限制。
步骤306,对该目标工作流进行试运行,获取该目标工作流的试运行结果。
响应于该试运行结果与预期运行结果不同,展示异常信息。
在工作流创建完成之后,需要对该目标工作流进行试运行,以保证该目标工作流的创建无误。
在一种可能的实现方式中,工作流试运行中任意原子任务运行发生预期之外的错误,则将该发生错误的原子任务信息在工作流设计界面上展示,该原子任务信息包括原子任务的名称信息或者原子任务执行过程中的错误编号。
在一种可能的实现方式中,工作流试运行中,工作流中出现了原子任务运行之外的错误,例如上级原子任务信息传递给下级原子任务信息的过程中发生了预期之外的错误,此时终端将该错误信息或错误位置在工作流设计界面上显示的工作流图案中展示出来。
另一种可能的实现方式中,工作流试运行成功,则工作流创建无误,此时终端可以自动将该工作流保存至后台服务器中,后续用户需要对该工作流进行修改或编辑时,无需重新创建一个相同工作流程,而是直接从后台服务器中读取该工作流对应的数据,提高了工作流的设计效率。
综上所述,在本申请实施例所示的方案中,在工作流设计界面上,将原子任务构成的工作流通过可视化的方式展示在工作流画布上,用户可以通过对原子任务对应的任务图案进行连线等操作,从而直观的进行工作流的设计,计算机设备可以根据设计过程产生的任务执行参数和执行顺序,自动生成该工作流,即用户可以通过可视化的设计流程自行设计出自动执行的工作流,而不需要通过开发人员通过编写程序代码进行工作流开发,节约了代码开发的时间,从而提升了工作流的应用效率。
请参考图9,其示出了一种工作流设计系统的架构图。如图9所示,其工作流设计系统分为前段系统和后台服务器,后台服务器中主要包括可服用凭证存储器、可复用任务存储器、HTTP请求转发器和工作流存储器等。
如图9所示,在工作流的设计过程中,首先自动化工作流管理器91可以从后台服务器中的工作流存储器92中提取预先保存在后台服务器中的模板工作流,用户可以在模板工作流的基础上进行修改重建,创建全新的工作流。
在设计自动化工作流过程中,前端系统可以从后台服务器的可复用任务存储器93中调用若干可复用的任务进行工作流的设计,用户可以直接使用该若干可复用的任务放入工作流直接运转,也可以通过对该若干可复用的任务中的全部或部分进行编辑,终端中的工作流原子任务管理器94以该若干可复用的任务为模板构建出新的可复用的原子任务。新的原子任务存储至可复用任务存储器93。终端中的鉴权凭证管理器95可以根据用户输入的信息,创建可复用的鉴权凭证,并将可复用的鉴权凭证存储至服务器端的可复用凭证存储器96。
在工作流的试运行过程中,当前端系统判断其中存在某一原子任务存在跨域HTTP请求任务或鉴权任务时,则需要将位于前端的原子任务发送至后台服务器,由后台服务器通过HTTP请求转发器97转发至其他服务器。在HTTP请求转发过程中,访问其他服务器需要进行鉴权操作,即其他服务器需要确认该任务是否具有访问权限,因此,在HTTP请求转发过程中,需要在后台服务器中调取与该原子任务对应的访问凭证。该原子任务通过访问凭证访问其他服务器后,得到运行结果再通过后台服务器的HTTP请求转发器发送回前端系统。
在工作流的试运行结束时,若工作流的运行结果不符合预期,则代表该工作流的设计出现了某些错误或者故障,因此系统判定该工作流不符合要求,需要用户重新对其进行设计或调整;若工作流的运行结果符合预期,则说明该工作流暂定为能正常运行,系统将其自动保存至工作流存储器92中,以便用户未来对其调用。
从用户操作的界面显示角度来说,上述实施例中的工作流生成方法可以显示如下:
展示工作流设计界面,该工作流设计界面中包含任务选择区域以及工作流设计区域;该任务选择区域中包括至少一个原子任务的选择控件;响应于对该至少一个原子任务的选择控件的选择操作,在该工作流设计区域中展示至少两个原子任务的任务图案;该至少两个原子任务是该选择操作对应的原子任务;响应于对该至少两个原子任务的任务图案的连接操作,展示该至少两个原子任务之间的连线,该至少两个原子任务之间的连线指示该至少两个原子任务之间的上下级关系;响应于接收到设计完成操作,生成目标工作流;该目标工作流是该至少两个原子任务基于该上下级关系依次自动执行的工作流。
请参考图10和图11,其是根据一示例性实施例提供的一种工作流编辑器的操作流程图。如图10和图11所示,在用户开始进行工作流设计之前,需要对该工作流进行初始化步骤1001。
在一种可能的实现方式中,该工作流设计界面是浏览器页面。
其中,该初始化步骤1001包括主工作流Cancas画布渲染、祝工作流画布浏览器渲染、工作流操作工具栏渲染、载入原子任务列表、原子任务库面板渲染以及构建空包剧本数据结构等。
用户可以使用Canvas(画布)技术初始化画布界面。即在网页中直接创建Canvas标签,并在标签中定义画布的高度和宽度等基础属性,网页根据该基础属性自动生成初始化画布界面。
或者,该画布可以是预先保存至后台服务器中的画布模板,响应于用户打开工作流设计界面,终端向后台服务器发送请求,获取后台服务器中预先保存的画布模板,并将该画布模板加载为初始化画布界面。
在一种可能的实现方式中,响应于用户打开工作流设计界面,终端向后台服务器发送HTTP请求,获取后台服务器的原子任务存储器中的原子任务列表;根据该原子任务列表,终端初始化原子任务界面。
在初始化过程中,终端通过HTTP请求服务器的原子任务存储器,获取原子任务列表并使用该数据渲染原子任务库的文档对象模型(HTLM DOM),并对原子任务库DOM绑定鼠标事件监控器,用于监控用户拖拽事件;
终端处理器在存储器中构造空白的自动化工作流数据结构,该数据结构中包括工作流名称、工作流描述、启用状态与空的原子任务实例数组对应的任务栈。
步骤1002,原子任务实例创建。在初始化完成之后,用户可以对该工作流设计界面进行相应的操作。
在一种可能的实现方式中,用户通过鼠标拖拽原子任务库面板中的原子任务,用户终端通过鼠标事件监控器监控到用户拖拽原子任务选择控件事件发生之后,终端继续对用户的行为进行监控,当用户的鼠标拖动坐标位于画布界面之中时,则渲染原子任务拖拽跟随元素,即在工作流画布界面上生成用户所拖动的原子任务对应的任务图案。
若用户松开鼠标停止拖拽,则鼠标事件监控器获取停止拖拽时的坐标,并判断该坐标点是否处于工作区画布区域,如果检测到用户对该原子任务选择控件的拖拽终点坐标不位于画布界面中时,终端判定用户的拖拽操作取消,此时终端取消原子任务拖拽操作并清理跟随元素,如果确定拽终点坐标位于画布界面中,则终端通过HTTP请求从后台服务器的原子任务存储器中拉去该原子任务的任务详情,将其初始化为原子任务实例数据,并增加该原子任务实例数据对应的ID、空的上级原子任务实例ID数组、空的下级原子任务实例ID数组,并将其初始化生成的原子任务实例数据推入步骤1001所创建的任务栈中。进一步的,终端根据用户操作判断是否需要添加其他原子任务,若是,则继续通过鼠标事件监控器监控到用户拖拽原子任务选择控件事件,否则进入后续步骤1003。
步骤1003,原子任务连线。如图11所示,在原子任务实例创建完成之后,即该原子任务实例对应的原子任务图案也显示在画布界面之中,用户可以对其进行连线操作,从而确定生成的至少两个原子任务的上下级顺序。在本申请实施例中,工作流的原子任务间具有上下级顺序,工作流的正常运行需要根据原子任务的上下级顺序,依序进行数据传递。
在一种可能的实现方式中,当用户判断原子任务间是否需要创建连线,并在判断出需要创建连线时,进行原子任务连线操作,比如,用户点击画布中的原子任务实例对应的任务图案,在该任务图案上显示对应的连线操作按钮,用户拖拽该连线操作按钮至下级原子任务实例对应的任务图案,创建两级之间的连线。在连线操作的执行过程中,终端响应于该连线操作,获取连线出发端对应原子任务实例的ID与连线结束端对应原子任务实例的ID,并将连线出发端对应原子任务实例的ID写入连线结束端对应原子任务实例的上级ID数组;将连线结束端对应原子任务实例的ID写入连线结束端对应原子任务实例的下级ID数组得到所述工作流。
步骤1004,原子任务编辑。在原子任务创建完成后,用户可以通过对画布中的任务图案进行指定操作,对该原子任务的属性进行编辑。
在一种可能的实现方式中,用户判断是否需要编辑原子任务,在判断出需要编辑原子任务时,用户对画布中的任务图案进行指定操作,比如,用户双击画布中的原子任务实例,以打开原子任务编辑器,终端响应于用户的指定操作,在工作流设计界面展示如图6所示的节点参数设置界面,用户可以通过该节点参数设置界面,对该任务图案对应的原子任务进行编辑操作并保存。
步骤1005,工作流试运行。当用户的工作流设计完成之后,可以对该工作流进行试运行,以测试剧本,即确定该工作流的设计是否存在错误。当该工作流试运行时,首先通过步骤1003中创建的原子任务实例之间对应的上下级关系,判定原子任务之间的运行以及数据传输顺序;按顺序依次运行原子任务,并将每个原子任务运行产生的结果数据传递给下级原子任务实例;
在一种可能的实现方式中,当前运行的原子任务需要发起跨域转发或对操作进行授权,将原子任务实例数据通过HTTP发送至后台服务器进行授权或跨域转发;当后台服务器运行该原子任务结束之后,将结果数据返回给前端系统继续运行。
在一种可能的实现方式中,工作流中的原子任务,可以选择获取任意上级原子任务运行所产生的数据,即该原子任务可以获取一个或多个不同上级原子任务所产生的数据,并通过获取的数据运行该原子任务。
在一种可能的实现方式中,该原子任务可以通过在节点参数设置界面中,通过规定的语法引用上级原子任务实例所产生的数据。
在测试剧本时,终端判断剧本测试是否通过,并在剧本测试未通过时,进行剧本异常修正。
在一种可能的实现方式中,当某个原子任务运行发生错误时,即停止工作流的运行,并将错误信息显示在用户界面中供排障使用。
在一种可能的实现方式中,当所有原子任务实例均运行成功时,检查运行结果,若运行结果不符合预期,则提示用户核查每个原子任务属性是否设置正确,用户对每个原子任务属性进行调整之后,重新进行试运行操作。
当所有原子任务实例均运行成功时,运行结果符合预期时保存剧本,将该工作流自动保存至后台服务器中的工作流存储器中,以供重复使用。
在一种可能的实现方式中,当所有原子任务实例均运行成功时,运行结果符合预期时,在工作流界面上显示工作流信息完善界面,用户在工作流信息完善界面可以对该工作流的命名或描述信息等进行操作,用户点击保存后,该工作流自动保存至后台服务器的工作流存储器中,以供后续常态化自动运行。
通过本申请上述实施例所示的方案,用户可以自行设计需要的工作流,从而极大地简化了许多的日常工作流程,例如:
以漏洞通报处置流程为例,原漏洞通报处置流程如下:
S1,人工手动定期使用漏洞扫描工具扫描资产漏洞情况;
S2,发现资产漏洞后进入资产管理系统,逐个资产查询相关资产负责人;
S3,使用消息通知工具手动依次通知各个漏洞资产负责人;
S4,创建相关缺陷需求单给每个漏洞资产负责人;
S5,人工手动定期复查上次发现的漏洞资产,如发现漏洞仍未修复,重复步骤S2,直至所有漏洞修复完成。
根据资产规模,该流程执行一遍的时间将随着资产规模的变大指数型上升,极大地耗费人力效率十分低下。此外,该工作流程几乎每一步都需要专业人员进行操作,成本较高,且人工介入的操作也易发生错误。
使用本申请上述各个实施例所示的方案,自行设计自动执行的工作流来进行漏洞通报处置的过程如下:
S1,在原子任务管理器中分别创建定时任务、漏洞扫描任务、资产负责人查询任务、缺陷需求单创建任务;
S2,在工作流管理器的可视化工作流设计工具中,通过拖拽S1中所建任务设计工作流并保存;S2中所建工作流会在创建完成后,在定时任务指定的时间运行,发现漏洞资产后将自动查询相关负责人,并创建相关缺陷需求,最后发送告警信息给资产负责人。
基于本申请上述各个实施例设计的自动化工作流系统,执行完相同流程最快只需要几秒钟,资产规模上升对整体流程的执行效率影响较小,可以很高效快速地完成指定工作流。此外,只有在原子任务创建的过程中才需要专业人员进行操作,在简单易用的可视化工作流设计器的加持下,之后的工作流设计可由普通人员进行操作,之后的处置流程更是由机器自动化执行,极大地节省人力的同时也减少了因人工介入而产生的错误。
请参考图12,其示出了本申请一示例性实施例示出的一种工作流生成过程示意图。如图12所示,该方案的执行过程如下:
1201,响应于用户打开工作流设计界面的操作,终端向后台服务器发送请求,获取存储于后台服务器中原子任务存储器的原子任务列表。
1202,根据获取的该原子任务列表,在工作流设计界面构建原子任务界面。
1203,响应于用户对原子任务界面中原子控件的拖拽操作,在工作流设计界面上展示与该原子控件对应的原子图案。
1203a,响应于用户对原子图案的指定操作,在工作流设计界面上展示任务管理界面,用户在任务管理界面进行输入操作,生成新的原子任务,并存储至后台服务器的原子任务存储器中。
1203b,响应于用户对工作流设计界面的指定操作,在工作流设计界面上展示凭证管理界面,用户在凭证管理界面进行输入操作,生成新的访问凭证,并存储至后台服务器中的凭证存储器中。
1204,响应于用户的连线操作,在工作流设计界面上对原子图案进行连线显示,并在终端存储器中,将原子图案按照连线对应的顺序进行上下级排序。
1205,响应于用户对工作流设计界面中测试控件的指定操作,对设计完成的工作流进行测试运行。
1206,当工作流运行过程中,某一原子任务运行需要对访问除后台服务器外的其他服务器,将该原子任务发送至后台服务器的跨域转发器,该跨域转发器获取该原子任务对应的访问凭证,将该原子任务与其对应的访问凭证发送至其他服务器,其他服务器处理后将处理结果转回后台服务器,跨域转发器再将该运行结果发送至终端。
1207,工作流测试运行完成后,在工作流显示界面上显示运行结果。
1208a,当工作流测试运行失败时,则提示用户重新设计工作流。
1208b,当工作流测试运行成功时,将该工作流保存至后台服务器的工作流存储器中。
图13是根据一示例性实施例示出的一种工作流生成装置的结构方框图。该工作流生成装置可以实现图2或图3所示实施例提供的方法中的全部或者部分步骤。该工作流生成装置可以包括:
设计界面展示模块1301,用于展示工作流设计界面,所述工作流设计界面中包括至少一个原子任务的选择控件;
任务图案展示模块1302,用于响应于对所述至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
任务等级获取模块1303,用于响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系;
执行参数获取模块1304,用于获取所述至少两个原子任务的任务执行参数;
工作流生成模块1305,用于基于所述至少两个原子任务之间的上下级关系,以及所述至少两个原子任务的任务执行参数生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
在一种可能的实现方式中,所述执行参数获取模块1304,包括:
参数界面展示单元,用于响应于接收到对第一目标任务的任务图案的指定操作,展示所述第一目标任务的参数设置界面;所述第一目标任务是所述至少两个原子任务中的任意一个;
执行参数接收单元,用于接收在所述参数设置界面中设置的,所述第一目标任务的任务执行参数。
在一种可能的实现方式中,所述执行参数接收单元,用于,
响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的第一访问地址;
响应于所述第一目标任务是工作流触发任务,接收在所述参数设置界面中设置的触发条件,所述触发条件时触发所述目标工作流开始执行的条件;
响应于所述第一目标任务是数据处理任务,接收在所述参数设置界面中设置的数据处理参数,所述数据处理参数是所述数据处理任务对应的处理算法的算法参数。
在一种可能的实现方式中,所述执行参数接收单元,用于响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的,所述第一访问地址的访问凭证。
在一种可能的实现方式中,所述执行参数接收单元,包括:
凭证管理接收子单元,用于响应于接收到凭证管理触发操作,展示凭证管理界面,所述凭证管理界面中包含已有访问地址对应的凭证管理选项;所述已有访问地址是已有的跨域交互任务的访问地址;
访问凭证管理子单元,用于响应于接收到对第二访问地址的凭证管理选项的管理操作,对所述第二访问地址的访问凭证进行管理;所述第二访问地址是所述已有访问地址中的任意一个;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
在一种可能的实现方式中,所述执行参数获取模块1304,包括:
选择控件创建单元,用于响应于所述目标工作流生成完成,在所述工作流设计界面中,创建所述第一目标任务的选择控件;
执行参数设置单元,将所述第一目标任务的任务执行参数,设置为所述第一目标任务的选择控件对应的默认参数。
在一种可能的实现方式中,所述执行参数获取模块1304,用于获取第二目标任务的选择控件对应的默认参数,作为所述第二目标任务的任务执行参数;
所述第二目标任务是所述至少两个原子任务中的任意一个。
在一种可能的实现方式中,所述装置还包括:
任务界面展示模块,用于响应于接收到任务管理触发操作,展示任务管理界面;所述任务管理界面中包含已有的各个原子任务的任务管理选项;
任务管理模块,用于响应于接收到对第三目标任务的任务管理选项的管理操作,对所述第三目标任务进行管理;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
在一种可能的实现方式中,所述装置还包括:
原子实例生成模块,用于响应于对所述至少一个原子任务的选择控件的选择操作,生成所述至少两个原子任务各自的原子任务实例;
所述任务等级获取模块1303,包括:
标识获取单元,用于响应于对所述至少两个原子任务的任务图案的连接操作,获取连接出发端对应的原子任务实例的标识,以及连接结束端对应的原子任务实例的标识;
上级数组写入单元,用于将连接出发端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的上级标识数组;
下级数组写入单元,用于将连接结束端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的下级标识数组。
在一种可能的实现方式中,所述装置还包括:
试运行模块,用于对所述目标工作流进行试运行,获取所述目标工作流的试运行结果;
异常信息展示模块,用于响应于所述试运行结果与预期运行结果不同,展示异常信息。
在一种可能的实现方式中,所述工作流设计界面是浏览器页面。
综上所述,在本申请实施例中,在工作流设计界面上,将原子任务构成的工作流通过可视化的方式展示在工作流画布上,用户可以通过对原子任务对应的任务图案进行连线等操作,从而直观的进行工作流的设计,计算机设备可以根据设计过程产生的任务执行参数和执行顺序,自动生成该工作流,即用户可以通过可视化的设计流程自行设计出自动执行的工作流,而不需要通过开发人员通过编写程序代码进行工作流开发,节约了代码开发的时间,从而提升了工作流的应用效率。
图13示出了本申请一个示例性实施例示出的计算机设备1400的结构框图。该计算机设备1400可以是图1所示系统中的用户终端或者服务器。
通常,计算机设备1400包括有:处理器1401和存储器1402。
处理器1401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1401可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1401也可以包括主处理器和协处理器。在一些实施例中,处理器1401可以在集成有GPU(Graphics Processing Unit,图像处理器),处理器1401还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行以实现本申请上述方法实施例中的全部或者部分步骤。
在一些实施例中,计算机设备实现为用户终端时,该计算机设备1400还可选包括有:外围设备接口1403和至少一个外围设备。处理器1401、存储器1402和外围设备接口1403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1403相连。可选的,外围设备包括:射频电路1404、显示屏1405、图像采集组件1406、音频电路1407、定位组件1408和电源1409中的至少一种。
外围设备接口1403可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1401和存储器1402。
射频电路1404用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。可选地,射频电路1404包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1404可以通过至少一种无线通信协议来与其它计算机设备进行通信。在一些实施例中,射频电路1404还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1405用于显示UI(UserInterface,用户界面)。当显示屏1405是触摸显示屏时,显示屏1405还具有采集在显示屏1405的表面或表面上方的触摸信号的能力。
图像采集组件1406用于采集图像或视频。在一些实施例中,图像采集组件1406还可以包括闪光灯。
音频电路1407可以包括麦克风和扬声器。在一些实施例中,音频电路1407还可以包括耳机插孔。
定位组件1408用于定位计算机设备1400的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。
电源1409用于为计算机设备1400中的各个组件进行供电。
在一些实施例中,计算机设备1400还包括有一个或多个传感器1410。该一个或多个传感器1410包括但不限于:加速度传感器1411、陀螺仪传感器1412、压力传感器1413、指纹传感器1414、光学传感器1415以及接近传感器1416。
本领域技术人员可以理解,图13中示出的结构并不构成对计算机设备1400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括计算机程序(指令)的存储器,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法。例如,所述非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例所示的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种工作流生成方法,其特征在于,所述方法包括:
展示工作流设计界面,所述工作流设计界面中包括至少一个原子任务的选择控件;
响应于对所述至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系;
获取所述至少两个原子任务的任务执行参数;
基于所述至少两个原子任务之间的上下级关系,以及所述至少两个原子任务的任务执行参数生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
2.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个原子任务的任务执行参数,包括:
响应于接收到对第一目标任务的任务图案的指定操作,展示所述第一目标任务的参数设置界面;所述第一目标任务是所述至少两个原子任务中的任意一个;
接收在所述参数设置界面中设置的,所述第一目标任务的任务执行参数。
3.根据权利要求2所述的方法,其特征在于,所述接收在所述参数设置界面中设置的,所述第一目标任务的任务执行参数,包括:
响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的第一访问地址;
响应于所述第一目标任务是工作流触发任务,接收在所述参数设置界面中设置的触发条件,所述触发条件时触发所述目标工作流开始执行的条件;
响应于所述第一目标任务是数据处理任务,接收在所述参数设置界面中设置的数据处理参数,所述数据处理参数是所述数据处理任务对应的处理算法的算法参数。
4.根据权利要求3所述的方法,其特征在于,所述接收在所述参数设置界面中设置的,所述目标任务的任务执行参数,还包括:
响应于所述第一目标任务是跨域交互任务,接收在所述参数设置界面中设置的,所述第一访问地址的访问凭证。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于接收到凭证管理触发操作,展示凭证管理界面,所述凭证管理界面中包含已有访问地址对应的凭证管理选项;所述已有访问地址是已有的跨域交互任务的访问地址;
响应于接收到对第二访问地址的凭证管理选项的管理操作,对所述第二访问地址的访问凭证进行管理;所述第二访问地址是所述已有访问地址中的任意一个;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于所述目标工作流生成完成,在所述工作流设计界面中,创建所述第一目标任务的选择控件;
将所述第一目标任务的任务执行参数,设置为所述第一目标任务的选择控件对应的默认参数。
7.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个原子任务的任务执行参数,包括:
获取第二目标任务的选择控件对应的默认参数,作为所述第二目标任务的任务执行参数;
所述第二目标任务是所述至少两个原子任务中的任意一个。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于接收到任务管理触发操作,展示任务管理界面;所述任务管理界面中包含已有的各个原子任务的任务管理选项;
响应于接收到对第三目标任务的任务管理选项的管理操作,对所述第三目标任务进行管理;
其中,所述管理操作包括查看、编辑以及删除中的至少一项。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述至少一个原子任务的选择控件的选择操作,生成所述至少两个原子任务各自的原子任务实例;
所述响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系,包括:
响应于对所述至少两个原子任务的任务图案的连接操作,获取连接出发端对应的原子任务实例的标识,以及连接结束端对应的原子任务实例的标识;
将连接出发端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的上级标识数组;
将连接结束端对应的原子任务实例的标识,写入连接结束端对应的原子任务实例的下级标识数组。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述目标工作流进行试运行,获取所述目标工作流的试运行结果;
响应于所述试运行结果与预期运行结果不同,展示异常信息。
11.根据权利要求1至10任一所述的方法,其特征在于,所述工作流设计界面是浏览器页面。
12.一种工作流生成方法,其特征在于,所述方法包括:
展示工作流设计界面,所述工作流设计界面中包含任务选择区域以及工作流设计区域;所述任务选择区域中包括至少一个原子任务的选择控件;
响应于对所述至少一个原子任务的选择控件的选择操作,在所述工作流设计区域中展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
响应于对所述至少两个原子任务的任务图案的连接操作,展示所述至少两个原子任务之间的连线,所述至少两个原子任务之间的连线指示所述至少两个原子任务之间的上下级关系;
响应于接收到设计完成操作,生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系依次自动执行的工作流。
13.一种工作流生成装置,其特征在于,所述装置包括:
设计界面展示模块,用于展示工作流设计界面,所述工作流设计界面中包括至少一个原子任务的选择控件;
任务图案展示模块,用于响应于对所述至少一个原子任务的选择控件的选择操作,展示至少两个原子任务的任务图案;所述至少两个原子任务是所述选择操作对应的原子任务;
任务等级获取模块,用于响应于对所述至少两个原子任务的任务图案的连接操作,获取所述至少两个原子任务之间的上下级关系;
执行参数获取模块,用于获取所述至少两个原子任务的任务执行参数;
工作流生成模块,用于基于所述至少两个原子任务之间的上下级关系,以及所述至少两个原子任务的任务执行参数生成目标工作流;所述目标工作流是所述至少两个原子任务基于所述上下级关系,依次按照各自的任务执行参数自动执行的工作流。
14.一种计算机设备,其特征在于,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至12任一所述的工作流生成方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至12任一所述的工作流生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010707526.9A CN111813391A (zh) | 2020-07-21 | 2020-07-21 | 工作流生成方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010707526.9A CN111813391A (zh) | 2020-07-21 | 2020-07-21 | 工作流生成方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111813391A true CN111813391A (zh) | 2020-10-23 |
Family
ID=72861586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010707526.9A Pending CN111813391A (zh) | 2020-07-21 | 2020-07-21 | 工作流生成方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111813391A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416476A (zh) * | 2020-11-25 | 2021-02-26 | 武汉联影医疗科技有限公司 | 工作流执行方法、装置、计算机设备和存储介质 |
CN112766750A (zh) * | 2021-01-25 | 2021-05-07 | 中国原子能科学研究院 | 任务模型的构建方法及系统 |
CN113805976A (zh) * | 2021-09-16 | 2021-12-17 | 上海商汤科技开发有限公司 | 数据处理方法及装置、电子设备及计算机可读存储介质 |
CN113900561A (zh) * | 2021-10-27 | 2022-01-07 | 北京字跳网络技术有限公司 | 表格处理方法、装置、电子设备、介质及程序产品 |
CN114446417A (zh) * | 2022-04-06 | 2022-05-06 | 深圳市帝迈生物技术有限公司 | 多模式约束规则的配置方法、装置、设备和存储介质 |
CN114546471A (zh) * | 2022-02-21 | 2022-05-27 | Oppo广东移动通信有限公司 | 系统控制方法、装置、存储介质及电子设备 |
CN114792088A (zh) * | 2022-06-23 | 2022-07-26 | 中国科学院空天信息创新研究院 | 一种数字地球工作流的编辑方法及装置 |
CN115526579A (zh) * | 2021-11-26 | 2022-12-27 | 北京字跳网络技术有限公司 | 确定项目流的方法、装置、电子设备及存储介质 |
WO2023071291A1 (zh) * | 2021-10-30 | 2023-05-04 | 华为技术有限公司 | 一种任务处理方法及电子装置 |
CN117406979A (zh) * | 2023-12-14 | 2024-01-16 | 之江实验室 | 一种计算工作流的界面交互设计方法和系统 |
WO2024037132A1 (zh) * | 2022-08-15 | 2024-02-22 | 腾讯科技(深圳)有限公司 | 工作流处理方法、装置、设备、存储介质和程序产品 |
-
2020
- 2020-07-21 CN CN202010707526.9A patent/CN111813391A/zh active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416476B (zh) * | 2020-11-25 | 2023-03-24 | 武汉联影医疗科技有限公司 | 工作流执行方法、装置、计算机设备和存储介质 |
CN112416476A (zh) * | 2020-11-25 | 2021-02-26 | 武汉联影医疗科技有限公司 | 工作流执行方法、装置、计算机设备和存储介质 |
CN112766750A (zh) * | 2021-01-25 | 2021-05-07 | 中国原子能科学研究院 | 任务模型的构建方法及系统 |
CN112766750B (zh) * | 2021-01-25 | 2024-05-31 | 中国原子能科学研究院 | 任务模型的构建方法及系统 |
CN113805976A (zh) * | 2021-09-16 | 2021-12-17 | 上海商汤科技开发有限公司 | 数据处理方法及装置、电子设备及计算机可读存储介质 |
CN113900561A (zh) * | 2021-10-27 | 2022-01-07 | 北京字跳网络技术有限公司 | 表格处理方法、装置、电子设备、介质及程序产品 |
WO2023071291A1 (zh) * | 2021-10-30 | 2023-05-04 | 华为技术有限公司 | 一种任务处理方法及电子装置 |
CN115526579A (zh) * | 2021-11-26 | 2022-12-27 | 北京字跳网络技术有限公司 | 确定项目流的方法、装置、电子设备及存储介质 |
CN114546471A (zh) * | 2022-02-21 | 2022-05-27 | Oppo广东移动通信有限公司 | 系统控制方法、装置、存储介质及电子设备 |
CN114446417A (zh) * | 2022-04-06 | 2022-05-06 | 深圳市帝迈生物技术有限公司 | 多模式约束规则的配置方法、装置、设备和存储介质 |
CN114792088A (zh) * | 2022-06-23 | 2022-07-26 | 中国科学院空天信息创新研究院 | 一种数字地球工作流的编辑方法及装置 |
WO2024037132A1 (zh) * | 2022-08-15 | 2024-02-22 | 腾讯科技(深圳)有限公司 | 工作流处理方法、装置、设备、存储介质和程序产品 |
CN117406979A (zh) * | 2023-12-14 | 2024-01-16 | 之江实验室 | 一种计算工作流的界面交互设计方法和系统 |
CN117406979B (zh) * | 2023-12-14 | 2024-04-12 | 之江实验室 | 一种计算工作流的界面交互设计方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111813391A (zh) | 工作流生成方法、装置、计算机设备及存储介质 | |
US10635433B2 (en) | Cross application behavior customization | |
US11635974B2 (en) | Providing a different configuration of added functionality for each of the stages of predeployment, deployment, and post deployment using a layer of abstraction | |
US11132114B2 (en) | Method and apparatus for generating customized visualization component | |
CN109716331B (zh) | 符合应用程序数据共享和决策服务平台模式的应用程序部署 | |
CN110598868B (zh) | 一种机器学习模型搭建方法、装置及相关设备 | |
CN111357241B (zh) | 使用自动化通用连接器封装将云应用程序集成到云服务代理平台中的系统和方法 | |
CN105378703A (zh) | 用于使用统一规则集合来验证输入的多个方法的方法和系统 | |
US20130261611A1 (en) | Modular Diagnostic Instrument Workstation Architecture and Method | |
CN107896244A (zh) | 一种版本文件的分发方法、客户端及服务器 | |
US11245601B2 (en) | Automated integrated test system and method thereof | |
CN110959165A (zh) | 用于自动验证云服务代理系统中的要约的功能的技术 | |
CN105871911A (zh) | 一种服务调用引擎、方法及系统 | |
JP2023511114A (ja) | デプロイ命令のために有向非巡回グラフを利用するための技術 | |
CN111178017A (zh) | 流程图的生成方法、装置、存储介质及电子设备 | |
US10572231B1 (en) | Component grouping for application development | |
US11893383B2 (en) | Configuration properties management for software | |
CN117291517A (zh) | 审批流程的构建方法及装置 | |
CN111752601A (zh) | 一种数据配置方法、装置、系统、电子设备及其存储介质 | |
JP2020502598A (ja) | 業務システムとマルチアセンブリーとのやりとりを実現する方法、電子装置及び記憶媒体 | |
CN113971191A (zh) | 一种数据导入方法、装置和计算机可读存储介质 | |
CN110506257B (zh) | 在云服务代理系统中创建和分配集成连接器的方法 | |
CN112099879B (zh) | 配置信息管理方法、装置、计算机设备及存储介质 | |
WO2022126372A1 (zh) | 多服务多环境管理方法及系统 | |
CN114282760A (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 |