订单处理方法及系统、计算机系统和计算机可读存储介质转让专利

申请号 : CN201810978141.9

文献号 : CN110858350A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王文卿冯彦涛邹文静乔晓强王景照曾文锋管世明

申请人 : 北京京东尚科信息技术有限公司北京京东世纪贸易有限公司

摘要 :

本公开提供了一种订单处理方法,包括:获取订单当前的状态信息;根据订单当前的状态信息确定是否对订单的运费进行重新计算;以及在需要对订单的运费进行重新计算的情况下,按照运费计算策略对订单的运费进行重新计算。本公开还提供了一种订单处理系统、一种计算机系统和一种计算机可读存储介质。

权利要求 :

1.一种订单处理方法,包括:

获取订单当前的状态信息;

根据所述订单当前的状态信息确定是否对所述订单的运费进行重新计算;以及在需要对所述订单的运费进行重新计算的情况下,按照运费计算策略对所述订单的运费进行重新计算。

2.根据权利要求1所述的方法,其中,按照运费计算策略对所述订单的运费进行重新计算包括:确定所述订单当前所对应的实际运费规则,根据所述实际运费规则对所述订单的运费进行重新计算;或者根据所述订单的状态信息未发生变化时所对应的历史版本运费规则,对所述订单的运费进行重新计算。

3.根据权利要求2所述的方法,其中,按照运费计算策略对所述订单的运费进行重新计算包括:判断所述订单是否已经发生配送费用;

在所述订单已经发生配送费用的情况下,获取所述订单已经发生的配送费用;以及根据所述订单已经发生的配送费用以及所述订单所对应的运费计算规则对所述订单的运费进行重新计算,其中,所述运费计算规则为所述实际运费规则或所述历史版本运费规则。

4.根据权利要求3所述的方法,其中,判断所述订单是否已经发生配送费用包括:获取配送的所述订单所包含的货品当前的位置信息;以及根据所述订单所包含的货品当前的位置信息判断所述订单是否已经发生配送费用。

5.根据权利要求3所述的方法,其中,所述实际运费规则或所述历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。

6.根据权利要求1所述的方法,其中,所述状态信息包括以下之一:订单正常,订单取消,订单信息修改,订单合并。

7.一种订单处理系统,包括:

获取模块,用于获取订单当前的状态信息;

第一确定模块,用于根据所述订单当前的状态信息确定是否对所述订单的运费进行重新计算;以及计算模块,用于在需要对所述订单的运费进行重新计算的情况下,按照运费计算策略对所述订单的运费进行重新计算。

8.根据权利要求7所述的系统,其中,所述计算模块包括:第一计算单元,用于确定所述订单当前所对应的实际运费规则,根据所述实际运费规则对所述订单的运费进行重新计算;或者第二计算单元,用于根据所述订单的状态信息未发生变化时所对应的历史版本运费规则,对所述订单的运费进行重新计算。

9.根据权利要求8所述的系统,其中,所述计算模块包括:判断单元,用于判断所述订单是否已经发生配送费用;

获取单元,用于在所述订单已经发生配送费用的情况下,获取所述订单已经发生的配送费用;以及第三计算单元,用于根据所述订单已经发生的配送费用以及所述订单所对应的运费计算规则对所述订单的运费进行重新计算,其中,所述运费计算规则为所述实际运费规则或所述历史版本运费规则。

10.根据权利要求9所述的系统,其中,所述判断单元包括:获取子单元,用于获取配送的所述订单所包含的货品当前的位置信息;以及判断子单元,用于根据所述订单所包含的货品当前的位置信息判断所述订单是否已经发生配送费用。

11.根据权利要求9所述的系统,其中,所述实际运费规则或所述历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。

12.根据权利要求7所述的系统,其中,所述状态信息包括以下之一:订单正常,订单取消,订单信息修改,订单合并。

13.一种计算机系统,包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,

其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至6中任一项所述的订单处理方法。

14.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至6中任一项所述的订单处理方法。

说明书 :

