数据库文档编写,开发规范文档,数据库接入

This commit is contained in:
comlibmb
2026-02-02 18:09:30 +08:00
parent 19970db288
commit 21149dd3fe
36 changed files with 3245 additions and 89 deletions

View File

@@ -0,0 +1,236 @@
# 01 表清单与职责划分(按业务域)
本节将 `ml_` 前缀的商城域表按业务域归类,并给出每张表的核心职责、关键字段与主要关联。
> 说明:用户主表复用 `public.ak_users`,商城域通过外键 `user_id/merchant_id` 关联。
---
## 1. 用户域Account Extension
### 1.1 `ml_user_profiles`(用户扩展档案)
- **职责**:承载商城侧的用户扩展信息(状态、实名、信用分、认证信息、偏好等)。
- **关键字段**
- `user_id`:外键到 `ak_users(id)`(且 `UNIQUE`,保证一用户一档案)
- `status`:用户状态(正常/冻结/注销/待审核)
- `verification_status``verification_data`认证状态及数据JSONB
- `preferences`用户偏好JSONB
- **主要关联**
- `ml_user_profiles.user_id -> ak_users.id`
### 1.2 `ml_user_addresses`(用户地址)
- **职责**:用户收货地址(并支持默认地址)。
- **关键字段**
- `user_id`:外键到 `ak_users(id)`
- `is_default`:是否默认地址(由触发器确保单一默认)
- `province/city/district/address_detail`:地址结构化字段
- **主要关联**
- `ml_user_addresses.user_id -> ak_users.id`
---
## 2. 商品域Catalog
### 2.1 `ml_categories`(商品分类)
- **职责**:商品分类树,支持 SEO`cid/slug`)与层级路径。
- **关键字段**
- `parent_id`:自关联
- `path TEXT[]`:分类路径(便于面包屑、筛选等)
- `cid`:对外友好 ID
- `slug`SEO slug
- **主要关联**
- `ml_categories.parent_id -> ml_categories.id`
### 2.2 `ml_brands`(品牌)
- **职责**:品牌维度,支持 SEO`cid`)。
- **关键字段**`name/logo_url/is_active/cid`
### 2.3 `ml_products`(商品 SPU
- **职责**商品主表SPU包含定价、库存汇总、SEO、属性、统计。
- **关键字段**
- `merchant_id`:商家(关联 `ak_users`
- `category_id``brand_id`
- `base_price/market_price/cost_price`
- `total_stock/available_stock`(由 SKU 触发器汇总维护)
- `status`(上架/下架/草稿/删除)
- `image_urls/video_urls/attributes`JSONB
- `cid/slug/seo_*`
- **主要关联**
- `ml_products.merchant_id -> ak_users.id`
- `ml_products.category_id -> ml_categories.id`
- `ml_products.brand_id -> ml_brands.id`
### 2.4 `ml_product_skus`(商品 SKU
- **职责**SKU 明细规格组合、SKU 价格与库存。
- **关键字段**
- `product_id`:所属 SPU
- `specifications JSONB`:规格组合(例如 `{color:"black", size:"M"}`
- `price/stock/status`
- **主要关联**
- `ml_product_skus.product_id -> ml_products.id`
### 2.5 `ml_product_specs`(商品规格定义)
- **职责**:描述一个商品有哪些规格项及可选值(用于生成 SKU
- **关键字段**
- `spec_name`(如 颜色/尺寸)
- `spec_values JSONB`(如 `["black","white"]`
---
## 3. 店铺域Merchant/Shop
### `ml_shops`(店铺)
- **职责**:店铺信息(当前模型约束“一商家一店”)。
- **关键字段**
- `merchant_id UNIQUE`:一对一约束
- `status`(正常/暂停/关闭)
- `address/business_hours`JSONB
- `rating_avg/rating_count/product_count/order_count`(统计类)
---
## 4. 交易域Order/Trade
### 4.1 `ml_orders`(订单主表)
- **职责**:订单交易核心,含金额、地址快照、状态机、关键时间点。
- **关键字段**
- `order_no`:订单号(可由序列+函数生成)
- `user_id`:买家
- `merchant_id`:商家(当前单商家订单模型)
- 金额拆分:`product_amount/discount_amount/shipping_fee/total_amount/paid_amount`
- `shipping_address JSONB`:下单快照地址
- 状态机:`order_status/payment_status/shipping_status`
- 时间点:`paid_at/shipped_at/delivered_at/completed_at`
### 4.2 `ml_order_items`(订单明细)
- **职责**:订单行项目,保存下单快照(防止商品信息后改影响历史订单)。
- **关键字段**
- `order_id` 外键
- `product_id/sku_id`
- `product_name/sku_name/specifications/image_url/price`(快照冗余)
- `quantity/total_amount`
---
## 5. 购物车域
### `ml_shopping_cart`
- **职责**:购物车行项目。
- **关键字段**
- `user_id/product_id/sku_id`
- `quantity``selected`
- `UNIQUE(user_id, product_id, sku_id)`:避免重复行
---
## 6. 营销域Coupon
### 6.1 `ml_coupon_templates`(优惠券模板)
- **职责**:券模板定义;支持平台券(`merchant_id` 为空)与商家券。
- **关键字段**
- `coupon_type`(满减/折扣/免邮)
- `discount_type`(固定金额/百分比)
- `discount_value/min_order_amount/max_discount_amount`
- `applicable_products/applicable_categories`JSONB
- `start_time/end_time/status`
### 6.2 `ml_user_coupons`(用户优惠券)
- **职责**:用户领取的券实例,包含券码与使用归因。
- **关键字段**
- `coupon_code`(唯一)
- `status`(未用/已用/过期)
- `used_at/order_id`
---
## 7. 履约域Delivery
### 7.1 `ml_delivery_drivers`(配送员)
- **职责**:配送员信息与工作状态。
- **关键字段**
- `user_id UNIQUE`:一个用户对应一个配送员档案
- `work_status/status`、位置信息、统计与评分
### 7.2 `ml_delivery_tasks`(配送任务)
- **职责**:配送任务与订单 1:1 绑定。
- **关键字段**
- `order_id UNIQUE`:一个订单最多一个配送任务
- `driver_id`
- `pickup_address/delivery_address`JSONB 快照)
- `status``assigned_at/picked_at/delivered_at`
---
## 8. 评价域Review
### `ml_product_reviews`
- **职责**:商品评价;通过 `order_id + order_item_id` 强绑定订单来源。
- **关键字段**
- `order_id``order_item_id`
- `rating/content/images`
- `merchant_reply/merchant_replied_at`
---
## 9. 用户行为域Behavior
### 9.1 `ml_user_favorites`(收藏)
- **职责**:收藏(多态目标:商品/店铺)。
- **关键字段**
- `target_type`1 商品 / 2 店铺)
- `target_id`
- `UNIQUE(user_id, target_type, target_id)`
### 9.2 `ml_browse_history`(浏览历史)
- **职责**:浏览记录(当前模型倾向“同商品最后一次浏览覆盖”)。
- **关键字段**`UNIQUE(user_id, product_id)`
### 9.3 `ml_search_history`(搜索记录)
- **职责**:搜索日志(可用于热词/推荐/分析)。
- **关键字段**`keyword/result_count/ip_address/user_agent`
---
## 10. 配置与地区
### 10.1 `ml_system_configs`(系统配置)
- **职责**配置中心JSONB如运费、佣金比例、订单自动确认天数等。
- **关键字段**`config_key` 唯一、`config_value JSONB`
### 10.2 `ml_regions`(地区)
- **职责**:地区树(省/市/区/街道)。
---
## 11. 订阅模块Subscription
### 11.1 `ml_subscription_plans`(订阅套餐)
- **职责**订阅计划定义计费周期、价格、试用天数、features
- **关键字段**`plan_code` 唯一、`billing_period``features JSONB`
### 11.2 `ml_user_subscriptions`(用户订阅)
- **职责**:用户订阅实例(状态机、自动续费、下次扣费时间等)。
- **关键字段**`status`trial/active/past_due/canceled/expired`auto_renew``metadata JSONB`