拆分订单、合并订单如何设计?

现在已经有后台,也有订单系统,不支持拆单合单

需要有地方保存多个运单号,收货地址可以是相同的

目前还没有思路。

其他:

运单号需要单独弄个表保存吗?

================

以下为网络查询内容

自动拆分合并订单(这个复杂)
手动拆分合并订单,相对简单,适合单量少的。

拆分订单、合并订单如何设计?

世界上最遥远的距离不是生与死,而是你亲手制造的BUG就在你眼前,你却怎么都找不到ta。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案
1年前 评论
讨论数量: 14

拆单合单,表可以多对多设计。后期可以把单独搞个物流模块

1年前 评论
IDLIFE (作者) 1年前
kis龍 (楼主) 1年前

订单拆分和合并是电商平台中常见的操作,可以帮助商家更灵活地处理订单,提高客户满意度。下面是一些常见的订单拆分和合并场景以及相应的设计思路:

  1. 拆分订单:

情景:当客户下单时,有时候可能会购买多个商品,但是其中某些商品无法及时发货,这时需要将订单拆分成两个或多个子订单,分别发货,以减少客户的等待时间。

设计思路:在订单表中添加一个 parent_id 字段,用于标识父订单,当订单需要拆分时,生成一个新的订单,并将新订单的 parent_id 字段设置为原订单的订单号,这样就可以将订单拆分成多个子订单。在订单列表页面中,可以将子订单显示为同一个父订单的子项。

  1. 合并订单:

情景:客户可能会分别下多个订单,但是为了节省运费或方便发货,商家可能需要将多个订单合并成一个订单,一起发货。

设计思路:在订单表中添加一个 merge_id 字段,用于标识合并后的订单,当商家需要合并订单时,将多个订单的 merge_id 字段设置为同一个值,就可以将多个订单合并成一个订单。在订单列表页面中,可以将多个订单显示为同一个合并后的订单。

需要注意的是,订单拆分和合并可能会涉及到多个业务逻辑,例如库存管理、物流配送等,需要考虑相关的业务规则和数据一致性问题。

1年前 评论
wxfjamdc (作者) 1年前
kis龍 (楼主) 1年前
PHPer技术栈 1年前
PHPer技术栈 1年前
Buffett-Cai

你这问题如果展开来说那就是十人团队折腾半年都玩不好拆单。
如果仅仅是“需要有地方保存多个运单号”,那建个表存单号就是最方便也是最快的。 比如orders(已有,订单表)、order_items(已有,订单里的商品)、order_shipping_records(新建,订单里的商品的快递单号。字段大概是order_id,order_item_id,快递单号,快递公司)

1年前 评论
kis龍 (楼主) 1年前

图看着像是某ERP厂商的拆单规则。😄

如何拆取决于业务场景,数据量等因素,比如像我们在用户下单的时候就拆了,按商品供应商、按分销员导购员等规则拆。

如果单个字段够用,运单可以不拆,否则就拆。在我们系统上是拆的。

1年前 评论
kis龍 (楼主) 1年前
PHPer技术栈 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!