订单处理方法及系统、计算机系统和计算机可读存储介质

技术领域

[0001] 本公开涉及仓储物流领域,更具体地,涉及一种订单处理方法及系统、一种计算机系统和一种计算机可读存储介质。

背景技术

[0002] 目前,运输货品所需的运费高低对企业的影响越来越大。以电商领域为例,用户在电子商城下单购物到商品最终到达用户手中,配送是必不可少的一个环节,运输货品所需的运费高低影响电商公司的订单量,较准确地确定订单的运费影响电商公司的用户满意度。
[0003] 然而,相关技术中的运费确定方式较为简单,难以满足用户的需求。例如,用户在下单之后会修改订单的多种信息,如订单中的货品种类,订单中的货品数量或体积等等,相关技术中一般通过取消订单重新购买,或者原件退回后重新发货,这样将增加配送成本和配送时间,也难以满足用户的需求。
[0004] 因此,在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:
[0005] 如何提高效率且较准确地对订单的运输费用进行计算成为亟待解决的技术问题。

发明内容

[0006] 有鉴于此,本公开提供了一种订单处理方法,包括获取订单当前的状态信息;根据上述订单当前的状态信息确定是否对上述订单的运费进行重新计算;以及在需要对上述订单的运费进行重新计算的情况下,按照运费计算策略对上述订单的运费进行重新计算。
[0007] 根据本公开的实施例,按照运费计算策略对上述订单的运费进行重新计算包括确定上述订单当前所对应的实际运费规则,根据上述实际运费规则对上述订单的运费进行重新计算;或者根据上述订单的状态信息未发生变化时所对应的历史版本运费规则,对上述订单的运费进行重新计算。
[0008] 根据本公开的实施例,按照运费计算策略对上述订单的运费进行重新计算包括判断上述订单是否已经发生配送费用;在上述订单已经发生配送费用的情况下,获取上述订单已经发生的配送费用;以及根据上述订单已经发生的配送费用以及上述订单所对应的运费计算规则对上述订单的运费进行重新计算,其中,上述运费计算规则为上述实际运费规则或上述历史版本运费规则。
[0009] 根据本公开的实施例,判断上述订单是否已经发生配送费用包括获取配送的上述订单所包含的货品当前的位置信息;以及根据上述订单所包含的货品当前的位置信息判断上述订单是否已经发生配送费用。
[0010] 根据本公开的实施例,上述实际运费规则或上述历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。
[0011] 根据本公开的实施例,上述状态信息包括以下之一:订单正常,订单取消,订单信息修改,订单合并。
[0012] 本公开的另一个方面提供了一种订单处理系统,包括获取模块、第一确定模块和计算模块。获取模块用于获取订单当前的状态信息;第一确定模块用于根据上述订单当前的状态信息确定是否对上述订单的运费进行重新计算;以及计算模块用于在需要对上述订单的运费进行重新计算的情况下,按照运费计算策略对上述订单的运费进行重新计算。
[0013] 根据本公开的实施例,上述计算模块包括第一计算单元或第二计算单元。第一计算单元用于确定上述订单当前所对应的实际运费规则,根据上述实际运费规则对上述订单的运费进行重新计算;或者第二计算单元用于根据上述订单的状态信息未发生变化时所对应的历史版本运费规则,对上述订单的运费进行重新计算。
[0014] 根据本公开的实施例,上述计算模块包括判断单元、获取单元和第三计算单元。判断单元用于判断上述订单是否已经发生配送费用;获取单元用于在上述订单已经发生配送费用的情况下,获取上述订单已经发生的配送费用;以及第三计算单元用于根据上述订单已经发生的配送费用以及上述订单所对应的运费计算规则对上述订单的运费进行重新计算,其中,上述运费计算规则为上述实际运费规则或上述历史版本运费规则。
[0015] 根据本公开的实施例,上述判断单元包括获取子单元和判断子单元。获取子单元用于获取配送的上述订单所包含的货品当前的位置信息;以及判断子单元用于根据上述订单所包含的货品当前的位置信息判断上述订单是否已经发生配送费用。
[0016] 根据本公开的实施例,上述实际运费规则或上述历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。
[0017] 根据本公开的实施例,上述状态信息包括以下之一:订单正常,订单取消,订单信息修改,订单合并。
[0018] 本公开的另一个方面提供了一种计算机系统,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如上所述的订单处理方法。
[0019] 本公开的另一个方面提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现如上所述的订单处理方法。
[0020] 本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的订单处理方法。
[0021] 根据本公开的实施例,根据订单当前的状态信息确定是否对订单的运费进行重新计算,例如,当订单取消,订单地址信息修改,订单合并等状态信息发生变化的情况下,可以对订单的运费进行重新计算,所以至少部分地克服了相关技术中当订单状态发生变化时,所产生的运费不合理的技术问题,进而达到了提高效率且较准确地对订单的运输费用进行计算的技术效果。

