CN106959952B - 获取产品对象的方法及装置 - Google Patents

获取产品对象的方法及装置 Download PDF

Info

Publication number
CN106959952B
CN106959952B CN201610012415.XA CN201610012415A CN106959952B CN 106959952 B CN106959952 B CN 106959952B CN 201610012415 A CN201610012415 A CN 201610012415A CN 106959952 B CN106959952 B CN 106959952B
Authority
CN
China
Prior art keywords
product
constraint
information
constraint information
constraint condition
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
Application number
CN201610012415.XA
Other languages
English (en)
Other versions
CN106959952A (zh
Inventor
邓自立
宋冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610012415.XA priority Critical patent/CN106959952B/zh
Priority to PCT/CN2016/112923 priority patent/WO2017118336A1/zh
Publication of CN106959952A publication Critical patent/CN106959952A/zh
Application granted granted Critical
Publication of CN106959952B publication Critical patent/CN106959952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种获取产品对象的方法及装置。其中,该方法包括:接收当前账户提交的产品请求信息,根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统。本发明解决了相关技术中,用户在进行产品配置选择时会不断调用系统后台来校验约束条件,导致系统性能低下的技术问题。

Description

获取产品对象的方法及装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种获取产品对象的方法及装置。
背景技术
用户在通过互联网进行购物时,可以在产品的购买网页中配置产品的多项参数,商家可以根据用户配置的产品参数来为用户准备相应的产品,比如,用户在购买云服务器时,云服务器可以包括CPU、内存、磁盘、带宽、操作系统、区域等多个模块,用户可以针对上述多个模块进行选择,但是,商家提供的上述多个模块在销售上会存在约束限制,比如,杭州区域不能购买CPU8核,内存32G或者64G的机器;用户选择1核CPU,512M内存的时候不能选择windows操作系统等。
需要说明的是,在相关技术中实现上述产品的约束配置会存在如下缺点:
(1)如果一种产品存在多个模块时,相关技术只能做到少数模块(例如两个模块)的互斥,无法做到多个模块之间的复杂约束。
(2)商家无法直观的配置产品的约束条件,只能通过复杂的表达式引擎来实现约束的配置。
(3)用户选择配置产品的过程中会不断调用系统后台来校验约束条件,导致系统性能低下。
针对相关技术中,用户在进行产品配置时会不断调用系统后台来校验约束条件导致系统性能低下的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种获取产品对象的方法及装置,以至少解决相关技术中,用户在进行产品配置选择时会不断调用系统后台来校验约束条件,导致系统性能低下的技术问题。
根据本发明实施例的一个方面,提供了一种获取产品对象的方法,包括:接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统。
根据本发明实施例的另一方面,还提供了一种获取产品对象的装置,包括:接收单元,用于接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;调用单元,用于根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历单元,用于遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;提交单元,用于在产品对象校验成功的情况下,提交产品对象至处理系统。
在本发明实施例中,采用接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统,解决了相关技术中,用户在进行产品配置选择时会不断调用系统后台来校验约束条件,导致系统性能低下的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据发明实施例的一种获取产品对象的方法的运行终端的硬件结构框图;
图2是根据发明实施例的一种获取产品对象的方法的流程图;
图3是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图4是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图5是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图6是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图7是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图8是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图9是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图10是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图11是根据发明实施例的一种可选地获取产品对象的方法的示意图;
图12是根据发明实施例的一种获取产品对象的装置的示意图;
图13是根据发明实施例的一种可选地获取产品对象的装置的示意图;
图14是根据发明实施例的一种可选地获取产品对象的装置的示意图;以及
图15是根据发明实施例的一种获取产品对象的方法的运行终端的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,还提供了一种获取产品对象的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是根据本发明实施例的一种获取产品对象的方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的获取产品对象的方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的获取产品对象的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的获取产品对象的方法。图2是根据本发明实施例的一种获取产品对象的方法的流程图。该方法可以包括:
步骤S22,接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据。
在上述步骤S22中,上述当前账户可以为正在浏览产品销售页面的买家,本方案可以通过网站服务器来接收买家通过产品销售页面提交的产品请求信息,上述产品对象可以为买家在产品销售页面选择的具体的产品,上述产品参数可以为上述产品的多个组成模块,上述参数数据可以为产品的每个组成模块所对应的具体的型号、尺寸、地域等属性。
下面以买家购买云服务器为例,买家可以登录云服务器的销售页面,需要说明的是,云服务器可以包括地域、CPU、内存、公网带宽、镜像类型等多个组成模块,其中,每个组成模块可以包括多个型号,比如,云服务器中的一个组成模块“内存”可以包括512M,1GB,2GB,4GB,8GB等型号,买家可以对销售页面中显示的云服务器的组成模块以及每个组成模块的型号进行选择,生成产品请求信息,网站服务器可以接收买家提交的产品请求信息。
步骤S24,根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果。
在上述步骤S24中,网站服务器可以根据买家账户提交的产品请求信息来调用预先保存的至少一个产品约束信息,需要说明的是,本方案可以采用树状结构的约束模型中的各个节点来保存上述产品约束信息中的约束名称、至少一个约束条件和约束结果。需要说明的是,上述产品约束信息为产品的各个组成模块之间的约束限制,比如,选择了模块A中的a1型号的买家只能选择模块B中的b1型号。
下面仍以买家购买云服务器为例,在网站服务器中可以预先保存有多个关于云服务器的产品约束信息,例如,在预先保存的第一产品约束信息中,约束名称为:不同地域购买16核32G的机器的限制,约束的条件为:杭州地域,约束结果为可以购买16核32G的机器,从上述第一产品约束信息可知,只有杭州地域才可以购买16核32G的机器。再例如,在预先保存的第二产品约束信息中,约束名称为:不同操作系统购买1核512M的机器的限制,约束条件为windows,约束结果为不能购买1核512M的机器,从上述第二产品约束信息可知,windows操作系统不能购买1核512M的机器。再例如,在预先保存的第三产品约束信息中,约束名称为:不同地域购买云ssd数据盘的机器的限制,约束条件为深圳,约束结果为可以购买云ssd数据盘的机器,从上述第三产品约束信息可知,只有深圳的地域才可以购买云ssd数据盘。
步骤S26,遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功。
在上述步骤S26中,网站服务器在调用了多个产品约束信息之后,可以遍历上述树状模型中的各个节点中保存的约束名称、至少一个约束条件和约束结果,如果上述树状模型中包含任意一个与上述产品参数相匹配的约束条件,并且,树状模型中包含与上述参数数据相匹配的约束结果,在网站服务器确定买家所选择的产品对象校验成功,则说明买家在产品销售页面所选择的产品对象的产品参数以及参数没有违背服务器预先保存的约束限制,买家可以对所选择的产品对象进行购买。
需要说明的是,在上述树状模型包含着多个不同的约束条件以及约束结果,在本方案中,只要存在一组约束条件以及约束结果与卖家选择的产品参数以及参数数据相匹配,则买家所选择的产品对象校验成功。
下面仍以买家购买云服务器为例,买家可以在云服务器的销售页面进行选择,比如,买家的选择可以为如下:在杭州区域购买cpu8核的云服务器,网站服务器在接收买家的产品请求信息之后,可以遍历预存的树状结构,在该树状结构的模型中可以保存多个约束条件以及约束结果,在本实施例中,如果在该树状结构的多个节点中包括约束条件“杭州区域”以及约束结果“可以购买cpu8核的云服务器”,那么买家所选择的产品对象校验成功,说明买家所选择的产品请求信息“在杭州区域购买cpu8核的云服务器”没有违背网站服务器预存的约束限制,即买家可以在杭州区域购买cpu8核的云服务器。
这里需要说明的是,在该树状结构中可以预存如下多组约束条件以及约束结果:第一组:在北京区域可以购买cpu8核的云服务器,第二组:在杭州区域不可以购买cpu6核的云服务器,第三组:在深圳区域可以购买cpu8核的云服务器,在杭州区域不可以购买cpu4核的云服务器,第四组:在杭州地域可以购买cpu8核的云服务器。容易注意到,尽管第一组、第二组以及第三组的约束条件以及约束结果与卖家的产品请求信息中的参数以及参数数据不匹配,但是,只要在树状结构模型中存在任意一组(例如第四组)与卖家的请求信息匹配的第四组约束条件以及约束结果,买家所选择的产品对象校验成功,买家就可以在杭州区域购买cpu8核的云服务器,
步骤S28,在产品对象校验成功的情况下,提交产品对象至处理系统。
在上述步骤S28中,在本方案中,如果买家选择的产品对象校验成功,网站服务器则将买家所选择的产品对象提交至处理系统,上述处理系统可以为产品销售网站的购物车结算系统。
下面仍以买家购买云服务器为例,买家可以在云服务器的销售页面的选择为如下:在杭州区域购买cpu8核的云服务器,在网站服务器对买家所选择的产品对象校验成功之后,网站服务器则将买家在杭州区域购买cpu8核的云服务器的需求提交至云服务器的销售页面的结算系统,该结算系统可以生成杭州区域cpu8核的云服务器的价格。
本申请上述实施例一公开的方案中,如果产品销售商想获取买家账户所选择产品对象,首先,网站服务器可以接收买家账户通过产品的销售页面提交的产品请求信息,其中,产品请求信息中包含了当前买家账户所要请求的产品对象的至少一个产品参数和对应的参数数据;然后,网站服务器可以根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;接着,网站服务器可以遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;最后,在产品对象校验成功的情况下,提交产品对象至处理系统。容易注意到,在接收到买家账户的产品请求信息之后,本方案只调用一次预存的多个产品约束信息,然后遍历上述多个产品约束信息的方法,从而校验买家账户所选择的产品对象是否违背约束限制,同现有技术相比,本方案可以避免在用户配置产品的过程中不断的调用系统后台导致系统性能低下的问题,而且,本方案可以采用预先保存的多个约束信息对产品对象进行校验,该多个约束信息可以包含产品的多个模块,即本方案还可以实现多个模块之间的复杂约束。由此,本申请提供的上述实施例一的方案解决了相关技术中,用户在进行产品配置选择时会不断调用系统后台来校验约束条件,导致系统性能低下的技术问题。
在本申请提供的一种可选实施例中,在步骤S22,接收当前账户提交的产品请求信息之前,本方案还可以包括:
步骤S111,当前账户访问对应的产品页面,读取产品配置信息以及产品约束信息集合,其中,产品配置信息包括:多个产品参数以及每个产品参数对应的至少一个参数数据。
在上述步骤S111中,上述产品页面可以为产品的销售页面,产品的买家在登录上述产品的销售页面之后,网站服务器可以读取预存的产品配置信息以及约束信息集合,上述产品配置信息为产品的组成模块以及每个组成模块的多项属性,上述产品约束信息集合中可以包括关于上述产品的所有的约束信息,需要说明的是,上述产品的约束信息集合可以采用树状结构模型的多个节点进行保存。
这里需要说明的是,步骤S111中的产品参数和对应的参数数据为预存在网站服务器(系统后台)中的产品的所有配置信息,而步骤S22中的产品参数和对应的参数数据为买家在产品的销售页面中通过选择生成,二者产生原因不同。
下面仍以买家购买云服务器为例,买家登录云服务器的销售页面,然后网站服务器读取关于云服务器的配置信息,比如云服务器产品可以包括多个模块(即上述产品参数):地域模块、可用区模块、CPU模块、内存模块、公网带宽模块、带宽模块以及镜像类型模块,其中每个模块可以包括多个属性(即参数数据),地域模块可以包括北京、上海、深圳、杭州、青岛、香港、美国硅谷、亚太(新加坡)等属性,CPU模块可以包括:1核,2核,4核,8核,16核等属性。内存可以包括:512M,1GB,2GB,4GB,8GB等属性,公网带宽可以包括:按固定带宽、按使用流量等属性,镜像来行可以包括:公共镜像以及镜像市场等属性。网站服务器还可以读取云服务器的约束信息,云服务器约束信息为云服务器的各个组成模块之间的约束限制,比如,只有杭州地域才可以购买16核32G的机器,windows操作系统不能购买1核512M的机器,只有深圳的地域才可以购买云ssd数据盘等。
步骤S112,根据产品约束信息集合将产品配置信息显示在产品页面中。
在上述步骤S112中,网站服务器在读取了产品约束信息集合以及产品配置信息之后,可以根据产品约束信息集合将产品配置信息显示在产品的销售页面中供买家查看和选择,需要说明的是,由于本方案是根据产品约束信息来显示产品的配置,因此,在产品销售页面显示的产品的配置信息是符合产品的约束限制的,即随着买家对产品的配置的选择,页面中显示的产品配置信息是不断变化的。
下面仍以买家购买云服务器为例,买家登录云服务器的销售页面之后,网站服务器可以读取预存的云服务器的配置信息以及云服务器的约束信息,然后按照云服务器的约束信息将云服务器的配置信息显示在云服务器的销售页面,如图3所示,如果买家选择地域为北京,那么在云服务的销售页面中显示的CPU可以为1核至16核,如果买家选择地域为深圳,那么销售页面中显示的CPU为1核至8核,即云服务器的销售页面中显示的产品内容可以随着买家的配置而动态变化。
需要说明的是,结合图3,如果用户在云服务的销售页面中勾选了IO优化实例,本方案可以为用户显示一个优选的云服务器的配置(多数人选择的云服务器的配置)。
步骤S113,当前账户选定产品页面中显示的一个或多个产品参数以及对应的参数数据之后,产生待提交的产品请求信息。
在本申请提供的一种可选实施例中,在步骤S111,读取产品配置信息以及产品约束信息集合之后,本方案还可以包括:
步骤S115,根据当前账户的账户信息判断是否存在与当前账户对应的特殊约束信息,其中,账户信息至少包括如下任意一种或多种数据:账户名称、当前账户的登录次数、登录频率、当前账户请求产品对象的数量和频率。
在上述步骤S115中,网站服务器可以根据买家的账户信息(账户的名称、登录次数、登录频率以及请求的产品对象)来判断买家是否为VIP用户(个性化用户),如果买家为VIP用户的情况下,则在网站服务器则调用与VIP用户对应的特殊约束信息,需要说明的是,上述特殊约束信息与普通用户对应的约束信息相比,约束条件、约束结果可以不同。
下面仍以买家购买云服务器为例,在网站服务器中预存着白名单,在白名单中预存着多个VIP用户(个性化用户)的账户名称,在买家登录云服务器的销售页面之后,网站服务器可以判断买家账户的名称是否存在于上述白名单,如果买家账户的名称存在于上述白名单,则网站服务器确定上述买家账户为VIP用户,然后查询与该VIP用户对应的特殊约束信息。
步骤S116,如果存在,则使用特殊约束信息更新产品约束信息集合,并输出更新后的产品约束信息集合。
在上述步骤S116中,网站服务器可以采用上述特殊约束信息来修改预存的约束信息集合,即修改上述树状结构的模型,比如约束条件的修改、删除,约束结果的修改、删除。
在本申请提供的一种可选实施例中,约束模型中以约束名称为根节点,每个约束条件作为子节点,约束结果为叶子节点,其中,当约束条件的所对应的子节点作为父亲节点时,约束模型还包括至少一个基于子约束条件所确定的孙子节点,以此得到树状结构的约束模型。
在上述数状结构的约束模型中,如图4所示,主要包括约束名称、约束条件以及约束结果,产品的每个组成模块可以包括多个约束名称,每个约束名称可以包括多个约束条件,约束结果描述的是产品的组成模块的属性值,在树状结构模型中,约束名称为根节点,约束条件为子节点,约束结果为叶子节点,需要说明的是,在本方案中,约束条件作为父亲节点,还可以包括子约束条件,该子约束条件相当于约束名称来说则为孙子节点,本方案通过上述方式来生成上述树状的约束模型。
在本申请提供的一种可选实施例中,产品的销售管理人员可以在后台配置产品的树状约束模型,如图5所示,管理人员可以在根节点“不同地域对更换OS的限制”下添加父约束条件“更换操作系统”,然后在约束条件“更换操作系统”下继续添加子约束条件“windows”、“Linux”等,然后销售管理人员还可以在子约束条件“windows”下继续添加孙子约束条件“香港”、“美国硅谷”、“亚太”,在子约束条件“Linux”下继续添加孙子约束条件“香港”、“美国硅谷”、“亚太”,从而建立树状的约束模型。
下面举例说明销售管理人员建立图5中约束模型的具体过程:
步骤S41,产品的销售管理人员可以点击约束配置页面中的增加商品约束的按钮,然后在弹出的对话框中填写产品约束的名称“不同地域对更换OS的限制”和购买类型“更换操作系统”,生成一条新的产品约束,默认的第一个约束条件为更换操作系统。
步骤S42,产品的销售管理人员可以点击图5中“更换操作系统”右侧的添加子条件按钮,在弹出的对话框(如图6所示)中添加一个windows的条件,如图6所示,key是对应的配件属性code,value是具体的值(对于单值情况起始值和结束值填一样),错误码用于返回给前端页面,页面就可以个性化的展示错误(如炒作系统不合法),产品的销售管理人员可以通过与步骤B同样的方法再添加一个Linux的子条件。
步骤S43,产品的销售管理人员可以点击图5中windows右侧的“添加子条件”按钮,会再次弹出一个框,如图7所示,产品的销售管理人员可以在图7中的对话框中填写windows子条件的子条件,通过多部操作,产品的销售管理人员可以把所有子条件添加完毕。
步骤S44,产品的销售管理人员可以在图5中的孙子约束条件“香港”下添加约束结果,在点击编辑结果的按钮之后,弹出对话框(如图8所示),图8中的约束结果表示香港地域更换OS可以更换windows的,但不能更换为Linux的。需要说明的是,如图9所示,产品的销售管理人员还可以更改约束结果的可选值。
在本申请提供的一种可选实施例中,步骤S26,遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功的步骤可以包括:
步骤A,读取产品约束信息集合中的第一产品约束信息。
在上述步骤A中,网站服务器可以读取预存的产品约束信息集合中的任意一个产品约束信息,在上述第一产品约束信息中可以包括着第一约束条件、以及第一约束条件对应的约束结果,需要说明的是,上述第一产品约束信息保存在第一树状结构模型中。
下面仍以买家购买云服务器为例,在买家提交云服务器的请求信息之后,网站服务器可以读取预存在数据库中的产品约束信息集合的任意一个产品约束信息,第一产品约束信息的第一约束条件可以为“在北京地域”,与第一产品约束条件对应的第一约束结果可以为“可以购买1核CPU”。
步骤B,判断第一产品约束信息的第一约束条件是否与请求信息中包含的产品参数相匹配,在匹配的情况下,执行步骤C,否则,返回步骤A来读取产品约束信息集合中的第二产品约束信息,其中,第二产品约束信息为第一产品约束信息的下一条信息。
在上述步骤B中,在买家提交的请求信息中包含着产品参数以及产品参数数据,网站服务器可以将买家提交的请求信息的产品参数与上述第一约束条件进行匹配,如果匹配成功,则执行步骤C,如果匹配失败,则读取第一产品约束信息下的第二产品约束信息。
下面仍以买家购买云服务器为例,在产品约束信息集合中,第一产品约束信息的第一产品约束条件为“在北京地域”,第二产品约束信息的产品约束条件为“在杭州”,买家提交的产品请求信息中,产品参数为“在北京地域”,网站服务器则判定匹配成功。需要说明的是,如果产品请求信息中的产品参数为在“在深圳地域”,则匹配失败,网站服务器则读取第二产品约束信息的产品约束条件。
步骤C,判断第一产品信息的第一约束条件的节点是否为约束模型中的叶子节点,如果不是叶子节点,执行步骤D,否则,返回步骤B来深度搜索遍历约束条件的子约束条件,直至遍历到约束条件的节点为叶子节点。
在上述步骤C中,网站服务器可以继续判定第一约束条件在树状结构的约束模型中是否为叶子节点,如果第一约束条件之下存在子约束条件的情况下,网站服务器则通过深度搜索算法来遍历第一约束条件下的所有子约束条件,需要说明的是,在树状结构的约束模型中,如果第一约束条件之下存在第一子约束条件,第一子约束条件之下存在第一孙子约束条件,网站服务器则遍历一个子约束条件,然后将每一个子约束条件与用户的请求信息的产品参数进行匹配,直到最后一个座位叶子节点的约束条件与用户的请求信息的产品参数匹配为止,再执行步骤D。
步骤D,判断第一约束条件对应的约束结果是否与请求信息中包含的参数数据相匹配,在匹配的情况下,确定所要请求的产品对象校验成功,并返回步骤A来深度遍历产品约束信息集合中的下一条产品约束信息。
在上述步骤D中,在第一约束条件与请求信息的产品匹配之后,网站服务器则将第一约束结果与参数数据相匹配,如果匹配,则说明校验成功,买家所选择的产品对象没有违背产品约束限制,如果匹配不成功,网站服务器则深度遍历产品约束信息集合中的下一条产品约束信息。
下面举例详细阐述步骤A至步骤D中产品对象校验的过程:
买家user在云服务器的销售页面中进行产品对象的选择,以生成云服务器的请求信息,该云服务器的请求信息可以为:在地域青岛,购买系统为Windows、CPU为1核的云服务器,可见,在该云服务器的请求信息中,产品参数为地域、系统以及CPU,与产品参数对应的参数数据分别为:青岛、Windows以及1核。在网站服务器中预存有多个树状结构模型用于存储多个约束信息:其中约束信息L1:在地域青岛可以购买统为Windows、CPU为1核的云服务器,可见,在约束信息L1中,存在两条约束条件,约束条件T1:地域青岛,约束条件T2:Windows,约束结果R1:可以购买1核CPU。需要说明的是,约束信息L1在树状结构中,约束条件T1为父节点,约束条件T2为子节点,约束结果R1为孙子节点。网站服务器可以读取约束信息L1的树,然后从父节点进行遍历,网站服务器可以首先将约束条件T1与产品参数进行匹配,匹配成功,网站服务器然后将约束条件T1的子节点约束条件T2与产品参数进行匹配,匹配成功,然后,网站服务器继续遍历L1,确定约束结果R1为叶子节点之后,网站服务器则将约束结果R1与上述产品参数匹配,匹配成功,则产品对象校验成功。
在本申请提供的一种可选实施例中,在使用上述步骤A至步骤D遍历完产品约束信息集合中的所有产品约束信息之后,校验产品对象结束,需要说明的是,如果产品约束信息结合中的所有产品的约束信息的约束条件与产品参数不匹配或者,所有产品的约束信息的约束结果与参数数据不匹配的情况下,则说明产品对象校验失败。
在本申请提供的一种可选实施例中,在产品对象校验失败的情况下,本方案还可以包括:
步骤S50,确定当前账户请求产品对象失败,并返回报错信息。
在上述步骤S50中,在确定当前账户请求产品对象失败,本方案可以平抛出异常,返回下单失败,可选地,本方案可以弹出对话框提示买家解决的方法,比如重新选择产品对象。
在本申请提供的一种可选实施例中,在步骤S28,提交产品对象至处理系统之后,方法还包括:
步骤S30,处理系统统计产品对象的数量,并计算与产品对象匹配的虚拟资源的数值。
在上述步骤S30中,网站服务器在将产品对象上传结算系统之后,结算系统可以统计产品对象的数量,并计算产品对象的价格。
步骤S32,将与产品对象匹配的虚拟资源的数值进行转移处理,在转移成功的情况下,返回转移成功提示信息,在转移失败的情况,返回错误提示信息。
在上述步骤S32中,网站服务器可以将买家账户进行扣划,在扣划成功或失败的情况下,在产品销售页面上弹起一个对话框,用于提示买家支付成功或失败。
下面结合图10,介绍本方案中生成产品订单的一种优选实施例:
步骤S100,用户打开页面,系统调用接口获取产品配置。
在上述步骤S100中,在买家用户打开产品选购页面的时候,页面系统会调用接口获取产品的配置,产品配置可以包括产品参数以及参数数据。
步骤S101,系统查询数据库,获得相关的约束信息,组装为树状结构。
在上述步骤S101中,页面系统会查询数据库,在数据库中可以以树状结构的形式保持多个约束信息,其中,约束信息可以为约束名称、约束条件以及约束结果。
步骤S102,根据用户遍历看是否有特殊化逻辑需要修改约束树。
在上述步骤S102中,页面系统可以根据用户的账户的信息来判读用户是否为个性化用户,并根据个性化用户的特殊约束信息修改预存的约束信息。
步骤S103,结果返回前端,前端根据产品配置和约束信息展现界面。
在上述步骤S103中个,页面系统可以将更改后的约束信息以及产品配置返回前端,由前端根据约束信息来显示产品的配置信息。
步骤S104,用户下单,根据下单参数组装产品对象,并重新查询出约束树,校验约束。
在上述步骤S104中,用户可以对产品的各项参数进行选择以下单,页面系统可以将买家用户的产品请求信息与约束信息进行匹配,以进行产品对象的校验。
步骤S105,判断校验是否通过,在通过的情况下,执行步骤S107,在校验不通过的情况下,执行步骤S106。
步骤S106,返回下单失败和校验失败的原因。
在上述步骤S106中,页面系统可以在页面中弹出对话框提示用户下大失败以及失败的原因。
步骤S107,计算价格、生成订单,引导买家支付。
下面结合图11,介绍步骤S104中产品对象校验的过程:
步骤S1041,遍历所有约束树。
在上述步骤S1041中,页面系统会读取所有的约束树,在约束树中,预先保存着多个约束信息,约束信息包括约束条件以及约束结果。
步骤S1042,判断是否还有约束树。
在上述步骤S1042中,页面系统可以判断是否还有约束树,在是的情况下,执行步骤S1043,在否的情况下,则约束校验成功。
步骤S1043,校验每个约束条件,判断是否校验成功,校验成功的情况下执行步骤S1044,在校验失败的情况下返回执行步骤S1041。
在上述步骤S1043中,页面系统可以校验约束条件是否与产品对象的产品参数匹配。
步骤S1044,判断每个约束条件是否为叶子节点,在是的情况下,执行步骤S1045,在否的情况下,返回执行步骤S1043。
步骤S1045,判断约束条件的约束结果与产品对象的参数数据是否匹配,在是的情况下返回执行步骤S1041,在否的情况下,则校验失败。
在上述步骤S1045中,页面系统可以判断约束条件的约束结果与产品对象的参数数据是否匹配。在校验成功之后,本方案可以进行计算价格,生成订单等操作。需要说明的是,上述校验的过程中,本方案可以通过缓存技术来提高效率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述获取产品对象的方法的获取产品对象的装置,如图12所示,该装置可以包括:
接收单元1200,用于接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据。
调用单元1210,用于根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果。
遍历单元1220,用于遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功。
提交单元1230,用于在产品对象校验成功的情况下,提交产品对象至处理系统。
此处需要说明的是,上述接收单元1200、调用单元1210、遍历单元1220以及提交单元1230对应于实施例一中的步骤S22至步骤S28,四个单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
在一种可选地实施例中,如图13所示,本申请提供的装置还可以包括:
读取单元1240,用于当前账户访问对应的产品页面,读取产品配置信息以及产品约束信息集合,其中,产品配置信息包括:多个产品参数以及每个产品参数对应的至少一个参数数据。显示单元1250,用于根据产品约束信息集合将产品配置信息显示在产品页面中。产生单元1260,用于当当前账户选定产品页面中显示的一个或多个产品参数以及对应的参数数据之后,产生待提交的产品请求信息。
此处需要说明的是,上述读取单元1240、显示单元1250以及产生单元1260对应于实施例一中的步骤S111至步骤S113,三个单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
在一种可选地实施例中,如图14所示,本申请提供的装置还可以包括:
判断单元1270,用于根据当前账户的账户信息判断是否存在与当前账户对应的特殊约束信息,其中,账户信息至少包括如下任意一种或多种数据:账户名称、当前账户的登录次数、登录频率、当前账户请求产品对象的数量和频率;如果存在,则使用特殊约束信息更新产品约束信息集合,并输出更新后的产品约束信息集合。
此处需要说明的是,上述判断单元1270对应于实施例一中的步骤S115至步骤S116,判断单元1270与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
在一种可选地实施例中,约束模型中以约束名称为根节点,每个约束条件作为子节点,约束结果为叶子节点,其中,当约束条件的所对应的子节点作为父亲节点时,约束模型还包括至少一个基于子约束条件所确定的孙子节点,以此得到树状结构的约束模型。
在一种可选地实施例中,遍历单元还可以包括:
读取模块,用于读取产品约束信息集合中的第一产品约束信息。
第一判断模块,用于判断第一产品约束信息的第一约束条件是否与请求信息中包含的产品参数相匹配,在匹配的情况下,执行第二判断模块,否则,返回执行读取模块来读取产品约束信息集合中的第二产品约束信息,其中,第二产品约束信息为第一产品约束信息的下一条信息。
第二判断模块,判断第一产品约束信息的第一约束条件的节点是否为约束模型中的叶子节点,如果不是叶子节点,执行第三判断模块,否则,返回执行第一判断模块来深度搜索遍历约束条件的子约束条件,直至遍历到约束条件的节点为叶子节点。
第三判断模块,判断第一约束条件对应的约束结果是否与请求信息中包含的参数数据相匹配,在匹配的情况下,确定所要请求的产品对象校验成功,并返回执行读取模块。
此处需要说明的是,上述读取模块、第一判断模块、第二判断模块以及第三判断模块对应于实施例一中的步骤A至步骤D,四个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
在一种可选地实施例中,本申请提供的装置还可以包括:结束单元,用于在遍历完产品约束信息集合中的所有产品约束信息之后,校验产品对象结束。
在一种可选地实施例中,本申请提供的装置还可以包括:处理单元,用于在产品对象校验失败的情况下,确定当前账户请求产品对象失败,并返回报错信息。
此处需要说明的是,上述处理单元对应于实施例一中的步骤S50,该单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
在一种可选地实施例中,本申请提供的装置还可以包括:
计算单元,用于处理系统统计产品对象的数量,并计算与产品对象匹配的虚拟资源的数值。
转移单元,用于将与产品对象匹配的虚拟资源的数值进行转移处理,在转移成功的情况下,返回转移成功提示信息,在转移失败的情况,返回错误提示信息。
此处需要说明的是,上述计算单元、转移单元对应于实施例一中的步骤S30至S32,两个单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
实施例3
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行获取产品对象的方法中以下步骤的程序代码:接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统。
可选地,图15是根据本发明实施例的一种计算机终端的结构框图。如图15所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器、存储器。
其中,上述存储器可用于存储软件程序以及模块,如本发明实施例中的获取产品对象的方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的获取产品对象的方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统。
可选的,上述处理器还可以执行如下步骤的程序代码:当前账户访问对应的产品页面,读取产品配置信息以及产品约束信息集合,其中,产品配置信息包括:多个产品参数以及每个产品参数对应的至少一个参数数据;根据产品约束信息集合将产品配置信息显示在产品页面中;当当前账户选定产品页面中显示的一个或多个产品参数以及对应的参数数据之后,产生待提交的产品请求信息。
可选的,上述处理器还可以执行如下步骤的程序代码:根据当前账户的账户信息判断是否存在与当前账户对应的特殊约束信息,其中,账户信息至少包括如下任意一种或多种数据:账户名称、当前账户的登录次数、登录频率、当前账户请求产品对象的数量和频率;如果存在,则使用特殊约束信息更新产品约束信息集合,并输出更新后的产品约束信息集合。
可选的,上述处理器还可以执行如下步骤的程序代码:约束模型中以约束名称为根节点,每个约束条件作为子节点,约束结果为叶子节点,其中,当约束条件的所对应的子节点作为父亲节点时,约束模型还包括至少一个基于子约束条件所确定的孙子节点,以此得到树状结构的约束模型。
可选的,上述处理器还可以执行如下步骤的程序代码:步骤A,读取产品约束信息集合中的第一产品约束信息;步骤B,判断第一产品约束信息的第一约束条件是否与请求信息中包含的产品参数相匹配,在匹配的情况下,执行步骤C,否则,返回步骤A来读取产品约束信息集合中的第二产品约束信息,其中,第二产品约束信息为第一产品约束信息的下一条信息;步骤C,判断第一产品信息的第一约束条件的节点是否为约束模型中的叶子节点,如果不是叶子节点,执行步骤D,否则,返回步骤B来深度搜索遍历约束条件的子约束条件,直至遍历到约束条件的节点为叶子节点;步骤D,判断第一约束条件对应的约束结果是否与请求信息中包含的参数数据相匹配,在匹配的情况下,确定所要请求的产品对象校验成功,并返回步骤A来深度遍历产品约束信息集合中的下一条产品约束信息。
可选的,上述处理器还可以执行如下步骤的程序代码:在使用上述步骤A至步骤D遍历完产品约束信息集合中的所有产品约束信息之后,校验产品对象结束
可选的,上述处理器还可以执行如下步骤的程序代码:在产品对象校验失败的情况下,确定当前账户请求产品对象失败,并返回报错信息。
可选的,上述处理器还可以执行如下步骤的程序代码:处理系统统计产品对象的数量,并计算与产品对象匹配的虚拟资源的数值;将与产品对象匹配的虚拟资源的数值进行转移处理,在转移成功的情况下,返回转移成功提示信息,在转移失败的情况,返回错误提示信息。
采用本发明实施例,提供了一种获取产品对象的方法。通过接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统,解决了相关技术中,用户在进行产品配置选择时会不断调用系统后台来校验约束条件,导致系统性能低下的技术问题。
本领域普通技术人员可以理解,图15所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图15其并不对上述电子装置的结构造成限定。例如,计算机终端15还可包括比图15中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图15所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的获取产品对象的方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收当前账户提交的产品请求信息,其中,产品请求信息中包含了当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;根据产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存产品约束信息,产品约束信息包括:约束名称、至少一个约束条件和约束结果;遍历至少一个产品约束信息,如果在任意一个产品约束信息中查询得到与请求信息中包含的产品参数相匹配的约束条件,以及与参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;在产品对象校验成功的情况下,提交产品对象至处理系统。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (16)

1.一种获取产品对象的方法,其特征在于,包括:
接收当前账户提交的产品请求信息,其中,所述产品请求信息中包含了所述当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;
根据所述产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存所述产品约束信息;
遍历所述至少一个产品约束信息,如果在任意一个所述产品约束信息中查询得到与所述请求信息中包含的产品参数相匹配的约束条件,以及与所述参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;
在所述产品对象校验成功的情况下,提交所述产品对象至处理系统;
其中,所述产品约束信息为所述产品对象的组成模块之间的约束限制。
2.根据权利要求1所述的方法,其特征在于,在接收当前账户提交的产品请求信息之前,所述方法还包括:
所述当前账户访问对应的产品页面,读取产品配置信息以及所述产品约束信息集合,其中,所述产品配置信息包括:多个产品参数以及每个产品参数对应的至少一个参数数据;
根据所述产品约束信息集合将所述产品配置信息显示在所述产品页面中;
当所述当前账户选定所述产品页面中显示的一个或多个产品参数以及对应的参数数据之后,产生待提交的所述产品请求信息。
3.根据权利要求2所述的方法,其特征在于,在读取产品配置信息以及所有的约束信息之后,所述方法还包括:
根据所述当前账户的账户信息判断是否存在与所述当前账户对应的特殊约束信息,其中,所述账户信息至少包括如下任意一种或多种数据:账户名称、所述当前账户的登录次数、登录频率、所述当前账户请求产品对象的数量和频率;
如果存在,则使用所述特殊约束信息更新所述产品约束信息集合,并输出更新后的产品约束信息集合。
4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述产品约束信息包括:约束名称、至少一个约束条件和约束结果,其中,约束模型中以所述约束名称为根节点,每个约束条件作为子节点,所述约束结果为叶子节点,其中,当所述约束条件的所对应的子节点作为父亲节点时,所述约束模型还包括至少一个基于子约束条件所确定的孙子节点,以此得到树状结构的所述约束模型。
5.根据权利要求4所述的方法,其特征在于,遍历所述至少一个产品约束信息,如果在任意一个所述产品约束信息中查询得到与所述请求信息中包含的产品参数相匹配的约束条件,以及与所述参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功,包括:
步骤A,读取所述产品约束信息集合中的第一产品约束信息;
步骤B,判断所述第一产品约束信息的第一约束条件是否与所述请求信息中包含的产品参数相匹配,在匹配的情况下,执行步骤C,否则,返回所述步骤A来读取所述产品约束信息集合中的第二产品约束信息,其中,所述第二产品约束信息为所述第一产品约束信息的下一条信息;
步骤C,判断所述第一产品约束信息的第一约束条件的节点是否为所述约束模型中的叶子节点,如果不是叶子节点,执行步骤D,否则,返回所述步骤B来深度搜索遍历所述约束条件的子约束条件,直至遍历到所述约束条件的节点为所述叶子节点;
步骤D,判断第一约束条件对应的约束结果是否与所述请求信息中包含的参数数据相匹配,在匹配的情况下,确定所述所要请求的产品对象校验成功,并返回所述步骤A来深度遍历所述产品约束信息集合中的下一条产品约束信息。
6.根据权利要求5所述的方法,其特征在于,在使用上述步骤A至步骤D遍历完所述产品约束信息集合中的所有产品约束信息之后,校验所述产品对象结束。
7.根据权利要求1所述的方法,其特征在于,在所述产品对象校验失败的情况下,确定所述当前账户请求所述产品对象失败,并返回报错信息。
8.根据权利要求1所述的方法,其特征在于,在提交所述产品对象至处理系统之后,所述方法还包括:
所述处理系统统计所述产品对象的数量,并计算与所述产品对象匹配的虚拟资源的数值;
将与所述产品对象匹配的虚拟资源的数值进行转移处理,在转移成功的情况下,返回转移成功提示信息,在转移失败的情况,返回错误提示信息。
9.一种获取产品对象的装置,其特征在于,包括:
接收单元,用于接收当前账户提交的产品请求信息,其中,所述产品请求信息中包含了所述当前账户所要请求的产品对象的至少一个产品参数和对应的参数数据;
调用单元,用于根据所述产品请求信息调用预先保存的至少一个产品约束信息,其中,采用树状结构的约束模型保存所述产品约束信息,所述产品约束信息包括:约束名称、至少一个约束条件和约束结果;
遍历单元,用于遍历所述至少一个产品约束信息,如果在任意一个所述产品约束信息中查询得到与所述请求信息中包含的产品参数相匹配的约束条件,以及与所述参数数据相匹配的约束结果,则确定所要请求的产品对象校验成功;
提交单元,用于在所述产品对象校验成功的情况下,提交所述产品对象至处理系统;
其中,所述产品约束信息为所述产品对象的组成模块之间的约束限制。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
读取单元,用于所述当前账户访问对应的产品页面,读取产品配置信息以及产品约束信息集合,其中,所述产品配置信息包括:多个产品参数以及每个产品参数对应的至少一个参数数据;
显示单元,用于根据所述产品约束信息集合将所述产品配置信息显示在所述产品页面中;
产生单元,用于当所述当前账户选定所述产品页面中显示的一个或多个产品参数以及对应的参数数据之后,产生待提交的所述产品请求信息。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
判断单元,用于根据所述当前账户的账户信息判断是否存在与所述当前账户对应的特殊约束信息,其中,所述账户信息至少包括如下任意一种或多种数据:账户名称、所述当前账户的登录次数、登录频率、所述当前账户请求约束产品对象的数量和频率;如果存在,则使用所述特殊约束信息更新所述产品约束信息集合,并输出更新后的产品约束信息集合。
12.根据权利要求9至11中任意一项所述的装置,其特征在于,约束模型中以所述约束名称为根节点,每个约束条件作为子节点,所述约束结果为叶子节点,其中,当所述约束条件的所对应的子节点作为父亲节点时,所述约束模型还包括至少一个基于子约束条件所确定的孙子节点,以此得到树状结构的所述约束模型。
13.根据权利要求12所述的装置,其特征在于,所述遍历单元包括:
读取模块,用于读取所述产品约束信息集合中的第一产品约束信息;
第一判断模块,用于判断所述第一产品约束信息的第一约束条件是否与所述请求信息中包含的产品参数相匹配,在匹配的情况下,执行第二判断模块,否则,返回执行所述读取模块来读取所述产品约束信息集合中的第二产品约束信息,其中,所述第二产品约束信息为所述第一产品约束信息的下一条信息;
所述第二判断模块,判断所述第一产品约束信息的第一约束条件的节点是否为所述约束模型中的叶子节点,如果不是叶子节点,执行第三判断模块,否则,返回执行所述第一判断模块来深度搜索遍历所述约束条件的子约束条件,直至遍历到所述约束条件的节点为所述叶子节点;
所述第三判断模块,判断第一约束条件对应的约束结果是否与所述请求信息中包含的参数数据相匹配,在匹配的情况下,确定所述所要请求的产品对象校验成功,并返回执行所述读取模块。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:结束单元,用于在遍历完所述产品约束信息集合中的所有产品约束信息之后,控制校验所述产品对象结束。
15.根据权利要求9所述的装置,其特征在于,所述装置还包括:处理单元,用于在所述产品对象校验失败的情况下,确定所述当前账户请求所述产品对象失败,并返回报错信息。
16.根据权利要求9所述的装置,其特征在于,所述装置还包括:
计算单元,用于所述处理系统统计所述产品对象的数量,并计算与所述产品对象匹配的虚拟资源的数值;
转移单元,用于将与所述产品对象匹配的虚拟资源的数值进行转移处理,在转移成功的情况下,返回转移成功提示信息,在转移失败的情况,返回错误提示信息。
CN201610012415.XA 2016-01-08 2016-01-08 获取产品对象的方法及装置 Active CN106959952B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610012415.XA CN106959952B (zh) 2016-01-08 2016-01-08 获取产品对象的方法及装置
PCT/CN2016/112923 WO2017118336A1 (zh) 2016-01-08 2016-12-29 获取产品对象的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610012415.XA CN106959952B (zh) 2016-01-08 2016-01-08 获取产品对象的方法及装置

Publications (2)

Publication Number Publication Date
CN106959952A CN106959952A (zh) 2017-07-18
CN106959952B true CN106959952B (zh) 2019-08-13

Family

ID=59274146

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610012415.XA Active CN106959952B (zh) 2016-01-08 2016-01-08 获取产品对象的方法及装置

Country Status (2)

Country Link
CN (1) CN106959952B (zh)
WO (1) WO2017118336A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107909494B (zh) * 2017-12-08 2020-07-21 中国平安财产保险股份有限公司 保险数据信息的配置方法、装置、计算机设备和存储介质
CN108133360A (zh) * 2018-01-19 2018-06-08 国家电网公司 成本中心校验方法及服务器
CN108874670A (zh) * 2018-06-20 2018-11-23 上海哔哩哔哩科技有限公司 产品特征多用户编辑方法、服务器、系统及存储介质
CN108845942B (zh) * 2018-06-20 2024-03-12 上海幻电信息科技有限公司 产品特征管理方法、装置、系统及存储介质
CN109918119A (zh) * 2019-02-12 2019-06-21 无锡华云数据技术服务有限公司 一种约束配置方法、装置及电子设备
CN117235396B (zh) * 2023-11-13 2024-03-22 广州品唯软件有限公司 一种精选楼层入参的校验方法、装置、设备及存储介质
CN117829044B (zh) * 2024-03-01 2024-05-14 上海合见工业软件集团有限公司 一种eda约束检测系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344949A (zh) * 2008-06-10 2009-01-14 熊刚 钻石珠宝网络销售系统中的高级互动式搜索方法
CN101702157A (zh) * 2009-10-28 2010-05-05 金蝶软件(中国)有限公司 一种实现对树节点进行选择的方法和装置
CN101957973A (zh) * 2010-10-29 2011-01-26 江苏瑞蚨通软件科技有限公司(中外合资) 一种商品推荐系统
CN103020240A (zh) * 2012-12-18 2013-04-03 江苏乐买到网络科技有限公司 一种在线购物平台的商品检索方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014319A1 (en) * 2001-07-05 2003-01-16 International Business Machines Corporation Universal world wide Web user shopping cart transferable with its load from Web page to Web page
US9519926B2 (en) * 2012-12-05 2016-12-13 Ebay Inc. Buy now option from map view

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344949A (zh) * 2008-06-10 2009-01-14 熊刚 钻石珠宝网络销售系统中的高级互动式搜索方法
CN101702157A (zh) * 2009-10-28 2010-05-05 金蝶软件(中国)有限公司 一种实现对树节点进行选择的方法和装置
CN101957973A (zh) * 2010-10-29 2011-01-26 江苏瑞蚨通软件科技有限公司(中外合资) 一种商品推荐系统
CN103020240A (zh) * 2012-12-18 2013-04-03 江苏乐买到网络科技有限公司 一种在线购物平台的商品检索方法

Also Published As

Publication number Publication date
WO2017118336A1 (zh) 2017-07-13
CN106959952A (zh) 2017-07-18

Similar Documents

Publication Publication Date Title
CN106959952B (zh) 获取产品对象的方法及装置
US20100057776A1 (en) Dynamic extension fields for business objects
US20200143387A1 (en) Method and apparatus for autonomous services composition
CN106981004A (zh) 用于对商品供应商的自主选择的设备、方法和系统
CA2592217C (en) A computer-implemented hierarchical revenue model to manage revenue allocations among derived product developers in a networked system
CN107705151A (zh) 广告投放调控的展现方法及装置
US11556733B2 (en) System and method for auto-completion of ICS flow using artificial intelligence/machine learning
CN110535679A (zh) 切片的管理方法、架构、网络切片销售平台和管理系统
CN109670903B (zh) 物品的处理方法、装置、存储介质和电子装置
CN107343294A (zh) 背景数据传输策略配置方法及装置
CN110232178A (zh) 报表生成方法及装置
CN109948989A (zh) 基于区块链的订单状态更新方法、装置、设备及存储介质
CN106998314A (zh) 账户交互方法及装置
CN106802797A (zh) 一种应用程序编程接口的生成方法及装置
US11531651B1 (en) Dynamic data schema service
TW200307879A (en) Determining a distribution of a group purchase among a number of sellers that substantially minimizes an overall price of the group purchase
US20080292075A1 (en) Method and system for quoting, pricing and ordering telecommunications services
US10699325B2 (en) Web service method
CN110210885A (zh) 挖掘潜在客户的方法、装置、设备及可读存储介质
CN110852886B (zh) 基于联盟链的二手交易与物品借还系统
TWI734733B (zh) 獲取產品對象的方法及裝置
CN109003121A (zh) 项目创建方法和装置、共享平台
US20240112237A1 (en) Using decision trees to provide a guided e-commerce experience
CN114900556B (zh) 多云异构环境下基于服务偏好学习的云互联方法及系统
US11328228B2 (en) Location allocation planning

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