去年美妆社区 APP 上线自有商城,分享订单模块设计经验

2025-05-17
来源:万象资讯

去年,我们推出了自家的美妆社区APP,并设立了独立商城。随后,经过不断更新迭代,商城的各项功能模块已趋于完善。在此,我想分享一些心得体会,希望能与大家进行深入的交流。

商品的存在为交易提供了可能,因此我们首先介绍了《》,详细阐述了如何设计我们的订单模块。

也欢迎读一下很久前写的文章《》

一、订单是什么

订单原本代表的是您在购买商品后所获得的证明文件,但在电子商务领域,它却呈现出一种虚拟形态。

1.1、主流的下单方式

整个电商体系中常见的下单方式有2种,购物车下单和直接下单。

淘宝将其称为购物车结账或即时购买,一般情况下,消费者可根据个人喜好选择其中一种方式进行购物。然而,在秒杀等特定促销活动中,系统仅允许用户直接进行下单操作。

京东将其称作购物车结账或直接下单,但二者存在差异:在常规交易中,用户需借助购物车完成结账,而在秒杀活动中,消费者则拥有选择直接下单或使用购物车结账的灵活性。

1.2、订单的类型

由于不同的下单方式,其实导致订单的类型有2种。

概括而言,在购物车结算时,订单中必然含有基于SKU差异的若干个子订单,每个子订单均包含n件相同的SKU;至于直接下单的订单,它同样是由n件相同的SKU组成。

b2c网站商城建设方案_美妆社区APP商城订单模块设计_电商下单方式对比

随后,鉴于淘宝平台项目经理在后续功能升级中引入了购物车结算的新购物流程,他不得不制定了一套新的规则,即所谓的父订单与子订单制度。当然,这一举措的背后还有其他诸多因素。

在这次购物活动中,我们将其统称为交易,并由此产生了一个主订单编号。若该交易是通过购物车结算完成,则将衍生出N个分订单;而若是直接进行的即时购买,则仅包含一个分订单。

从技术层面分析,我们将其称作父订单,亦称作子订单,亦或是交易单的一种。子订单具体指的是交易中商品的具体清单,它和父订单之间可以是一对多的关联,通常是通过购物车功能生成的。

若一笔交易仅包含一个子订单,则tid等同于oid;此时,我们需关注结构体中的具体信息。若一笔交易包含多个子订单,类似于通过购物车进行购买,同样tid等于oid;此时,我们仍需关注结构体中的相关内容。

二、订单的逻辑拆分

根据以上的规则,订单逻辑上面应该按照这样的方式来拆分。

依据这种设计方案,我们能够实现支持顾客退款和退货,同时还能开展各类营销活动,比如设计促销活动和发放优惠券等功能。

三、订单的金额拆分

进一步确定订单金额的分配方式,具体包括营销活动带来的折扣如何分配至各个子订单,以及每个SKU的具体支付价格。

四、订单状态机

电商下单方式对比_美妆社区APP商城订单模块设计_b2c网站商城建设方案

订单的所处状态相当复杂,它影响着用户和商家各自的操作流程。

4.1、不含退款退货

若贵商城具备独特性,无需配备退款退货服务,那么其订单状态管理流程便会相对简明。

4.2、包含退款退货

这情况相对复杂,可以视作增加了一个状态层级。详细信息,您可以参考我另一篇名为《》的文章。

五、总结

订单模块的架构设计,上述内容已基本阐述完毕。依照此设计方法,至少能够满足多数商城在订单方面的需求。

您可以通过点击“我的订单”模块原型来深入了解订单详情,亦或直接点击“阅读原文”获取更多信息。

关于订单部分以及商品部分,它们与营销环节的相互联系,将在接下来的文章中予以详细阐述。

分享