发明内容
基于此,本说明书提供了一种业务构建方法、装置及计算机设备。
根据本说明书实施例的第一方面,提供一种业务构建方法,所述方法包括:
当接收到创建目标业务的请求时,根据目标业务的业务类型获取对应的元数据配置表,所述元数据配置表基于用户在配置界面配置的业务方案的业务元数据以及编排的所述业务方案的业务流程状态机流转图生成,用于描述业务元数据以及元数据之间的关联关系;
将所述元数据配置表发送给客户端,以使客户端根据所述元数据配置表渲染出业务创建界面并展示给用户;
接收用户在所述业务创建界面录入的目标业务的业务数据,基于所述业务数据和所述元数据配置表构建所述目标业务。
根据本说明书实施例的第二方面,提供一种业务构建方法,所述方法包括:
提供配置界面,以使用户在所述配置界面配置业务方案的业务元数据以及编排业务方案的业务流程状态机流转图;
将所述业务元数据以及业务流程状态机流转图发送给服务端,以使服务端根据所述业务元数据以及业务流程状态机流转图生成元数据配置表并存储,所述元数据配置表用于描述业务元数据以及元数据之间的关联关系;
当接收到用户输入的创建目标业务的指令时,向服务端发送创建目标业务的请求,以使服务端根据目标业务的业务类型获取对应的元数据配置表;
接收服务端发送的元数据配置表,根据所述元数据配置表渲染出业务创建界面并展示给用户;
将用户在所述业务创建界面输入的业务数据发送给服务端,以使服务端基于所述业务数据和所述元数据配置表构建所述目标业务。
根据本说明书实施例的第三方面,提供一种业务构建装置,所述装置可包括:
获取模块,用于当接收到创建目标业务的请求时,根据目标业务的业务类型获取对应的元数据配置表,所述元数据配置表基于用户在配置界面配置的业务方案的业务元数据以及编排的所述业务方案的业务流程状态机流转图生成,用于描述业务元数据以及元数据之间的关联关系;
发送模块,用于将所述元数据配置表发送给客户端,以使客户端根据所述元数据配置表渲染出业务创建界面并展示给用户;
构建模块,用于接收用户在所述业务创建界面录入的目标业务的业务数据,基于所述业务数据和所述元数据配置表构建所述目标业务。
根据本说明书实施例的第四方面,提供一种业务构建装置,所述装置可包括:
配置模块,用于提供配置界面,以使用户在所述配置界面配置业务方案的业务元数据以及编排业务方案的业务流程状态机流转图;
发送模块,用于将所述业务元数据以及业务流程状态机流转图发送给服务端,以使服务端根据所述业务元数据以及业务流程状态机流转图生成元数据配置表并存储,所述元数据配置表用于描述业务元数据以及元数据之间的关联关系;以及当接收到用户输入的创建目标业务的指令时,向服务端发送创建目标业务的请求,以使服务端根据目标业务的业务类型获取对应的元数据配置表;以及将用户在所述业务创建界面输入的业务数据发送给服务端,以使服务端基于所述业务数据和所述元数据配置表构建所述目标业务;
接收模块,用于接收服务端发送的元数据配置表,根据所述元数据配置表渲染出业务创建界面并展示给用户。
根据本说明书实施例的第五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一实施例所述的方法。
应用本说明书实施例方案,通过为用户提供一个配置界面,用户可以在配置界面根据业务类型配置业务元数据以及编排业务的流程状态机流转图,然后根据用户配置的元数据以及编排的业务流程状态机流转图生成元数据配置表,当用户需要创建目标业务,可以根据目标业务的类型获取对应的元数据配置表发送给客户端,以便于用户根据客户端展示的业务创建界面录入业务数据,服务端根据业务数据和元数据配置表构建目标业务。通过这种方式,可以在配置界面动态的配置业务的元数据和流程状态机流转图,然后自动生成元数据配置表,无需编码实现,业务的模板可以自行配置,可以实现多样化和动态变化,以满足复杂的业务场景和业务快速变化的需求。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
随着互联网的发展,各种业务系统每天都有大量的新业务上线,在创建一项新的业务时,需要先在后台配置好业务相应的后台数据,后台数据相当于业务的框架和模板,举个例子,针对要上线基金产品,可以先在后台配置好基金产品的模板,模板包括了基金产品的信息框架,比如基本信息、机构信息、资金信息等内容,当要新建一个新的基金产品时,便可以将后台配置好的模板渲染后展示到前端界面,以便用户根据模板录入基金产品的具体信息,然后才能创建一个新的基金产品。传统的后台数据的配置,都是需要针对具体的业务去定制开发,只能适用于单独的某种业务,然而,由于业务不断的发展和变更,经常需要针对新的业务重新编写代码配置后台数据,后台数据的可扩展性和可复用性都比较差,代码开发和维护成本也比较高,并且前端界面渲染规则也是固定的,比较单一。为了提高新业务的构建的效率,简化操作,需要对业务构建的方法加以改进。
基于此,本说明书实施例提供一种业务构建方法,通过为用户提供一个配置界面,用户可以在配置界面根据业务类型配置业务元数据以及编排业务的流程状态机流转图,然后根据用户配置的元数据以及编排的业务流程状态机流转图生成描述业务元数据和元数据之间关联关系的元数据配置表,当用户需要创建目标业务,可以根据目标业务的类型获取对应的元数据配置表发送给客户端,以便于用户根据客户端展示的业务创建界面录入业务数据,服务端根据业务数据和元数据配置表构建目标业务。通过这种方式,可以在配置界面动态的配置业务的元数据和流程状态机流转图,然后自动生成元数据配置表,无需编码实现,业务的模板可以自行配置,可以实现多样化和动态变化,以满足复杂的业务场景和业务快速变化的需求。
具体的,所述方法如图1所示,可包括以下步骤:
S102、当接收到创建目标业务的请求时,根据目标业务的业务类型获取对应的元数据配置表,所述元数据配置表基于用户在配置界面配置的业务方案的业务元数据以及编排的所述业务方案的业务流程状态机流转图生成,用于描述业务元数据以及元数据之间的关联关系;
S104、将所述元数据配置表发送给客户端,以使客户端根据所述元数据配置表渲染出业务创建界面并展示给用户;
S106、接收用户在所述业务创建界面录入的目标业务的业务数据,基于所述业务数据和所述元数据配置表构建所述目标业务。
业务系统中通常包括大量的业务,每天都有新的业务上线或下线。每一项业务都有对应的后台数据,后台数据相当于业务框架或模板,由于一种类型的业务其后台数据是一样的,因而用户往往需要根据业务类型预先配置后台数据,以便用户可以直接基于预先配置的业务模板录入待创建业务的信息,创建一个新的业务。
通常我们将描述数据对象的结构、特征、属性的数据称之为元数据,举个例子,一个基金产品的业务数据包括基金名称、基金编码、机构代码、机构名称等信息,我们可以将这些信息描述为基金基本信息,基金基本信息即为元数据,而基金名称又是对“晨光基金”这一名称的描述,因而基金名称也是一个元数据。元数据是对业务的一个抽象,在配置业务后台数据时,通常需要配置的只是业务的模板和框架,不包括具体内容,因而也可以用元数据来描述。通常,在配置业务后台数据时,配置的可以是描述业务方案的业务元数据以及各业务元数据之间的关联关系的元数据配置表。比如,一个业务方案可能包含各个业务节点,业务节点又包括各个业务元素,业务方案还包括描述业务从开始到结束的业务生命周期的业务流程状态机,业务的操作节点等,这些信息都可以在元数据配置表中描述。以往的技术中,业务的元数据配置表是通过硬编码的形式配置,针对每种类型的业务,用户需要通过编写代码去配置元数据配置表。当用户需要创建一个新的业务时,系统便会从服务端获取对应的元数据配置表,基于元数据配置表渲染业务创建界面展示给用户,以便用户根据业务创建界面录入业务数据,创建业务。当业务发生变化时,用户需要重新编写代码去重新配置元数据配置表,代码开发和维护工作量极大。且业务创建界面的渲染规则和元素的校验规则,在编写代码时也已经固定,比较单一,无法根据业务变化动态更新。
为了解决这个问题,本说明书实施例提供了一个可视化的用户配置界面,使业务的后台数据实现可配置化。用户可以在配置界面配置业务方案的业务元数据,以及在配置界面编排出业务流程状态机流转图,然后发送给服务端,服务端可以根据配置的元数据和业务流程状态机流转图自动生成业务方案相对应的业务元数据配置表。其中,用户在配置界面配置的元数据包括描述业务的各种数据,在某些实施例中,元数据可以包括业务方案包括的业务节点,各业务节点包括的业务元素,业务元素的校验规则、业务元素的UI渲染规则、业务元素的数据类型以及业务方案包括的操作节点。首先,用户可以根据业务的类型确定业务需要用到的字段,然后在配置界面录入业务元素,然后可以在配置界面选择业务元素构成业务节点,并且选择业务元素对应的校验规则、UI渲染规则、数据类型等,然后可以在配置界面选择业务节点构成业务方案,并且选择业务方案的操作节点。
举个例子,比如针对业务“XXX促销活动”,用户可以根据该活动的数据结构的属性确定需要用到哪些字段,然后录入业务元素,比如需要用到的业务元素有活动名称,有效期等,奖品类型,优惠券名称,预算,面额,投放渠道,投放图片,链接等等。然后根据业务类型确定该业务的业务节点,并且在配置界面中选择各业务节点包括的业务元素,比如业务节点包括:“活动配置,优惠券配置,投放配置”三个节点,然后选择各节点包括的业务元素,比如“活动配置”节点包括业务元素“活动名称,有效期等,奖品类型”,“优惠券配置”节点包括业务元素“优惠券名称,预算,面额”,“投放装置”包括业务元素“投放渠道,投放图片,链接”。在配置好业务方案的业务节点,各业务节点包括业务元素后,还可以给业务节点中的各业务元素配置UI渲染规则、校验规则和数据类型。UI渲染规则为在前端界面展示业务元素时如何展示的,比如业务节点的各业务元素是通过下拉框的方式选取后展示,还是直接展示出来。校验规则是当用户输入元数据对应的业务数据时,校验用户输入的业务数据是否正确。比如针对业务元素“有效期”,如果用户输入的不是日期而是其他类型的数据,则会报错,或者无法输入。数据类型则是定义了每个业务元素的数据类型,比如“有效期”为日期,“预算”为金额。然后,用户可以在配置界面选择业务方案的操作节点,操作节点是业务流程中,需要人为操作去推进业务流程的节点,以“XX大促活动”,该业务从新建到上线需要人为操作的节点包括“创建、提交审批、暂停、启动、终止、下线”,每个节点都对应着业务流程状态的迁移。
为了更好的描述业务从开始到结束的生命周期中的各个业务状态以及各个业务状态之间流转关系,通常会使用业务流程状态机来管理业务状态以及状态之间的迁移。为了让用户可以根据实际业务场景编排出符合业务需求的业务流程状态机流转图,还提供了业务流程状态机流转图的编排界面,用户可以在编排界面中自由编排业务的各个业务状态和操作节点。在某些实施例中,用户编排的状态机流转图用于描述业务方案包括的各个业务状态、业务状态之间的操作节点以及操作节点对应的执行脚本。如图2所示,为本说明书实施例的一个状态机流转图编排界面,用户可以在界面中编排业务的各个状态,状态之间的操作节点以及操作节点对应的执行脚本。比如状态a和状态b为业务的两个状态,中间有一个操作节点,操作节点对应的执行脚本可以是同步调用,也可以是异步调用,然后针对每个操作节点录入不同的Task,其中,Task为该操作节点对应的执行脚本。不同的Task代表了不同的执行脚本,可以根据自己的业务需求随意编写执行脚本,动态热加载到应用内存中,执行Task的时候则会执行相应的脚本。在某些实施例中,所述执行脚本可以是Groovy脚本,用户可以根据实际业务需求去编写操作节点对应的Groovy脚本。
当用户在客户端提供的配置界面配置好业务方案的业务元数据以及编排好业务流程状态机流转图后,可以点击保存按钮,然后服务端可以根据用户配置的业务元数据和业务流程状态机流转图自动生成元数据配置表并存储在数据库中,元数据配置表描述了业务元数据以及业务元数据之间的关联关系,比如业务元素与业务节点,业务节点与业务方案、操作节点与业务方案等等之间的关联。当用户需要创建一个新的目标业务时,客户端便会向后台服务端发送创建新业务的请求,服务端在接收到请求后,会根据目标业务的业务类型获取对应的元数据配置表,然后将元数据配置表发送给客户端,客户端会基于元数据配置表渲染出业务创建界面,并展示给用户,用户便可以在业务创建界面录入业务的业务数据,服务端根据该业务数据和元数据配置表构建出该目标业务。以“XX大促活动”为例,用户在配置界面配置好了业务元数据和业务流程状态机流转图,并且生成了元数据配置表存储在数据库中。当运行人员想要创建一个“双十一大促活动时”,服务端会根据该业务选取事先配置的“XX大促活动”的元数据配置表,然后根据元数据配置表中各业务元素的渲染规则渲染出业务创建界面,业务创建界面会显示“业务方案”、“业务节点”、“业务元素”,用户便可以填入业务方案对应的名称“双11大促活动”,各业务节点中业务元素对应的业务数据,比如“有效期”为2019-11-11,“预算”为200MRMB,然后可以根据事先配置的校验规则校验用户输入的业务数据是否符合要求,数据类型是否符合要求等。当用户根据业务创建界面输入完业务数据后,便可以将元数据配置表和业务数据结合起来构建目标业务。通过动态的配置业务元素的渲染规则,可以使得前端的业务创建界面的渲染更加多样化。
在某些实施例中,目标业务创建好后,目标业务如果包括操作节点,即意味着业务流程的推进需要人为操作去推进,这时可以在客户端的显示界面中显示操作控件,这些操作控件与元数据配置表中预先配置的操作节点一一对应,用户可以显示操作节点对应操作控件,以便服务端根据用户的请求将业务流程状态机切换至下一个状态。以“XX大促活动”为例,该业务包括的操作节点为“创建、提交审批、暂停、启动、终止、下线”等,因而可以在显示界面生成相应的控件,比如业务创建控件,提交审批控件,暂停控件等,这些控件与用户的人为操作节点一一对应,以便用户通过点击控件来控制业务流程状态的推进。比如用户点击提交审批控件后,服务端在接收到该业务状态的切换请求后,便会将业务流程状态机从“待审批状态”切换到“审批中状态”。
在某些实施例中,由于针对每个操作节点,用户事先都在配置界面编写了操作节点对应的执行脚本,因此,在接收到用户通过点击操作节点对应的操作控件触发的业务状态切换请求时,服务端会获取该操作节点对应的执行脚本,然后通过该执行脚本去将状态机从当前业务状态切换至下一个业务状态。通过在配置界面动态地配置执行脚本,并且通过执行脚本的热加载机制可以随时变更执行脚本,不需要走发布流程,最大限度了减小了代码开发的成本。
当目标业务创建好并上线后,如果用户需要对业务的业务数据进行更改,这时服务端会先创建一个目标业务的业务数据副本,然后根据用户的修改指令对业务数据副本进行修改,待修改完成后,才会用修改好的业务数据副本覆盖当前的业务数据。这样便可以保证了数据的安全性,同时也便于业务数据的版本管理和变更点比对。
本说明书实施例通过提供用户配置界面,用户可以在配置界面动态地配置业务的业务节点、业务元素、业务元素的渲染规则、校验规则、业务的操作节点以及操作节点对应的执行脚本,使得业务元数据模型可以动态的变更,UI展示界面也支持动态渲染,业务元素校验规则也可以动态扩展,完全释放了前端的开发工作量,业务创建界面不需要重复开发,通过提供状态机编排界面,用户可以自由编排业务流程状态机,来管理业务的生命周期,不需要做相应的二次开发,即可满足复杂的业务需求。操作节点对应的执行脚本可以随时变更,不需要走发布流程,最大限度地减小了代码开发的成本。
以下再从客户端一侧来解释本说明书实施例提供的业务构建方法,如图3所示,具体的可包括以下步骤:
S302、提供配置界面,以使用户在所述配置界面配置业务方案的业务元数据以及编排业务方案的业务流程状态机流转图;
S304、将所述业务元数据以及业务流程状态机流转图发送给服务端,以使服务端根据所述业务元数据以及业务流程状态机流转图生成元数据配置表并存储,所述元数据配置表用于描述业务元数据以及元数据之间的关联关系;
S306、当接收到用户输入的创建目标业务的指令时,向服务端发送创建目标业务的请求,以使服务端根据目标业务的业务类型获取对应的元数据配置表;
S308、接收服务端发送的元数据配置表,根据所述元数据配置表渲染出业务创建界面并展示给用户;
S310、将用户在所述业务创建界面输入的业务数据发送给服务端,以使服务端基于所述业务数据和所述元数据配置表构建所述目标业务。
客户端给用户提供一个配置界面,以便用户可以通过配置界面配置业务方案的业务元数据以及编排业务方案的业务流程状态机流转图。元数据可以包括业务方案包括的业务节点、各业务节点包括的业务元素、业务元素的校验规则、业务元素的UI渲染规则、业务元素的数据类型以及业务方案包括的操作节点。状态机可以用于描述业务方案包括的各个业务状态、业务状态之间的操作节点以及操作节点对应的执行脚本。用户在配置界面配置好元数据和状态机后,客户端将元数据和状态机发送给服务端,服务端根据用户配置的元数据和状态机生成元数据配置表并存储。当客户端接收到用户输入的创建目标业务的指令时,会向服务端发送业务创建请求,服务端接收到该请求后会根据目标业务的业务类型获取对应的元数据配置表,然后返回给客户端,客户端会基于元数据配置表渲染出业务创建界面,以便用户在业务创建界面输入目标业务的业务数据,然后将用户输入的业务数据发送给服务端,服务端根据业务数据和元数据配置表构建目标业务。
业务构建方法具体的处理细节可参考服务端侧的处理过程,在此不再赘述。
为了进一步解释本说明书实施例的业务构建方法,以下再以一个具体的实施例加以说明。
以往在新建基金业务时,需要先在后台配置基金业务的后台数据,即描述基金业务元数据和业务元数据之间关联关系的元数据配置表,通常元数据配置表需要编写代码去配置,由于代码中所有的内容都是固定的,因而只要基金业务少发生变化,就得重新编写代码,可扩展性非常差。为了解决这个问题,本说明书实施例提供了一种构建基金业务的方法,具体过程如图4所示。
首先通过客户端42向用户提供一个配置界面421,用户41可以在配置界面421配置基金业务的元数据和编排基金业务的业务流程状态机(S401),具体的,用户可以在配置界面进行如下配置:
1、元数据的配置
(1)业务元素录入:根据基金业务的自身的数据结构,确定需要哪些字段属性,可以配置相应的业务元素。比如基金业务需要的业务元素有:基金编码、基金名称、机构名称、机构编码等等。
(2)业务节点配置:将多个业务元素组装成一个完整的业务节点,同时可以配置业务元素的UI渲染规则、数据类型、元素校验规则等。比如,基金业务的业务节点包括:基本信息、机构信息和资金信息,基本信息的业务元素包括:基金编码、基金名称等,机构信息的业务元素包括:机构名称、机构编码,资金信息的业务元素包括:资金金额等。
(3)基金业务方案配置:将多个节点组成完整的方案,同时可以给方案配置不同的操作节点,不同的操作节点绑定不同的业务流程状态机,还可以录入级联校验的脚本,支持跨节点的数据校验能力。比如,将基本信息、机构信息和资金信息三个节点构成基金业务的业务方案,并且选则业务方案的操作节点,操作节点为需要人为操作去推进业务流程的节点,包括:创建,提交审批,暂停,启动,终止,下线等。
(4)规则配置:可以动态配置多种校验规则,支持复杂的校验逻辑。比如基金的编码必填,资金金额必须大于一定数量等。
2、状态机流转图编排
可以提供基金编排的界面,通过可视化的界面拖动,编排出复杂的状态机,满足各种复杂的业务场景。可以在如图2所示状态机编排界面编排基金业务的业务流程状态机,用来描述基金业务从新建到上线到发布完成的整个生命流程,业务流程状态机可以描述基金业务的各个业务状态、状态之间的操作节点以及各操作节点对应的执行脚本。执行脚本可以是Groovy脚本,可以根据基金业务的业务需求随意编写Groovy脚本,动态热加载到应用内存中,执行该操作节点的任务的时候则会执行相应的脚本。并且Groovy脚本可以实现动态加载,而且可以进行脚本的版本管理。
当用户41在配置界面421配置好上述信息后,客户端42会将基金业务元数据和业务流程状态机发送给服务端43(S402)。服务端43根据用户配置的基金业务元数据和业务流程状态机生成元数据配置表431(S403)。当用户通过客户端发起创建某个新的基金业务的请求时(S404),服务端会根据待创建业务的业务类型获取对应的元数据配置表,并发送给客户端(S405),客户端会根据元数据配置表渲染出业务创建界面,并展示给用户(S406)。用户在业务创建界面录入基金业务的业务数据,比如录入基金名称“晨光基金”,机构名称“XX有限公司”,然后通过客户端发送给服务端(S407),服务端根据用户录入的业务数据以及元数据配置表构建基金业务(S408)。当基金业务创建完成后,用户可以通过客户端显示界面上的操作控件切换业务状态,操作控件与操作节点一一对应,当用户点击操作控件发送业务状态切换请求(S409)时,服务端获取操作节点对应的执行脚本,通过执行脚本将业务流程状态机切换至下一个状态(S4010)。当基金业务上线后,如果用户需要对基金业务的业务数据进行修改,则会通过客户端发送一个修改业务数据的请求(S4011),服务端收到请求后会生成一个业务数据副本,并根据用户的修改指令修改业务数据副本,当修改完成以后,用业务数据副本覆盖业务数据,以保证业务数据的安全性(S4012)。
通过提供配置界面,使用户可以在配置界面动态的配置业务的元数据和流程状态机,然后自动生成元数据配置表,无需编码实现,业务的元数据模板可以自行配置,可以实现多样化和动态变化,以满足复杂的业务场景和业务快速变化的需求,同时业务元素的渲染规则也可以动态变化,可以多样化,执行脚本可以根据业务需求自动编写,可扩展性强,使得业务的构建变得更加高效和简单。
以上实施例中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
如图5所示,是与本说明书实施例相对应的一种业务构建装置,所述装置50可包括:
获取模块51,用于当接收到创建目标业务的请求时,根据目标业务的业务类型获取对应的元数据配置表,所述元数据配置表基于用户在配置界面配置的业务方案的业务元数据以及编排的所述业务方案的业务流程状态机生成,用于描述业务元数据以及元数据之间的关联关系;
发送模块52,用于将所述元数据配置表发送给客户端,以使客户端根据所述元数据配置表渲染出业务创建界面并展示给用户;
构建模块53,用于接收用户在所述业务创建界面录入的目标业务的业务数据,基于所述业务数据和所述元数据配置表构建所述目标业务。
在一个实施例中,所述业务元数据包括:所述业务方案包括的业务节点、所述业务节点包括的业务元素、所述业务元素的UI渲染规则、所述业务元素的校验规则、所述业务元素的数据类型和/或所述业务方案包括的操作节点。
在一个实施例中,所述业务流程状态机描述了所述业务方案包括的业务状态、业务状态之间的操作节点以及操作节点对应的执行脚本。
在一个实施例中,所述执行脚本为Groovy脚本。
在一个实施例中,基于所述业务数据和所述元数据配置表构建所述目标业务之后,还包括:
接收更改所述目标业务的业务状态的请求,基于所述请求将业务流程状态机从当前业务状态切换至下一个业务状态;其中,所述请求通过用户点击客户端显示界面的操作控件触发,所述操作控件与所述操作节点一一对应。
在一个实施例中,基于所述请求将业务流程状态机从当前业务状态切换至下一个业务状态包括:
获取所述操作节点对应的执行脚本;
通过所述执行脚本将当前业务状态切换至下一个业务状态。
在一个实施例中,基于所述业务数据和所述元数据配置表构建所述目标业务之后,还包括:
接收更改所述目标业务的业务数据的请求;
基于所述请求生成目标业务的业务数据的副本;
对所述业务数据的副本进行修改,并将修改后的业务数据副本覆盖所述目标业务的业务数据。
如图6所示,是与本说明书实施例相对应的另一种业务构建装置,所述装置可包括:
配置模块61,用于提供配置界面,以使用户在所述配置界面配置业务方案包括的业务元数据以及编排业务方案的业务流程状态机;
发送模块62,用于将所述业务元数据以及业务流程状态机发送给服务端,以使服务端根据所述业务元数据以及业务流程状态机生成元数据配置表并存储,所述元数据配置表用于描述业务元数据以及元数据之间的关联关系;以及当接收到用户输入的创建目标业务的指令时,向服务端发送创建目标业务的请求,以使服务端根据目标业务的业务类型获取对应的元数据配置表;以及将用户在所述业务创建界面输入的业务数据发送给服务端,以使服务端基于所述业务数据和所述元数据配置表构建所述目标业务;
接收模块63,用于接收服务端发送的元数据配置表,根据所述元数据配置表渲染出业务创建界面并展示给用户。
上述装置中各个模块的功能和作用的实现过程具体详情见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书装置的实施例可以应用在计算机设备上,例如服务器或智能终端。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在文件处理的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本说明书装置所在计算机设备的一种硬件结构图,除了图7所示的处理器702、内存704、网络接口706、以及非易失性存储器708之外,实施例中装置所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。其中,所述非易失性存储器708上并可在处理器702上运行的计算机程序,所述处理器702执行所述程序时实现上述任一实施例中的方法。
相应地,本说明书实施例还提供一种计算机存储介质,所述存储介质中存储有程序,所述程序被处理器执行时实现上述任一实施例中的方法。
本申请可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机可用存储介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本领域技术人员在考虑说明书及实践这里公开的说明书后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。