Files
medical-mall/docs/sql/03_enums_status_dict.md

214 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 03 状态/枚举字典(统一口径)
本节汇总数据库中以 `INTEGER + CHECK``TEXT + CHECK` 形式出现的核心状态字段,给出建议的统一解释口径。
> 注意:部分状态值在 `mall_migration.sql` 与 `complete_mall_database.sql` 存在细微差异(例如订单取消/取货的命名)。本字典以“脚本中出现的实际取值范围”为准,并在差异处标注。
---
## 1. 用户与认证
### 1.1 `ml_user_profiles.status`
取值:`IN (1,2,3,4)`
- `1`:正常
- `2`:冻结
- `3`:注销
- `4`:待审核
### 1.2 `ml_user_profiles.verification_status`
取值:`IN (0,1,2)`
- `0`:未认证
- `1`:已认证
- `2`:认证失败
### 1.3 `ml_user_addresses.status`
取值:`IN (1,2)`
- `1`:正常
- `2`:禁用
---
## 2. 商品
### 2.1 `ml_products.status`
取值:`IN (1,2,3,4)`
- `1`:上架
- `2`:下架
- `3`:草稿
- `4`:删除(逻辑删除)
### 2.2 `ml_product_skus.status`
取值:`IN (1,2)`
- `1`:正常
- `2`:禁用
---
## 3. 店铺
### `ml_shops.status`
取值:`IN (1,2,3)`
- `1`:正常
- `2`:暂停
- `3`:关闭
---
## 4. 订单(交易状态机)
> 订单存在三个并行状态字段:`order_status`(订单流程)、`payment_status`(支付/退款)、`shipping_status`(发货/物流)。
### 4.1 `ml_orders.order_status`
取值:`IN (1,2,3,4,5,6,7)`
- `1`:待付款
- `2`:待发货(在 `complete` 脚本里也可能被解释为“已付款/待发货”)
- `3`:待收货
- `4`:已完成
- `5`:已取消 / 已取货(不同脚本表述不一致,建议在业务层统一为“取消”或“自提完成”之一)
- `6`:退款中
- `7`:已退款
建议(文档口径):
- 若业务没有“自提/取货”流程,建议将 `5` 固化为“已取消”。
- 若业务需要“自提/取货完成”,建议拆出更清晰的状态(例如新增 `8` 表示取货完成),并迁移更新 CHECK。
### 4.2 `ml_orders.payment_status`
取值:`IN (1,2,3,4)`
- `1`:未付款
- `2`:已付款
- `3`:部分退款
- `4`:全额退款
### 4.3 `ml_orders.shipping_status`
取值:`IN (1,2,3,4)`
- `1`:未发货
- `2`:已发货
- `3`:运输中
- `4`:已送达
---
## 5. 优惠券
### 5.1 `ml_coupon_templates.coupon_type`
取值:`IN (1,2,3)`
- `1`:满减券
- `2`:折扣券
- `3`:免运费券
### 5.2 `ml_coupon_templates.discount_type`
取值:`IN (1,2)`
- `1`:固定金额
- `2`:百分比
### 5.3 `ml_coupon_templates.status`
取值:`IN (1,2,3)`
- `1`:正常
- `2`:暂停
- `3`:已结束
### 5.4 `ml_user_coupons.status`
取值:`IN (1,2,3)`
- `1`:未使用
- `2`:已使用
- `3`:已过期
---
## 6. 配送
### 6.1 `ml_delivery_drivers.vehicle_type`
取值:`IN (1,2,3)`
- `1`:电动车
- `2`:摩托车
- `3`:汽车
### 6.2 `ml_delivery_drivers.work_status`
取值:`IN (1,2,3)`
- `1`:在线
- `2`:忙碌
- `3`:离线
### 6.3 `ml_delivery_drivers.status`
取值:`IN (1,2,3)`
- `1`:正常
- `2`:暂停
- `3`:离职
### 6.4 `ml_delivery_tasks.status`
取值:`IN (1,2,3,4,5,6)`
- `1`:待接单
- `2`:已接单
- `3`:取货中
- `4`:配送中
- `5`:已送达
- `6`:配送失败
---
## 7. 评价与行为
### 7.1 `ml_product_reviews.status`
取值:`IN (1,2,3)`
- `1`:正常
- `2`:已删除
- `3`:已隐藏
### 7.2 `ml_user_favorites.target_type`
取值:`IN (1,2)`
- `1`:商品
- `2`:店铺
---
## 8. 订阅Subscription
### `ml_user_subscriptions.status`
取值:`IN ('trial','active','past_due','canceled','expired')`
- `trial`:试用中
- `active`:生效中
- `past_due`:逾期(扣费失败/欠费)
- `canceled`:已取消
- `expired`:已过期