附图说明

[0022] 通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0023] 图1示意性示出了根据本公开实施例的可以应用订单处理方法及系统的示例性系统架构;
[0024] 图2示意性示出了根据本公开实施例的订单处理方法的流程图;
[0025] 图3示意性示出了根据本公开实施例的根据历史版本运费规则进行运费重新计算的流程图;
[0026] 图4示意性示出了根据本公开实施例的按照运费计算策略对订单的运费进行重新计算的流程图;
[0027] 图5示意性示出了根据本公开实施例的判断订单是否已经发生配送费用的流程图;
[0028] 图6示意性示出了根据本公开实施例的根据订单已经发生的配送费用以及订单所对应的运费计算规则对订单的运费进行重新计算的流程图;
[0029] 图7示意性示出了根据本公开实施例的订单配送的示意图;
[0030] 图8示意性示出了根据本公开实施例的订单中的商品信息变更后对订单的运费进行重新计算的流程图;
[0031] 图9示意性示出了根据本公开实施例的订单处理系统的框图;
[0032] 图10示意性示出了根据本公开实施例的计算模块的框图;
[0033] 图11示意性示出了根据本公开实施例的判断单元的框图;
[0034] 图12示意性示出了根据本公开另一实施例的订单处理系统的框图;以及[0035] 图13示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。

具体实施方式

