和记娱乐


  • 和记娱乐 > 明升 >
    • 明升

    B2C自营商城的订单设计方案

    发布作者:和记娱乐  发布时间:2019-10-29

      去年我们的美妆社区APP,上线了自有商城。之后经过多次版本迭代,商城系统的模块已经基本健全,值此时间分享一些经验出来,希望可以共同交流。

      有了商品之后才有可能产生交易。所以先讲了《B2C自营商城的商品设计方案》,这篇讲解我们的订单模块怎么设计。

      淘宝称之为购物车结算和立即购买,正常情况下你可以任选一种去购物。但是在秒杀之类的特殊场景中,只支持直接下单。

      京东也称之为购物车结算和立即购买,不同的是,正常情况下你必须通过购物车去结算,秒杀情况下你可以选择立即购买和购物车结算。

      简单来说购物车结算的订单肯定包含了基于sku不同的多个子订单,而每个子订单包含n件同一sku。而立即购买的订单是包含n件同一sku。

      然后淘宝的PM因为后续增加了购物车结算这一下单方式,而不得不想出一套规则,那就是父订单和子订单。当然还有很多其他原因。

      此次购物,整体称之为交易,生成了一个父订单号。如果它是购物车结算,那么有N个子订单。如果他是立即购买,那么只有1个子订单。

      从技术角度来定义,那就是trade称为父订单,order称为子订单,或者说trade是一笔交易单,子订单是每笔交易中的商品明细单,trade与order可以是一对多的关系,trade是由使用购物车生成。

      当一笔交易只有一个子订单,那么tid=oid,这个时候主要看trade结构体里面的内容,当一笔交易有多笔子订单(类似于购物车购买方式),那么tid=oid,这个时候主要看order结构体里面的内容。

      基于这样的设计方式,才可以去支持退款退货,以及设计活动、优惠券等营销功能。

      进而得到订单的金额是如何拆分的,其中营销得来的优惠拆分到每一个子订单,以及每一个sku的实际支付单价。

      那么比较复杂,相当于多了一层状态机。具体可以查看我的另外一篇文章《如何绘画状态机来描述业务变化》。

      订单模块的架构设计,以上基本上把主要的内容讲了一遍。按照这样的方式去设计,至少可以兼顾大部分商城的订单需求。

      浪子,人人都是产品经理专栏作家,业务型PM,浪子PRD系列公众号langzisay。

      钱款全退为什么sku会有未全退的情况,一个订单SKU退完了,钱才全退的吧

      一个订单里面如果包含多个物品,这些物品可以根据某些规则分成一些子订单,这样便于后期对这些分出来的子订单进行特殊的操作:评论啊/退换货/啊。。。。我理解的

      嗯,通常是这样。但是不展示子订单号,不代表不展示子订单信息和子订单功能。

      很有帮助,感谢浪子,一系列电商产品的经验分享干货十足啊,作为电商产品新人受益颇多

      预售开启 12月21-22日·深圳,2019年终产品经理大会,与16位产品实战派,探2020的产品新风向

      人人都是产品经理(是以产品经理、运营为核心的学习、交流、分享平台,集媒体、培训、社群为一体,全方位服务产品人和运营人,成立9年举办在线+期,线+场,产品经理大会、运营大会20+场,覆盖北上广深杭成都等15个城市,在行业有较高的影响力和知名度。平台聚集了众多BAT美团京东滴滴360小米网易等知名互联网公司产品总监和运营总监,他们在这里与你一起成长。

          

    相关阅读:和记娱乐

    
    Copyright @ 2019 和记娱乐 版权所有  
    和记娱乐 | 网站地图