Appearance
订单(Order)
概述
订单(Order)是积分商品与周边商品共用的统一订单对象,用于描述下单、支付、履约、退款、取消、完成等完整生命周期。
业务含义
- 统一承载积分商品与周边商品的订单信息
- 支持不同订单渠道:
points、merch - 支持不同履约方式:
pickup(自提)、shipping(配送) - 支持订单主状态与退款状态分离建模
字段定义
| 字段名 | 类型 | 必填 | 默认值 | 说明 | 状态值枚举 |
|---|---|---|---|---|---|
orderId | string | 是 | - | 订单 ID | - |
userId | string | 是 | - | 用户 ID | - |
channel | enum | 是 | merch | 订单渠道 | points, merch |
deliveryMode | enum | 是 | pickup | 履约方式 | pickup, shipping |
orderStatus | enum | 是 | pending_payment | 订单履约主状态 | pending_payment, pending_writeoff, pending_delivery, shipped, completed, refunded, cancelled |
refundStatus | enum | 否 | none | 退款过程状态,独立于 orderStatus | none, processing, succeeded, rejected |
refundRequestedAt | datetime | 否 | null | 退款受理时间 | - |
refundFinishedAt | datetime | 否 | null | 退款完成时间 | - |
payType | enum | 是 | wechat | 支付类型 | wechat, points, mix |
itemCount | int | 是 | 1 | 商品件数,固定为 1 | - |
pointsAmount | int | 否 | 0 | 消耗积分 | - |
pointsFrozenAmount | int | 否 | 0 | 已冻结积分 | - |
cashAmount | decimal | 否 | 0 | 支付现金 | - |
freightAmount | decimal | 否 | 0 | 运费 | - |
goodsAmount | decimal | 否 | 0 | 商品金额 | - |
addressId | string | 否 | null | 收货地址 ID | - |
storeId | string | 否 | null | 自提门店 ID | - |
writeoffCodeId | string | 否 | null | 核销码 ID | - |
cancelReason | string | 否 | null | 取消原因 | - |
createdAt | datetime | 是 | 当前时间 | 创建时间 | - |
paidAt | datetime | 否 | null | 支付时间 | - |
finishedAt | datetime | 否 | null | 完成时间 | - |
枚举说明
订单渠道 channel
points:积分商品订单merch:周边商品订单
履约方式 deliveryMode
pickup:门店自提shipping:物流配送
订单主状态 orderStatus
pending_payment:待支付pending_writeoff:待核销pending_delivery:待发货shipped:已发货completed:已完成refunded:已退款cancelled:已取消
退款状态 refundStatus
退款状态独立于
orderStatus维护,用于表示退款流程进展。
none:无退款processing:退款处理中succeeded:退款成功rejected:退款驳回
支付类型 payType
wechat:微信支付points:纯积分支付mix:积分 + 现金混合支付
建模约束
itemCount固定为1refundStatus与orderStatus为两套独立状态字段addressId适用于shipping场景storeId、writeoffCodeId适用于pickup场景- 金额相关字段默认值均为
0 - 时间字段中,除
createdAt外均可为空
适用场景
- 积分商城下单
- 周边商品购买
- 自提类订单履约与核销
- 配送类订单发货与完成
- 退款流程跟踪
