发明内容
基于此,有必要针对上述技术问题,提供一种订单生成方法、装置、终端和存储介质。
第一方面,提供了一种订单生成方法,该方法包括:
在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件;其中,编排文件包括多个服务之间的调用顺序;
基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
在本申请的一个可选实施例中,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件,包括:基于预设的交易模型确定目标交易的交易类型;根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件;根据每个目标服务的调用条件确定多个目标服务之间的调用顺序;根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
在本申请的一个可选实施例中,编排文件包括的调用顺序依次为库存服务、支付服务和订单服务;基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单,包括:基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息;其中,下单元数据至少包括商品名称和购买数量;若库存服务的出参信息为库存充足,则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息;调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息;根据订单服务的多个出参信息生成目标交易的交易订单。
在本申请的一个可选实施例中,上述方法还包括:若库存服务的出参信息为库存不足,则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
在本申请的一个可选实施例中,支付服务至少包括:现金支付服务和积分支付服务,调用支付服务,包括:若下单元数据中的支付类型为现金支付,则调用现金支付服务;若下单元数据中的支付类型为积分支付,则调用积分支付服务。
在本申请的一个可选实施例中,根据订单服务的多个出参信息生成目标交易的交易订单,包括:确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息;根据多个目标出参信息生成交易订单。
在本申请的一个可选实施例中,在基于编排文件调用库存服务之前,还包括:按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包;其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据;将每个数据包分别发送至与数据包的属性标识相匹配的服务。
在本申请的一个可选实施例中,对下单元数据中的多个元数据进行属性标记,包括:对多个元数据进行数据着色处理,得到多种颜色标识元数据;其中,每种颜色标识元数据的颜色标识相同;按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
第二方面,提供了一种订单生成装置,该装置包括:文件编排模块和订单生成模块。
该文件编排模块用于在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件;其中,编排文件包括多个服务之间的调用顺序;
该订单生成模块用于基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
在本申请的一个可选实施例中,该文件编排模块模块具体用于,基于预设的交易模型确定目标交易的交易类型;根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件;根据每个目标服务的调用条件确定多个目标服务之间的调用顺序;根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
在本申请的一个可选实施例中,该编排文件包括的调用顺序依次为库存服务、支付服务和订单服务;该订单生成模块具体用于,基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息;其中,下单元数据至少包括商品名称和购买数量;若库存服务的出参信息为库存充足,则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息;调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息;根据订单服务的多个出参信息生成目标交易的交易订单。
在本申请的一个可选实施例中,该订单生成模块具体用于,若库存服务的出参信息为库存不足,则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
在本申请的一个可选实施例中,上述支付服务至少包括:现金支付服务和积分支付服务,该订单生成模块具体用于,若下单元数据中的支付类型为现金支付,则调用现金支付服务;若下单元数据中的支付类型为积分支付,则调用积分支付服务。
在本申请的一个可选实施例中,该订单生成模块具体用于,确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息;根据多个目标出参信息生成交易订单。
在本申请的一个可选实施例中,该订单生成模块具体用于,按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包;其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据;将每个数据包分别发送至与数据包的属性标识相匹配的服务。
在本申请的一个可选实施例中,该订单生成模块具体用于,对多个元数据进行数据着色处理,得到多种颜色标识元数据;其中,每种颜色标识元数据的颜色标识相同;按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
第三方面,提供了一种终端,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现如上的方法的步骤。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上的方法的步骤。
上述订单生成方法按照目标交易类型对多个服务进行编排,形成编排文件,然后基于该编排文件调用多个服务,多个服务对目标交易的下单元数据进行处理即可生成目标交易的交易订单。本申请实施例提供的该订单生成方法全程无需对多个服务进行人工编排,解决了现有技术中存在的目前的订单生成效率较低的技术问题,达到了提高订单生成的自动化程度、订单生成效率以及大大降低微服务编排错误率的技术效果。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在电商交易中,为了完成一项完整的业务功能往往需要对多个共享服务中心进行微服务编排,也就是按照特定业务场景调取例如库存共享服务中心、支付共享服务中心、订单共享服务中心等多个共享服务中心中的执行代码并将其组合,最后通过该执行代码生成包含有商品信息、支付信息和交易信息等信息的订单。针对不同的业务功能,具有不同的业务场景,那么要生成对应的订单就需要对多个共享服务中心的执行代码重新进行微服务编排。目前的微服务编排主要是依靠人工编排,工作人员按照特定业务功能从不同的共享服务中心调取不同的执行代码,并将其按照业务场景组合起来。但是人工编排操作效率低且容易出错,从而导致目前的订单生成效率较低。
有鉴于此,本申请实施例提供了一种订单生成方法,按照目标交易类型对多个服务进行编排,形成编排文件,然后基于该编排文件调用多个服务,多个服务对目标交易的下单元数据进行处理即可生成目标交易的交易订单。本申请实施例提供的该订单生成方法全程无需对多个服务进行人工编排,解决了现有技术中存在的目前的订单生成效率较低的技术问题,达到了提高订单生成的自动化程度、订单生成效率以及大大降低微服务编排错误率的技术效果。
下面,将对本申请实施例提供的订单生成方法所涉及的实施环境进行简要地说明。
请参见图1,本申请实施例提供的订单生成方法的应用环境为电商交易平台,该交易平台包括至少三个终端,分别为用户终端100、商家服务终端200和第三方服务终端300。其中,用户终端100用于用户执行下单动作,并基于用户下单信息生成对应的下单元数据,例如订单ID、商品名称、购买数量、支付类型、订单金额、订单状态等数据信息。第三方服务终端300用于存储多个共享服务中心(以下简称服务),例如库存服务、支付服务和订单服务等,以执行不同的功能。商家服务终端200用于基于用户终端100生成的下单元数据结合多个服务终端生成交易订单。本申请实施例以商家服务终端200为目标终端,以下以该目标终端为执行主体,执行本申请实施例提供的订单生成方法,生成交易订单为例进行详细说明。
请参见图2,本申请一个实施例提供了一种订单生成方法,包括以下步骤201-步骤202:
步骤201、目标终端在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件。
用户终端在接收到用户下单信息后,基于用户下单信息生成对应的下单元数据,并将该下单元数据作为订单生成请求发送至目标终端。需要指出的是,该订单生成请求是针对目标交易发起的请求,该目标交易指当前用户针对当前商品进行的当前交易。不同交易类型的交易对应不同的交易场景,需要不同的服务,按照不同的顺序来执行,因此,目标终端接收到该订单生成请求后,按照该目标交易的交易类型对多个服务进行编排,以形成编排文件。其中,该编排文件用于辅助多个服务的调用或执行,该编排文件包括多个服务之间的调用顺序,该调用顺序是指对该多个服务进行调用的顺序。
步骤202、目标终端基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
目标终端通过步骤201得到编排文件,然后基于该编排文件中存储的调用顺序依次调用多个服务,该多个服务用以执行不同功能,例如数据处理、信息生成等。目标终端将获取得到的目标交易的下单元数据作为不同服务的入参信息输入至不同的服务,不同的服务基于得到对应的入参信息执行不同的功能,并产生对应的出参信息。目标终端基于不同服务的出参信息生成该目标交易的交易订单,需要指出的是,该交易订单是针对目标交易,也就是当前用户针对当前商品进行的当前交易的订单,目标终端在生产该交易订单后可以将该交易订单发送至用户终端,以供用户确认。
上述订单生成方法按照目标交易类型对多个服务进行编排,形成编排文件,然后基于该编排文件调用多个服务,多个服务对目标交易的下单元数据进行处理即可生成目标交易的交易订单。本申请实施例提供的该订单生成方法全程无需对多个服务进行人工编排,解决了现有技术中存在的目前的订单生成效率较低的技术问题,达到了提高订单生成的自动化程度、订单生成效率以及大大降低微服务编排错误率的技术效果。
请参见图3,在本申请的一个可选实施例中,步骤201包括如下步骤301-步骤304:
步骤301、目标终端基于预设的交易模型确定目标交易的交易类型。
目标终端内存存储有交易模型,该交易模型用于确定交易的类型,例如当前交易是属于实体产品还是虚拟产品等。该交易模型可以是存储有大量交易样本与交易类型之间对应关系的数据库,也可以为基于海量交易样本训练得到神经网络模型。目标终端将接收到的目标交易输入至该交易模型,该交易模型即可确定并输出该目标交易的交易类型。
步骤302、目标终端根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件。
目标终端通过上述步骤301得到目标交易的交易类型,然后基于该交易类型查询交易数据库,该交易数据库中存储有多种交易类型、每种交易类型对应的多个服务、以及每种服务的调用条件,也就是在满足哪些条件的情况下才可以调用该服务。需要指出的是,执行不同交易类型的交易需要调用不同的服务,因此,在该交易数据库中每种交易类型对应有多个服务,例如针对上述的实体产品在交易过程中需要考虑其库存量,则需要调用例如库存服务、支付服务和订单服务等,但是针对上述虚拟产品、电子文本或者服务类产品等,可以无限复制,不受库存的限制,则无需调用库存服务,只需要调用支付服务和订单服务等即可。目标终端通过查询该交易数据库即可得到该交易类型对应的多个目标服务,以及每个目标服务对应的调用条件。
步骤303、目标终端根据每个目标服务的调用条件确定多个目标服务之间的调用顺序。
每个目标服务至少具有一个调用条件,例如支付服务的调用条件为库存充足,也就是库存服务的出参信息达到预设条件,否则无法调用支付服务,也就是无法付款。类似的,多个服务之间是具有相关性的,因此,目标终端通过多个目标服务的调用条件即可确定得到多个目标服务之间的调用顺序,例如先调用库存服务,然后再调用支付服务等。
步骤304、目标终端根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
目标终端根据多个目标服务之间的调用顺序对该多个目标服务进行编排,也就是对多个目标服务按照步骤303得到的调用顺序进行排序,以形成编排文件。在该编排文件中,每个目标服务对应有一个次序,例如1,2,3等,用于后续调用该服务。
本申请实施例中通过每个服务的调用条件确定多个服务之间的调用顺序,每个服务对应有至少一个调用条件,基于每个服务的调用条件进行逻辑运算即可实现对于多个服务之间调用顺序的编排,全程无需人工介入,自动化程度高,效率高,同时也避免了人工编排的误差,进一步提高本申请实施例订单生成方法的准确性。
请参见图4,在本申请的一个可选实施例中,编排文件包括的调用顺序依次为库存服务、支付服务和订单服务。步骤202包括如下步骤401-步骤405:
步骤401、目标终端基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息。
其中,下单元数据至少包括商品名称和购买数量。目标终端基于编排文件调用库存服务,将用户终端发送来的下单元数据输入至库存服务的接口,库存服务在接收到该下单元数据后,对该下单元数据进行处理。例如,库存服务在接收到该下单元数据后,根据该下单元数据中的商品名称确定该商品对应的库存量,然后将该库存量和下单元数据中的购买数量进行比对,根据比对结果生成该库存服务的出参信息,并发送至目标终端。其中比对结果包括两种情况,第一种,若库存量小于该购买数量,则库存服务的出参信息为库存不足;第二种,若库存量不小于该购买数量,则库存服务的出参信息为库存充足。
步骤402、若库存服务的出参信息为库存充足,目标终端则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息。
该下单元数据中至少包括支付数据。目标终端接收到库存服务的出参信息,并对该出参信息进行判断,若该库存服务的出参信息为库存充足,则目标终端调用支付服务,并将下单元数据通过接口输入至支付服务,支付服务对该下单元数据进行处理,执行支付动作。例如,该支付服务接收该下单元数据中的支付数据,并进行扣款等,然后基于扣款结果生成支付服务的出参信息,最后将该支付服务的出参信息发送至目标终端。其中,该支付服务的出参信息至少包括两种,第一种,支付服务的出参信息为扣款失败;第二种,支付服务的出参信息为扣款成功。
在本申请的一个可选实施例中,支付服务至少包括:现金支付服务和积分支付服务,则步骤402至少包括如下两种情况:
第一种情况,若下单元数据中的支付类型为现金支付,目标终端则调用现金支付服务。
用户终端为用户提供有至少两种支付方式,则对应用户终端生成的下单元数据中的支付类型也包括至少两种,例如现金支付和积分支付。目标终端在得到该下单元数据后,对该下单元数据中的支付类型进行判断,确定该支付类型为现金支付还是积分支付。若该下单元数据中的支付类型为现金支付,目标终端则调用现金支付服务,基于该现金支付服务对下单元数据中的支付数据进行数据处理。
第二种情况,若下单元数据中的支付类型为积分支付,目标终端则调用积分支付服务。
若目标终端确定下单元数据中的支付类型为积分支付,目标终端则调用积分支付服务,基于该积分支付服务对下单元数据中的支付数据进行数据处理。
本申请实施例提供的订单生成方法中,针对不同支付类型调用不同的支付服务,以使得对于下单元数据中的支付数据处理针对性更强,即提高了对于下单元数据处理的精准性,从而使得本申请实施例提供的订单生成方法精准性更高。
步骤403、目标终端调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息。
目标终端调用订单服务,并将该下单元数据和支付服务的出参信息输入至订单服务的接口,订单服务对该下单元数据和支付服务的出参信息进行数据处理。例如订单服务可以将该下单元数据和支付服务的出参信息转换为预设同一格式的格式,并输出与订单服务入参内容相一致的多个出参信息,例如包括同一格式的商品名称、购买数量、购买时间、支付金额等信息,最后支付服务通过接口等将该多个出参信息发送至目标终端。
本申请实施例提供的订单生成方法中编排文件包括的调用顺序依次为库存服务、支付服务和订单服务,通过库存服务的出参信息调用支付服务,然后再基于支付服务的出参信息用户的下单元数据调用订单服务,通过订单服务生成目标交易的交易订单。利用库存服务的出参信息调用支付服务,利用支付服务的出参信息调用订单服务,三者服务的调用之间相互依存,逻辑紧密,大大降低了各服务调用出错的几率,进一步提高本申请实施例提供的订单生成方法的稳定性和生产效率。
步骤404、若库存服务的出参信息为库存不足,目标终端则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
目标终端获取得到库存服务的出参信息,若该出参信息为库存不足,也就是当前用户在当前交易中无法购买该产品,无需进一步支付,目标终端则无需调用支付服务。因此,目标终端只需要直接调用订单服务,通过该订单服务将当前的订单状态和原始用户下单时提交的下单元数据进行处理,产生多个出参信息并输出即可。
步骤405、目标终端根据订单服务的多个出参信息生成目标交易的交易订单。
订单服务在产生多个出参信息后将该多个出参信息通过接口等发送至目标终端,目标终端在接收到多个出参信息后,对该多个出参信息进行数据处理以生成该目标交易的交易订单。例如,目标终端内部存储有购买成功订单模型和购买失败订单模型,其中,购买成功订单模型和购买失败订单模型分别对应有若干个预设的固定信息。目标终端在接收到订单服务的多个出参信息后,根据该出参信息中的支付数据判断当前交易是否支付成功,若支付成功,则确定当前交易为购买成功,则将与购买成功订单模型中预设的固定信息匹配的信息输入至该购买成功订单模型中,形成购买成功的交易订单。否则,则确定当前交易为购买失败,则将与购买失败订单模型中预设的固定信息匹配的信息输入至该购买失败订单模型中,形成购买失败的交易订单。
本申请实施例提供的订单生成方法在库存不足时直接调用订单服务,而避免了调用支付服务,减少了服务调用的数量,从而降低了目标终端的运行压力,在一定程度上提高订单生成方法的效率。
请参见图5,在本申请的一个可选实施例中,步骤405包括如下步骤501-步骤502:
步骤501、目标终端确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息。
订单服务根据其入参确定得到多个出参信息,该多个出参信息中包括大量数据,例如包括可提供给用户的公开数据,以及部分商家的内部数据。目标终端在接收到多个出参信息后,需要对该多个出参信息进行筛选,确定哪些是属于商家的内部数据,哪些属于可提供给用户的公开数据,以确保只将可公开数据或者用户需要的数据提供给用户。目标终端内部存储有一预设订单信息,目标终端在接收到来自订单服务的多个出参信息后,将多个出参信息与预设订单信息进行比对,以确定与预设订单信息相匹配的多个目标出参信息。
步骤502、目标终端根据多个目标出参信息生成交易订单。
目标终端在通过步骤501确定得到多个目标出参信息,然后对该多个目标出参信息进行整合,例如将该多个目标出参信息输入至预设的交易订单模板中,按照预设的交易订单模板对该多个目标出参信息进行可视化输出,以方便用户查看。
本申请实施例提供的订单生成方法中,通过对订单服务生成的多个出参信息进行处理,得到与预设订单信息相匹配的多个目标出参信息,并基于该多个目标出参信息生成交易订单。该交易订单中仅包含可以提供给用户的可公开数据或者用户需要的数据,大大提高了商家后台数据的安全性。同时,本申请实施例中通过设定有预设订单信息,可以对交易订单进行统一化,方便管理,也可以进一步提高本申请实施例订单生成的效率。
请参见图6,在本申请的一个可选实施例中,在步骤401之前,该方法还包括如下步骤601-步骤602:
步骤601、目标终端按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包。
用户终端发送来的下单元数据中包括有多个元数据,例如订单ID、商品名称、购买数量、支付类型、订单金额、订单状态等,目标终端按照功能类型对该多个元数据进行属性标记,将该多个元数据分为多个具有不同属性的数据包。其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据。例如该属性标记包括三种,库存属性、支付属性和订单属性,针对上述的几种元数据:目标终端将订单ID和订单状态标记为订单属性,将商品名称和购买数量标记为库存属性,将支付类型和订单金额标记为支付属性,即可得到三个数据包,分别为:库存属性数据包、支付属性数据包和订单属性数据包。
步骤602、目标终端将每个数据包分别发送至与数据包的属性标识相匹配的服务。
目标终端按照多个数据包的属性标识将多个数据包分别发送至对应的服务。例如针对步骤601中的三个数据包,目标终端分别将库存属性数据包发送至库房服务,将支付属性数据包发送至支付服务,将订单属性数据包发送至订单服务。
本申请实施例将下单元数据中的多个元数据按照多个服务的功能类型分为多个数据包,然后将多个数据包分别发送至与该数据包的属性标识相匹配的服务进行数据处理,每个服务只接收和处理本服务处理需要的目标数据,针对性更强,可以大大提高每个服务对于数据处理的效率,进一步提高本申请实施例提供的订单生成方法的订单生成效率。同时,对多个元数据进行分类后,可以避免将多个元数据同时发送至多个服务,可以有效降低数据传输压力,提高数据传输效率,进一步提高本申请实施例提供的订单生成方法的订单生成效率。
请参见图7,在本申请的一个可选实施例中,步骤601包括如下步骤701-步骤702:
步骤701、目标终端对多个元数据进行数据着色处理,得到多种颜色标识元数据。
目标终端在接收到用户终端发送来的多个元数据后,对每个元数据进行着色处理,也就是对每个元数据赋予不同的颜色,从而得到带有颜色标识的元数据,即得到了多种颜色标识元数据。其中,每种颜色标识元数据的颜色标识相同。
步骤702、目标终端按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
目标终端通过步骤701得到多种颜色标识元数据,然后按照如步骤601的方法对每种颜色标识元数据进行属性标记,得到多个数据包,最后将每个数据包分别发送至与数据包的属性标识相匹配的服务进行处理。
每个元数据的数据信息不同,进行属性标记时需要根据其具体的信息内容进行判断后才可进行分类。本申请实施例先对每个元数据进行着色处理,每个元数据具有特定的颜色,在后续进行属性标记时,目标终端只需要基于每个元数据的特定颜色按照上述功能类型进行属性标记和数据包分类即可,无需考虑其具体的数据内容,分类方法简单快捷,可以大大提高属性标记和数据包分类的效率和准确性,进一步提高本申请实施例提供的订单生成方法的订单生成效率和准确性。
应该理解的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
请参见图8,本申请一个实施例提供了一种订单生成装置800,该装置包括:文件编排模块801和订单生成模块802。
该文件编排模块801用于在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件;其中,编排文件包括多个服务之间的调用顺序;
该订单生成模块802用于基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
在本申请的一个可选实施例中,该文件编排模块801模块具体用于,基于预设的交易模型确定目标交易的交易类型;根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件;根据每个目标服务的调用条件确定多个目标服务之间的调用顺序;根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
在本申请的一个可选实施例中,该编排文件包括的调用顺序依次为库存服务、支付服务和订单服务;该订单生成模块802具体用于,基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息;其中,下单元数据至少包括商品名称和购买数量;若库存服务的出参信息为库存充足,则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息;调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息;根据订单服务的多个出参信息生成目标交易的交易订单。
在本申请的一个可选实施例中,该订单生成模块802具体用于,若库存服务的出参信息为库存不足,则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
在本申请的一个可选实施例中,上述支付服务至少包括:现金支付服务和积分支付服务,该订单生成模块802具体用于,若下单元数据中的支付类型为现金支付,则调用现金支付服务;若下单元数据中的支付类型为积分支付,则调用积分支付服务。
在本申请的一个可选实施例中,该订单生成模块802具体用于,确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息;根据多个目标出参信息生成交易订单。
在本申请的一个可选实施例中,该订单生成模块802具体用于,按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包;其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据;将每个数据包分别发送至与数据包的属性标识相匹配的服务。
在本申请的一个可选实施例中,该订单生成模块802具体用于,对多个元数据进行数据着色处理,得到多种颜色标识元数据;其中,每种颜色标识元数据的颜色标识相同;按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
关于订单生成装置800的具体限定可以参见上文中对于订单生成方法的限定,在此不再赘述。上述订单生成装置800中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端中的处理器中,也可以以软件形式存储于终端中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图9为本申请一个实施例中终端的内部结构示意图,该终端可以为服务器。如图9所示,该终端包括通过系统总线连接的处理器、存储器以及通信组件。其中,该处理器用于提供计算和控制能力,支撑整个终端的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种订单生成方法。内存储器为非易失性存储介质中的操作系统以及计算机程序提供高速缓存的运行环境。终端可以通过通信组件与其他的终端(例如STA)进行通信。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种终端,包括:包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现如下步骤:
在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件;其中,编排文件包括多个服务之间的调用顺序;
基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:基于预设的交易模型确定目标交易的交易类型;根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件;根据每个目标服务的调用条件确定多个目标服务之间的调用顺序;根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
在本申请的一个实施例中,编排文件包括的调用顺序依次为库存服务、支付服务和订单服务;处理器执行计算机程序时还实现以下步骤:基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息;其中,下单元数据至少包括商品名称和购买数量;若库存服务的出参信息为库存充足,则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息;调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息;根据订单服务的多个出参信息生成目标交易的交易订单。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:若库存服务的出参信息为库存不足,则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
在本申请的一个实施例中,支付服务至少包括:现金支付服务和积分支付服务,处理器执行计算机程序时还实现以下步骤:若下单元数据中的支付类型为现金支付,则调用现金支付服务;若下单元数据中的支付类型为积分支付,则调用积分支付服务。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息;根据多个目标出参信息生成交易订单。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包;其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据;将每个数据包分别发送至与数据包的属性标识相匹配的服务。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:对多个元数据进行数据着色处理,得到多种颜色标识元数据;其中,每种颜色标识元数据的颜色标识相同;按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
本申请实施例提供的终端,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如下步骤:
在接收到针对目标交易的订单生成请求后,按照目标交易对应的交易类型对多个服务进行编排,形成编排文件;其中,编排文件包括多个服务之间的调用顺序;
基于编排文件调用多个服务,对目标交易的下单元数据进行处理,生成目标交易的交易订单。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:基于预设的交易模型确定目标交易的交易类型;根据交易类型查询交易数据库,得到交易类型对应的多个目标服务,以及每个目标服务对应的调用条件;根据每个目标服务的调用条件确定多个目标服务之间的调用顺序;根据多个目标服务之间的调用顺序对多个目标服务进行编排,形成编排文件。
在本申请的一个实施例中,编排文件包括的调用顺序依次为库存服务、支付服务和订单服务;计算机程序被处理器执行时还实现以下步骤:基于编排文件调用库存服务,基于库存服务对下单元数据进行处理,得到库存服务的出参信息;其中,下单元数据至少包括商品名称和购买数量;若库存服务的出参信息为库存充足,则调用支付服务,基于支付服务对下单元数据进行处理,得到支付服务的出参信息;调用订单服务,基于订单服务对下单元数据和支付服务的出参信息进行处理,得到订单服务的多个出参信息;根据订单服务的多个出参信息生成目标交易的交易订单。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:若库存服务的出参信息为库存不足,则调用订单服务,基于订单服务对下单元数据和库存服务的出参信息进行处理,得到订单服务的多个出参信息。
在本申请的一个实施例中,支付服务至少包括:现金支付服务和积分支付服务,计算机程序被处理器执行时还实现以下步骤:若下单元数据中的支付类型为现金支付,则调用现金支付服务;若下单元数据中的支付类型为积分支付,则调用积分支付服务。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定订单服务的多个出参信息中与预设订单信息相匹配的多个目标出参信息;根据多个目标出参信息生成交易订单。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:按照多个服务的功能类型对下单元数据中的多个元数据进行属性标记,得到多个数据包;其中,多个数据包的属性标识不同,每个数据包中包括多个相同属性标识的多个元数据;将每个数据包分别发送至与数据包的属性标识相匹配的服务。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对多个元数据进行数据着色处理,得到多种颜色标识元数据;其中,每种颜色标识元数据的颜色标识相同;按照多个服务的功能类型对多种颜色标识元数据进行属性标记。
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以M种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(SyMchliMk)DRAM(SLDRAM)、存储器总线(RaMbus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。