[0036] 以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
[0037] 在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0038] 在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
[0039] 在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。
[0040] 本公开的实施例提供了一种订单处理方法,包括获取订单当前的状态信息;根据订单当前的状态信息确定是否对订单的运费进行重新计算;以及在需要对订单的运费进行重新计算的情况下,按照运费计算策略对订单的运费进行重新计算。
[0041] 图1示意性示出了根据本公开实施例的可以应用订单处理方法及系统的示例性系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
[0042] 如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
[0043] 用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
[0044] 终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0045] 服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
[0046] 需要说明的是,本公开实施例所提供的订单处理方法一般可以由服务器105执行。相应地,本公开实施例所提供的订单处理系统一般可以设置于服务器105中。本公开实施例所提供的订单处理方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的订单处理系统也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。或者,本公开实施例所提供的订单处理方法也可以由终端设备101、
102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。相应地,本公开实施例所提供的订单处理系统也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。
[0047] 应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0048] 在相关技术中,当订单修改时,如果订单已经开始配送,无法计算已发生的运费;订单的金额、重量、体积等信息发生变化,用户使用的运费规则可能发生变化,存在用户多支付运费的情况,容易客户投诉;用户修改商品或者修改地址等信息时,无法重新计算运费只能取消订单重新购买;或者原件退回后重新发货;增加配送成本和配送时间,基于此,如何提高效率且较准确地对订单的运输费用进行计算成为亟待解决的技术问题。
[0049] 图2示意性示出了根据本公开实施例的订单处理方法的流程图。
[0050] 如图2所示,该方法包括操作S210~S230。
[0051] 在操作S210,获取订单当前的状态信息。
[0052] 根据本公开的实施例,订单当前的状态信息一般可以用于表征订单是否需要重新计算运费的信息,例如订单当前的状态信息可以包括以下之一:订单正常,订单取消,订单信息修改,订单合并。根据本公开的实施例,订单信息修改可以是订单的地址信息发生变化,或者订单中物品的金额、重量、体积等信息发生变化。
[0053] 在操作S220,根据订单当前的状态信息确定是否对订单的运费进行重新计算。
[0054] 根据本公开的实施例,例如,当订单正常的情况下,可以不对订单的运费进行重新计算,当订单信息修改的情况下,可以对订单的运费进行重新计算。
[0055] 在操作S230,在需要对订单的运费进行重新计算的情况下,按照运费计算策略对订单的运费进行重新计算。
[0056] 根据本公开的实施例,例如,当订单信息修改时,如订单的金额、重量、体积等信息发生变化时,可以按照新的订单信息重新计算运费,例如对于多收的运费可以给用户一定的补偿措施,对于少收的用户可以提示用户补交部分运费后可以继续签收。
[0057] 根据本公开的实施例,根据订单当前的状态信息确定是否对订单的运费进行重新计算,例如,当订单取消,订单地址信息修改,订单合并等状态信息发生变化的情况下,可以对订单的运费进行重新计算,所以至少部分地克服了相关技术中当订单状态发生变化时,所产生的运费不合理的技术问题,进而达到了提高效率且较准确地对订单的运输费用进行计算的技术效果。
[0058] 根据本公开的实施例,按照运费计算策略对订单的运费进行重新计算包括确定订单当前所对应的实际运费规则,根据实际运费规则对订单的运费进行重新计算。
[0059] 或者,根据订单的状态信息未发生变化时所对应的历史版本运费规则,对订单的运费进行重新计算。
[0060] 根据本公开的实施例,可以根据订单的下单时间、订单类别、配送时效、商品分类、商品信息、订单总额、订单重量、优惠金额、运费金额和收货地址中的一种或多种信息,确定重新计算订单运费时的运费规则。例如,历史下单时间是在促销期间内下单的,可以根据订单的状态信息未发生变化时(即促销期间内)所对应的历史版本运费规则,对订单的运费进行重新计算。
[0061] 根据本公开的实施例,通过运费重计算形式进行运费计算,利用原有运费计算逻辑提高了运费数据处理中代码的复用性,有利于改善运费重计算的扩展,提供了多种运费重计算策略设置选择,改善了运费重计算数据处理的灵活性,使得计算更精准。
[0062] 图3示意性示出了根据本公开实施例的根据历史版本运费规则进行运费重新计算的流程图。
[0063] 如图3所示,可以在运费前端修改运费规则,同步历史运费规则并按时间更新运费缓存数据,在运费中台更新运费规则,从而使当前的运费缓存数据发生变化。当用户修改订单信息的时候,可以匹配出历史版本运费规则进行重新计算。
[0064] 例如,运费规则调整,由规则满100元免10公斤,调整为满150元免10公斤。用户变更订单金额时具体流程如下所示:
[0065] 运费系统可以自动更新当前实际运费版本的失效时间为当前时间,同步运费历史数据和缓存信息,运费系统创建新版本的运费规则生效时间为当前时间,失效时间可以不限定。用户修改订单信息,原订单金额130元,修改成110元;运费系统根据用户修改后的订单信息计算运费,按照订单创建时间匹配历史版本的运费规则,即满100免10公斤。运费中台复用运费计算组件,按照历史版本的运费规则重新计算运费。
[0066] 如运费没有发生变更,用户不需要支付相关运费,订单正常配送。如果运费发生变更则需要用户支付相关费用后继续配送,如果存在多支付的情况,可以给用户一定的补偿措施,用户不需要重新下单。
[0067] 根据本公开的实施例,用户在修改订单时重新计算运费,还可以提示用户退还运费还是需要补充运费,有利于提示用户是否有必要修改订单信息。
[0068] 下面参考图4~图8,结合具体实施例对图2所示的方法做进一步说明。
[0069] 图4示意性示出了根据本公开实施例的按照运费计算策略对订单的运费进行重新计算的流程图。
[0070] 如图4所示,按照运费计算策略对订单的运费进行重新计算包括操作S231~S233。
[0071] 在操作S231,判断订单是否已经发生配送费用。
[0072] 在操作S232,在订单已经发生配送费用的情况下,获取订单已经发生的配送费用。
[0073] 在操作S233,根据订单已经发生的配送费用以及订单所对应的运费计算规则对订单的运费进行重新计算,其中,运费计算规则为实际运费规则或历史版本运费规则。
[0074] 根据本公开的实施例,可以用于计算变更状态信息后的订单的运费,例如,可用于重新计算修改配送地址、商品数量等信息后的订单运费,也可以用于订单配送途中修改增加地址或商品部分已发生的费用。
[0075] 本公开的运费计算涉及到订单信息的获取、加工和运费的重新计算,因此,可以与订单系统发生数据通信,对于配送途中的订单需要获取配送状态,如果用户支付相关费用后可以通知配送修改相关信息,可以与配送系统发生数据通信。通过计算已发生的配送费用,可以较精确的计算订单运费,减少企业成本,提高用户体验。
[0076] 图5示意性示出了根据本公开实施例的判断订单是否已经发生配送费用的流程图。
[0077] 如图5所示,根据本公开的实施例,判断订单是否已经发生配送费用包括操作S2311~S2312。
[0078] 在操作S2311,获取配送的订单所包含的货品当前的位置信息。
[0079] 在操作S2312,根据订单所包含的货品当前的位置信息判断订单是否已经发生配送费用。
[0080] 根据本公开的实施例,如果订单所包含的货品当前的位置信息与原始位置信息不同,说明订单已经发生配送费用。此时如果确定需要对订单运费进行重新计算,则需要考虑已经发生的配送费用这一因素。
[0081] 根据本公开的实施例,例如,根据地址变更计算运费的处理过程,当配地址变更时,例如当前配送地址从北京-吉林,变更后收货地址为上海,按照变更后的地址计算相关配送运费。
[0082] 根据本公开的实施例,订单修改时,如果订单已经开始配送,获取订单配送位置,按照当前地址计算已经发生的正逆项费用。
[0083] 图6示意性示出了根据本公开实施例的根据订单已经发生的配送费用以及订单所对应的运费计算规则对订单的运费进行重新计算的流程图。
[0084] 如图6所示,用户变更订单收货地址,订单修改后的地址调运费系统,重新计算系统运费;运费系统获取当前订单的配送状态,例如,从北京-吉林,目前已经开始配送,配送到沈阳,根据GIS接口获取北京到沈阳的距离,按照已经配送的距离计算北京到沈阳的费用,如果计算后的运费是8元则已发生费用为8元;按照从沈阳-上海的地址重新计算配送的运费规则,沈阳-上海的运费是10元则计算应收的运费是10元;从北京-吉林用户已经支付运费9元,则根据运费的规则如果需要收取已发生运费则需要用户补交运费9元,如果不需要叠加收取则用户只需要补交1元运费;用户补交相关运费后,通知配送系统改派相关订单;按照新的地址进行配送。如果没有开始配送或者计算后的运费不需要用户补交,可以直接变更地址,按照新的地址进行配送。
[0085] 图7示意性示出了根据本公开实施例的订单配送的示意图。
[0086] 如图7所示,货品由发货地点配送至第一收货地点的途中,如果订单配送地址信息发生变化,此时货物当前处于发货地点与第一收货地点之间,可以计算发货地点到当前位置所发生的配送费用,再计算由当前位置到重新确定的第二收货地点的配送费用。
[0087] 根据本公开的实施例,根据订单所包含的货品当前所到达的位置信息判断是否已经发生配送费用,该方式简单方便,可以提高计算效率,并且计算结果对消费者和企业相对来说都比较公平。用户修改订单相关信息,运费重新计算后用户只需要支付相关费用后,配送继续配送,能够保证订单正常配送,不需要用户重新下单,或者等到用户拒收返回始发地后再次重新发件,大大缩短了配送的时间。
[0088] 图8示意性示出了根据本公开实施例的订单中的商品信息变更后对订单的运费进行重新计算的流程图。
[0089] 如图8所示,描述了根据用户商品变更的处理过程,当用户下单时选择多个商品,由于用户原因导致拆成多个订单进行配送,例如用户购买A、B两个商品,用户只需要A,不想要B时,需要根据A商品的信息重新计算运费,即计算剩余订单的金额或重量等信息。如图7所示,用户变更商品。例如用户购买A、B两个商品,A40元,B90元,运费规则满90元免运费,商品金额不足90元需支付8元运费;运费计算剩余商品的金额,40元;根据运费规则匹配满90元免运费,目前商品不满足90元,需要用户支付8元运费;提示用户需支付8元运费;用户支付8元运费后,通知配送取出B商品退回,A商品继续配送。如果无需支付运费则直接通知配送退回B商品,如果A、B商品未发货则不需要通知配送,直接仅发出A商品即可,不需要用户重新下单。
[0090] 根据本公开的实施例,实际运费规则或历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。
[0091] 根据本公开的实施例,在制定不同运费规则时,可以考虑基础运费、续重运费、时效运费、保价费用等。运费规则也可以基于订单信息进行确定,例如订单信息包括下单时间、订单类别、配送时效、商品分类、商品信息、订单总额、订单重量、优惠金额、运费金额和收货地址等信息,根据确定出的运费规则确定订单的运费。例如,下单时间为晚上11点前,订单总额达到200元的订单,运费为0。下单时间为早上11点前,订单总额达到300元的订单,运费为0。
[0092] 根据本公开的实施例,可以提供不同的运费规则,商家可以根据业务类型设置不同的运费规则重新计算运费,有利于准确计算运费,节省用户运费。
[0093] 图9示意性示出了根据本公开实施例的订单处理系统的框图。
[0094] 如图9所示,订单处理系统400包括获取模块410、第一确定模块420和计算模块430。
[0095] 获取模块410用于获取订单当前的状态信息。
[0096] 第一确定模块420用于根据订单当前的状态信息确定是否对订单的运费进行重新计算。
[0097] 计算模块430用于在需要对订单的运费进行重新计算的情况下,按照运费计算策略对订单的运费进行重新计算。
[0098] 根据本公开的实施例,根据订单当前的状态信息确定是否对订单的运费进行重新计算,例如,当订单取消,订单地址信息修改,订单合并等状态信息发生变化的情况下,可以对订单的运费进行重新计算,所以至少部分地克服了相关技术中当订单状态发生变化时,所产生的运费不合理的技术问题,进而达到了提高效率且较准确地对订单的运输费用进行计算的技术效果。
[0099] 根据本公开的实施例,计算模块430包括第一计算单元或第二计算单元。
[0100] 第一计算单元用于确定订单当前所对应的实际运费规则,根据实际运费规则对订单的运费进行重新计算。或者第二计算单元用于根据订单的状态信息未发生变化时所对应的历史版本运费规则,对订单的运费进行重新计算。
[0101] 根据本公开的实施例,通过运费重计算形式进行运费计算,利用原有运费计算逻辑提高了运费数据处理中代码的复用性,有利于改善运费重计算的扩展,提供了多种运费重计算策略设置选择,改善了运费重计算数据处理的灵活性,使得计算更精准。
[0102] 图10示意性示出了根据本公开实施例的计算模块的框图。
[0103] 如图10所示,根据本公开的实施例,计算模块430包括判断单元431、获取单元432和第三计算单元433。
[0104] 判断单元431用于判断订单是否已经发生配送费用。
[0105] 获取单元432用于在订单已经发生配送费用的情况下,获取订单已经发生的配送费用。
[0106] 第三计算单元433用于根据订单已经发生的配送费用以及订单所对应的运费计算规则对订单的运费进行重新计算,其中,运费计算规则为实际运费规则或历史版本运费规则。
[0107] 通过计算已发生的配送费用,可以较精确的计算订单运费,减少企业成本,提高用户体验。
[0108] 图11示意性示出了根据本公开实施例的判断单元的框图。
[0109] 如图11所示,根据本公开的实施例,判断单元431包括获取子单元4311和判断子单元4312。
[0110] 获取子单元4311用于获取配送的订单所包含的货品当前的位置信息。
[0111] 判断子单元4312用于根据订单所包含的货品当前的位置信息判断订单是否已经发生配送费用。
[0112] 根据本公开的实施例,根据订单所包含的货品当前所到达的位置信息判断是否已经发生配送费用,该方式简单方便,可以提高计算效率,并且计算结果对消费者和企业相对来说都比较公平。用户修改订单相关信息,运费重新计算后用户只需要支付相关费用后,配送继续配送,能够保证订单正常配送,不需要用户重新下单,或者等到用户拒收返回始发地后再次重新发件,大大缩短了配送的时间。
[0113] 根据本公开的实施例,实际运费规则或历史版本运费规则包括以下一种或多种类型:按件重新计费、按重量重新计费、按体积重新计费、按配送地区重新计费和按订单金额重新计费。
[0114] 根据本公开的实施例,可以提供不同的运费规则,商家可以根据业务类型设置不同的运费规则重新计算运费,有利于准确计算运费,节省用户运费。
[0115] 根据本公开的实施例,上述状态信息包括以下之一:订单正常,订单取消,订单信息修改,订单合并。
[0116] 根据本公开的实施例,针对订单运费数据处理中重复处理比较多的特点,如订单取消,订单信息修改,订单合并,在运费数据的处理中,通过复用运费计算组件,提高了运费数据处理中代码的复用性和运费计算的统一性,提供了多种运费数据重新计算处理选择,改善了订单修改复杂业务的灵活性。
[0117] 图12示意性示出了根据本公开另一实施例的订单处理系统的框图。
[0118] 如图12所示,订单处理系统可以与外部应用系统相连接,用于处理应用系统中产生的订单数据。订单处理系统可以包括运费计算引擎,运费计算引擎可以包括上述获取模块、上述第一确定模块和计算模块,用于在需要对订单的运费进行重新计算的情况下,按照运费计算策略对订单的运费进行重新计算。运费配置管理可以使管理者修改运费计算策略,运费规则等信息,设置的不同规则可以存储在不同的缓存中。
[0119] 根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
[0120] 例如,获取模块410、第一确定模块420、计算模块430、判断单元431、获取单元432、第三计算单元433、获取子单元4311和判断子单元4312中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,获取模块410、第一确定模块420、计算模块430、判断单元431、获取单元432、第三计算单元433、获取子单元4311和判断子单元4312中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块410、第一确定模块420、计算模块430、判断单元431、获取单元432、第三计算单元433、获取子单元4311和判断子单元4312中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
[0121] 图13示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。图13示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0122] 如图13所示,根据本公开实施例的计算机系统500包括处理器501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。处理器501例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器501还可以包括用于缓存用途的板载存储器。处理器501可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
[0123] 在RAM 503中,存储有系统500操作所需的各种程序和数据。处理器501、ROM 502以及RAM 503通过总线504彼此相连。处理器501通过执行ROM 502和/或RAM 503中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 502和RAM 503以外的一个或多个存储器中。处理器501也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0124] 根据本公开的实施例,系统500还可以包括输入/输出(I/O)接口505,输入/输出(I/O)接口505也连接至总线504。系统500还可以包括连接至I/O接口505的以下部件中的一项或多项:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
[0125] 根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被处理器501执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0126] 本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
[0127] 根据本公开的实施例,计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。
[0128] 例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 502和/或RAM 503和/或ROM 502和RAM 503以外的一个或多个存储器。
[0129] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0130] 本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
[0131] 以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。