xshop 数据库数据字典

数据库:xydshop(生产库,MySQL 8 / utf8mb4 / InnoDB) · 共 103 张业务表 · 由生产库 INFORMATION_SCHEMA 权威快照自动解析生成

一、系统权限与配置(RBAC)

admin_user

业务说明:管理员账号,按 role_id 关联角色;密码 bcrypt 加密。

字段类型可空默认键说明
idbigint(20)否—PRI—
usernamevarchar(50)否—UNI登录账号
passwordvarchar(255)否——加密密码
real_namevarchar(50)是——真实姓名
mobilevarchar(20)是——手机号
emailvarchar(100)是——邮箱
role_idbigint(20)否—MUL角色ID
statustinyint(4)是1MUL状态:1启用 0禁用
last_login_ipvarchar(50)是———
last_login_timedatetime是———
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

admin_role

业务说明:管理员角色(内置角色:SUPER/OPERATION/FINANCE/LOGISTICS/V6/DATA_VIEWER 等),role_level 决定菜单与数据可见范围。

字段类型可空默认键说明
idbigint(20)否—PRI—
role_codevarchar(50)否—UNI角色编码
role_namevarchar(50)否——角色名称
role_leveltinyint(4)否——角色等级:1-6
descriptionvarchar(255)是———
is_systemtinyint(4)是0—是否系统内置:1是 0否
statustinyint(4)是1—状态:1启用 0禁用
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

admin_permission

业务说明:权限点(菜单/按钮/数据三类),树形 parent_id;operation_level 1常规/2敏感/3高危,高危接口需二次密码。

字段类型可空默认键说明
idbigint(20)否—PRI—
parent_idbigint(20)是0MUL父权限ID
perm_codevarchar(100)否—UNI权限编码
perm_namevarchar(50)否——权限名称
perm_typetinyint(4)否—MUL类型:1菜单 2按钮 3数据
pathvarchar(200)是——前端路由路径
iconvarchar(50)是——菜单图标
sort_orderint(11)是0—排序
operation_leveltinyint(4)是1—操作等级:1常规 2敏感 3高危
statustinyint(4)是1—状态
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

admin_role_permission

业务说明:角色↔权限多对多关联,SUPER_ADMIN 自动拥有全部。

字段类型可空默认键说明
idbigint(20)否—PRI—
role_idbigint(20)否—MUL—
perm_idbigint(20)否———

admin_data_scope

业务说明:数据权限规则(region/dept/self),配合 V6 隔离等场景。

字段类型可空默认键说明
idbigint(20)否—PRI—
role_idbigint(20)否—MUL—
scope_typevarchar(50)否——范围类型:region/dept/self
scope_valuevarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMP——

admin_operation_log

业务说明:所有后台操作审计,高危操作强制记录 before/after 数据,留存≥180天。

字段类型可空默认键说明
idbigint(20)否—PRI—
admin_idbigint(20)否—MUL—
admin_namevarchar(50)否———
role_codevarchar(50)是———
operation_leveltinyint(4)是1MUL1常规 2敏感 3高危
modulevarchar(50)是———
operation_typevarchar(50)否———
target_user_idbigint(20)是—MUL—
request_urlvarchar(200)是———
request_methodvarchar(10)是———
request_paramsjson是———
before_datajson是———
after_datajson是———
resulttinyint(4)是1—1成功 0失败
error_msgvarchar(500)是———
client_ipvarchar(50)是———
user_agentvarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMPMUL—

admin_session

业务说明:JWT/刷新令牌存储与吊销(黑名单)。

字段类型可空默认键说明
idbigint(20)否—PRI—
admin_idbigint(20)否—MUL—
jwt_tokenvarchar(500)否———
refresh_tokenvarchar(500)是———
expire_atdatetime否—MUL—
is_revokedtinyint(4)是0——
created_atdatetime是CURRENT_TIMESTAMP——

admin_announcement_read

业务说明:后台管理员公告已读记录(按管理员维度标记已读)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
admin_idbigint(20)否—MUL—
announcement_idbigint(20)否—MUL—
read_atdatetime否CURRENT_TIMESTAMP——

admin_task

业务说明:后台定时任务注册表(任务名/表达式/状态/最近运行),控制面板读取此处。

字段类型可空默认键说明
idbigint(20)否—PRI—
task_keyvarchar(40)否—MUL任务标识(= think 命令名,如 point:release)
titlevarchar(60)否——展示名
commandvarchar(120)否——think 命令名(php think <command>)
cron_exprvarchar(40)否——cron 表达式
enabledtinyint(4)否1—1启用 0停用
last_run_atdatetime是——上次执行时间
last_statustinyint(4)否0—0未跑 1成功 2失败 3运行中
last_durationint(11)否0—上次耗时(毫秒)
sortint(11)否0—排序
linevarchar(20)否——双线:findhere / xyanda
created_atdatetime否CURRENT_TIMESTAMP——

admin_task_log

业务说明:定时任务执行日志(开始/结束/耗时/结果/异常摘要),用于运维排查。

字段类型可空默认键说明
idbigint(20)否—PRI—
task_idbigint(20)否—MUL—
task_keyvarchar(40)是———
commandvarchar(120)是———
outputmediumtext是——命令输出(已去除控制台标记)
exit_codeint(11)否0——
duration_msint(11)否0——
triggervarchar(20)否cron—cron / manual
linevarchar(20)否—MUL双线:findhere / xyanda
created_atdatetime否CURRENT_TIMESTAMPMUL—

app_version

业务说明:APP 升级版本表(版本号/下载地址/强制升级标记/灰度),C 端升级中心读取。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
appidvarchar(64)否—MULapp标识(plus.runtime.appid, 如 __UNI__3CBE0A6)
platformvarchar(32)否Android—平台: Android/iOS/Harmony
typevarchar(16)否native_app—native_app=整包, wgt=热更新资源包
versionvarchar(32)否——版本号(整包=versionName; wgt=wgt version)
wgt_versionvarchar(32)否——wgt 类型的版本号(整包可为空)
min_uni_versionvarchar(32)否——wgt 要求的最低原生版本(原生可为空)
urlvarchar(512)否——安装包/资源包地址(七牛云或静态)
titlevarchar(128)否——更新标题
contentstext是——更新内容(换行分隔)
is_mandatorytinyint(4)否0—1=强制更新(不可关闭)
is_silentlytinyint(4)否0—1=静默更新(仅 wgt 生效, 后台下载下次启动生效)
statustinyint(4)否0—0=下线 1=上线发行(仅上线版参与检测, 每 appid+platform+type 同时仅 1 个上线)
create_timeint(10) unsigned否0——
update_timeint(10) unsigned否0——

config_param

业务说明:系统参数键值表:积分释放率、分享/团队/反加速比例、各 V 级分红率、晋升门槛、手续费等,结算引擎读取此处。

字段类型可空默认键说明
idbigint(20)否—PRI—
param_keyvarchar(100)否—UNI参数键
param_namevarchar(100)否——参数名称
param_valuevarchar(255)否——当前值
default_valuevarchar(255)是——默认值
new_valuevarchar(255)是——待生效值
statustinyint(4)是1—状态:1已生效 2待生效 3已失效
remarkvarchar(255)是———
created_atdatetime是———
updated_atdatetime是———

二、会员与资产

member

会员表(含推荐关系 recommend_id/path、四池资产、微信绑定 openid/unionid/wechat_bound_at)

业务说明:会员主表:四池资产(消费/兑换/锁仓积分 + 现金红包)、推荐关系(recommend_id 直接上级 + recommend_path 祖先链含自身)、等级 1-6;微信绑定 openid(登录凭据)+ unionid(预留打通)+ wechat_bound_at(绑定时间,登录补绑推荐关系见 Auth::tryBindRecommend)。

字段类型可空默认键说明
idbigint(20)否—PRI—
nicknamevarchar(50)否——昵称
usernamevarchar(50)是—UNI用户名
avatarvarchar(500)是——头像URL
mobilevarchar(20)是—UNI手机号
passwordvarchar(255)是——登录密码(hash)
pay_passwordvarchar(255)是——支付密码哈希
real_namevarchar(50)是——真实姓名
id_cardvarchar(30)是——身份证
leveltinyint(4)是0MUL会员等级 1-6 => V1-V6
effective_membertinyint(1)否0MUL有效会员:1=有效消费>0(独立档位,不参与分红计权)
effective_amountdecimal(14,2)否0.00—累计有效消费额(口径同 rebate_amount 之和)
effective_atdatetime是——首次成为有效会员时间
consume_pointdecimal(12,2)是0.00—消费积分余额
exchange_pointdecimal(12,2)是0.00—兑换积分余额
balance_pointdecimal(12,2)否0.00—积分余额(后台第三方入账/红包互转落点,独立于兑换积分)
rebate_pointdecimal(14,2)否0.00—让利值(每订单明细让利累计,元;月度代理商奖励运营查看/手动核算用)
has_gift_purchasetinyint(1)否0—是否买过礼包(有效用户标记):1=买过,未买过则奖励全额烧伤归平台
lock_pointdecimal(12,2)是0.00—锁仓积分余额
lock_releaseddecimal(12,2)否0.00—已解冻锁仓累计
exchange_equitydecimal(14,2)否0.00—兑换权益余额(兑换积分静态释放产生,可申请兑换)
red_packetdecimal(12,2)是0.00—现金红包余额
recommend_idbigint(20)是0MUL推荐人会员ID
recommend_pathvarchar(255)否—MUL推荐链路径枚举,逗号分隔祖先含自身
invite_codevarchar(10)否—UNI邀请码(5位,C端分享用)
statustinyint(4)是1MUL1正常 0禁用 2冻结
registered_atdatetime是——注册时间
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——
quick_paytinyint(4)否0—1开启快捷支付
openidvarchar(64)否—MUL微信 openid(小程序/公众号 JSAPI 支付买家标识)
unionidvarchar(64)是——微信开放平台unionid(预留)
wechat_bound_atdatetime是——微信绑定时间
alipay_user_idvarchar(64)否——支付宝 user_id(支付宝小程序支付买家标识)
active_valueint(11)否0—活跃值(累计签到次数,每日签到+1)
stock_equitydecimal(12,2)否0.00—上市股票兑换权益台账(内部记账·股)

point_record

业务说明:积分流水(四池变动明细),type:1充值/2扣减/3释放/4奖励发放/5消费;point_type:1消费/2兑换/3锁仓;balance_after 为变动后余额,与 member 余额须一致(对账依据)。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL—
nicknamevarchar(50)是———
typetinyint(4)否—MUL1充值 2扣减 3释放 4奖励发放 5消费
point_typetinyint(4)是1—1消费 2兑换 3锁仓
amountdecimal(12,2)否——变动额(正/负)
balance_afterdecimal(12,2)是0.00——
remarkvarchar(255)是———
operator_idbigint(20)是———
created_atdatetime是CURRENT_TIMESTAMPMUL—
biz_novarchar(64)否——业务单号(第三方入账幂等键)
grant_keyvarchar(64)是—UNI入账幂等键:u{uid}:o{oid}:i{iid}:g{gid}:t{pool};NULL=不约束
sourcevarchar(30)否——来源/渠道标识(third_party等)
order_idbigint(20)否0MUL订单ID(sales_order.id)
item_idbigint(20)否0—订单明细ID(order_item.id)
goods_idbigint(20)否0MUL商品ID(goods.id)
goods_namevarchar(120)否——商品名称快照

daily_behavior

业务说明:会员每日签到+广告完播,前置条件满足后才允许当日积分释放/解冻。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL—
datedate否—MUL—
signedtinyint(4)否0—0未签 1已签
ad_donetinyint(4)否0—0未看 1已看
created_atdatetime是CURRENT_TIMESTAMP——

member_promotion_log

业务说明:会员晋升记录(from_level→to_level),晋升按团队业绩快照门槛,仅升不降。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL—
from_leveltinyint(4)否0——
to_leveltinyint(4)否0——
team_performancedecimal(14,2)否0.00——
reasonvarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMP——

team_performance_snapshot

业务说明:每日团队/直推业绩快照,异步预计算避免实时递归。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL—
datedate否—MUL—
team_performancedecimal(14,2)否0.00—团队总业绩
direct_performancedecimal(14,2)否0.00—直推业绩
updated_atdatetime是CURRENT_TIMESTAMP——

三、商品体系

goods_category

业务说明:商品分类(树形 parent_id)。

字段类型可空默认键说明
idbigint(20)否—PRI—
parent_idbigint(20)是0MUL父分类ID,0为一级
namevarchar(50)否——分类名称
wx_cat_idvarchar(32)否—MUL微信小店类目ID(cat_id),空=本地自建
leveltinyint(4)否0—类目层级 1/2/3,0=未知
is_leaftinyint(4)否0—是否叶子类目 1=可挂商品
pathvarchar(255)否——类目面包屑,如 个人护理>口腔护理
sourcevarchar(16)否localMUL类目来源 local/wx/dhj
sortint(11)是0—排序
statustinyint(4)是1—1启用 0禁用
imagevarchar(512)否——分类图标
created_atdatetime是CURRENT_TIMESTAMP——
home_navtinyint(4)否1—首页分类导航显示(1显示/0隐藏)
home_nav_sortint(11)否0—首页分类导航排序(升序,同级按 sort 兜底)

goods_category_rel

业务说明:商品↔分类多对多(一个商品可归属多个分类)。

字段类型可空默认键说明
goods_idbigint(20)否—PRI商品ID
category_idbigint(20)否—PRI分类ID
created_atdatetime是CURRENT_TIMESTAMP——

goods

商品表(含审核状态机 + 商户/供应商/运费/预售/限购/多规格扩展字段)

业务说明:商品主表:type 引用 goods_type.id(0=组合);扩展字段含商户/供应商/运费模板/预售/限购/标签/多规格开关。引入审核状态机:review_status 0草稿/1待审核/2已通过(可上架)/3已驳回,status 仅 review_status=2 时有效(0下架/1上架);reviewer_id 平台审核人;submitted_at/reviewed_at 审核时间戳;review_remark 驳回原因。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(120)否——商品名称
codevarchar(40)是—UNI业务编码(导入/导出幂等键),UK,可空;老数据为空按 name+type 匹配
typebigint(20)否0MUL商品类型ID 引用 goods_type.id(原 1礼包/2普通 已映射为 goods_type 的 id)
category_idbigint(20)是0MUL分类ID
topic_idbigint(20)否0MUL商品专题ID 0未归属
pricedecimal(12,2)是0.00—售价
stockint(11)是0—库存
salesint(11)是0—销量
covervarchar(255)是——封面图
detailtext是——详情
statustinyint(4)是1—1上架 0下架
review_statustinyint(4)否0MUL审核状态 0草稿 1待审核 2已通过(可上架) 3已驳回
review_remarkvarchar(255)否——驳回原因/审核备注
submitted_atdatetime是——提交审核时间
reviewed_atdatetime是——审核处理时间
reviewer_idbigint(20)否0—平台审核人 admin_id 0=未审核
created_atdatetime是CURRENT_TIMESTAMP——
merchant_idbigint(20)是0—商户ID 0=平台自营
store_idbigint(20)否0—归属门店(0=商家整体)
supplier_idbigint(20)是0—供应商ID 0=无
delivery_typetinyint(4)是1—1快递 2虚拟 3自提 4预售
is_multi_spectinyint(4)是0—是否多规格 0单品 1多规格
min_pricedecimal(12,2)是0.00—展示最低价(单品=price/SKU最低)
max_pricedecimal(12,2)是0.00—展示最高价(SKU最高)
limit_buyint(11)是0—每人限购 0不限
shipping_template_idbigint(20)是0—运费模板 0=平台默认
presale_depositdecimal(12,2)是0.00—预售定金
presale_delivery_atdatetime是——预售发货日
tagsvarchar(255)是——标签,逗号分隔
recommendtinyint(4)否0—是否精选 1是
profit_ratedecimal(5,2)否20.00—让利值%
cost_pricedecimal(12,2)否0.00—进货价/成本价(历史缺失默认售价×0.6)
sortint(11)否0—商品后台排序值(全局统一, 越小越靠前; 拖拽排序回写1..n, 默认0=未参与排序)

goods_audit_log

业务说明:商品审核/上下架/治理操作审计轨迹:action(submit/approve/reject/withdraw/listing_on/listing_off/force_off)、operator_id/operator_role(merchant|admin)、remark;全链路留痕。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL商品
merchant_idbigint(20)否0MUL归属商家(审计透视)
actionvarchar(30)否—MULsubmit/approve/reject/withdraw/listing_on/listing_off/force_off
operator_idbigint(20)否0—操作人(商户员工或平台 admin)
operator_rolevarchar(10)否——merchant/admin
remarkvarchar(255)否——备注/驳回原因
created_atdatetime否CURRENT_TIMESTAMPMUL—

goods_type

业务说明:商品类型(可自定义):礼包/普通实物等,决定交付方式、是否走运费/库存/虚拟。

字段类型可空默认键说明
idbigint(20)否—PRI—
codevarchar(30)是—UNI类型编码(唯一,程序/前端引用 gift/physical/virtual/presale)
namevarchar(50)否——类型名称(可自定义)
iconvarchar(255)是——类型图标
delivery_typetinyint(4)是1—默认交付方式 1快递 2虚拟 3自提 4预售(商品可覆盖)
require_skutinyint(4)是0—是否要求多规格 0否 1是
require_shippingtinyint(4)是1—是否走运费 0否(虚拟/自提) 1是
require_stocktinyint(4)是1—是否管理实物库存 0否(虚拟) 1是
is_virtualtinyint(4)是0—是否虚拟商品(下单自动交付)
allow_presaletinyint(4)是0—是否支持预售
sortint(11)是0——
statustinyint(4)是1—1启用 0禁用
merchant_enabledtinyint(4)否0——
created_atdatetime是CURRENT_TIMESTAMP——

goods_spec

业务说明:商品规格名(如颜色/尺寸)。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL—
namevarchar(30)否——规格名 如 颜色/尺寸
sortint(11)是0——

goods_spec_value

业务说明:规格值(如红/蓝),可配图。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL—
spec_idbigint(20)否———
valuevarchar(60)否——规格值 如 红/蓝
imagevarchar(255)是——规格值配图
sortint(11)是0——

goods_sku

业务说明:SKU(规格组合定价/库存/重量/成本),唯一键 (goods_id, sku_code)。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL—
sku_codevarchar(60)是——SKU编码/条码
spec_snapshottext是——JSON:[{"name":"颜色","value":"红"},...]
pricedecimal(12,2)是0.00—售价
market_pricedecimal(12,2)是0.00—划线价
cost_pricedecimal(12,2)是0.00—成本价
stockint(11)是0—库存
weightdecimal(10,3)是0.000—重量(kg) 运费计算用
imagevarchar(255)是——规格图(覆盖主图)
statustinyint(4)是1—1启用 0禁用
created_atdatetime是CURRENT_TIMESTAMP——

goods_detail_image

业务说明:商品详情底图集。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL—
urlvarchar(255)否———
sortint(11)是0——

goods_video

业务说明:商品视频。

字段类型可空默认键说明
idbigint(20)否—PRI—
goods_idbigint(20)否—MUL—
urlvarchar(255)否———
sortint(11)是0——
created_atdatetime是CURRENT_TIMESTAMP——

goods_topic

业务说明:商品专题(平台级聚合页:标题/封面/关联商品/启停),首页或活动入口引用。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
namevarchar(120)否——专题名称
covervarchar(255)否——封面图
bannervarchar(255)否——头图/Banner(专题页顶部大图)
subtitlevarchar(255)否——副标题/一句话简介
sortint(11)否0—排序(越大越靠前)
statustinyint(4)否1MUL状态 1启用 0停用
created_atdatetime否CURRENT_TIMESTAMP——

goods_cost_import

业务说明:旧站(多汇家)真实进货价导入暂存表:用于把历史成本快照修正为真实进货价,迁移对账用。

字段类型可空默认键说明
codevarchar(40)否—PRI旧站 post_code 原值(如 DHJ00189332)
code_suffixchar(8)否—UNI8 位流水号(前缀无关的连接键,如 00189332)
cost_pricedecimal(12,2)否0.00—进货价:正常取 post_buying;post_buying>=post_price 时按售价钳制
sell_pricedecimal(12,2)否0.00—旧站 post_price 售价(校验用)
post_idint(10) unsigned否0—旧站商品主键
usabletinyint(1)否0—1=可回填(进货价>0 且 售价>0,含按售价钳制的行)
notevarchar(60)否——不可回填原因 / 钳制说明

supplier

业务说明:供应商(厂家/批发/代发)。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(120)否—MUL供应商名称
merchant_idbigint(20)否0—归属商家(0=平台公共)
typetinyint(4)是1—1厂家 2批发 3代发
contactvarchar(80)是——联系人/电话
regionvarchar(100)是——所在地
statustinyint(4)是1MUL1启用 0禁用
created_atdatetime是CURRENT_TIMESTAMP——

goods_import_task

业务说明:商品导入任务(幂等键 task_no,审计/异步)。

字段类型可空默认键说明
idbigint(20)否—PRI—
task_novarchar(40)否—UNI—
filenamevarchar(255)是———
totalint(11)是0——
successint(11)是0——
failedint(11)是0——
statustinyint(4)是1—1完成 2部分失败 3全失败
operator_idbigint(20)是0——
error_filevarchar(255)是——失败行 CSV 下载地址
created_atdatetime是CURRENT_TIMESTAMP——

shipping_template

业务说明:运费模板(按件/按重/包邮/固定;首费+续费+满额包邮)。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(80)否———
calc_typetinyint(4)是1—1按件 2按重 3包邮 4固定
first_numdecimal(10,2)是1.00—首件/首重
first_feedecimal(10,2)是0.00—首费
add_numdecimal(10,2)是1.00—续件/续重
add_feedecimal(10,2)是0.00—续费
free_amountdecimal(12,2)是0.00—满额包邮 0=不参与
statustinyint(4)是1——
merchant_idbigint(20)否0MUL—
created_atdatetime是CURRENT_TIMESTAMP——

shipping_template_area

模板区域分段运费(含 area_codes 编码数组)

业务说明:模板区域分段运费(地区名 areas 或编码 area_codes)。

字段类型可空默认键说明
idbigint(20)否—PRI—
template_idbigint(20)否—MUL—
areastext是——JSON 区域编码/名称数组
area_codestext是——JSON 区域编码数组(对应 region.code),运费试算优先按编码匹配
first_numdecimal(10,2)是1.00——
first_feedecimal(10,2)是0.00——
add_numdecimal(10,2)是1.00——
add_feedecimal(10,2)是0.00——

四、订单与物流

sales_order

订单表(含多规格/拆单/地区化迁移字段)

业务说明:订单主表:type=goods_type.id(0=组合);amount 订单金额;status 1待支付/2已支付/3已发货/4已完成/5已取消/6异常;pay_status 0未付/1已付;含收货人/电话/地区编码结构化字段。

字段类型可空默认键说明
idbigint(20)否—PRI—
order_novarchar(40)否—UNI订单号
user_idbigint(20)是0MUL下单用户ID
nicknamevarchar(50)是——用户昵称
typebigint(20)否0—订单类型(=goods_type.id, 0=组合订单)
merchant_idbigint(20)否0—商户ID(拆单后单商户, 0=平台自营)
amountdecimal(12,2)是0.00—订单金额
statustinyint(4)是1MUL1待支付 2已支付 3已发货 4已完成 5已取消 6异常
pay_methodvarchar(30)是——支付方式
pay_statustinyint(4)是0—0未付 1已付
addressvarchar(255)是——收货地址
remarkvarchar(255)是——备注
coupon_idbigint(20)否0—使用的会员券ID(0未用)
coupon_amountdecimal(12,2)否0.00—优惠券抵扣金额
rebate_amountdecimal(12,2)否0.00—订单让利额汇总 = Σ order_item.rebate_amount
created_atdatetime是CURRENT_TIMESTAMP——
receiver_namevarchar(50)否——收货人
receiver_phonevarchar(30)否——收货电话
receiver_region_codevarchar(20)否——收货地区编码(末级 region.code)
receiver_region_namevarchar(150)否——收货地区名称路径 如 广东省 深圳市 南山区
logistics_companyvarchar(60)否——物流公司
tracking_novarchar(60)否——快递单号
shipped_atdatetime是——发货时间
profitdecimal(12,2)否0.00—订单利润=Σ(售价−进货价)×qty
settle_invalidtinyint(1)否0MUL不计入代理结算:1=已失效(取消/退款)
settle_invalid_atdatetime是——标记失效时间
settle_invalid_reasonvarchar(50)否——失效原因:admin_close/merchant_refund/refund_done
region_codevarchar(20)是——末级行政区划编码 region.code(辖区=区县级)

order_item

订单明细(含 SKU/商户/供应商/类型溯源 + amount 逐商品计提基数)

业务说明:订单明细:商品名/单价/数量,扩展 SKU/商户/供应商/类型/规格快照溯源;amount=price×qty 为逐商品积分/奖励计提基数(多商品拆单场景)。

字段类型可空默认键说明
idbigint(20)否—PRI—
order_idbigint(20)否—MUL订单ID
goods_idbigint(20)是0—商品ID
goods_namevarchar(120)是——商品名称
sku_idbigint(20)否0—SKU ID(单品=0)
merchant_idbigint(20)否0—商户ID
store_idbigint(20)否0—归属门店(0=商家整体)
supplier_idbigint(20)否0—供应商ID
spec_snapshottext是——规格快照JSON [{"name":"颜色","value":"红"}]
pricedecimal(12,2)是0.00—单价
qtyint(11)是1—数量
amountdecimal(12,2)否0.00—应付金额 = price×qty(逐商品积分/奖励计提基数)
coupon_amountdecimal(12,2)否0.00—本明细分摊的订单级优惠券金额
pay_amountdecimal(12,2)否0.00—入账基数 = amount - coupon_amount(含红包口径)
rebate_amountdecimal(12,2)否0.00—让利额 = pay_amount × profit_rate/100
goods_type_idbigint(20)是0—商品类型ID 引用 goods_type.id(支付后分流依据)
profit_ratedecimal(5,2)否20.00—下单时让利值快照%
cost_pricedecimal(12,2)否0.00—下单时进货价快照(单价口径)

delivery

业务说明:发货/物流:物流公司/单号/签收状态。

字段类型可空默认键说明
idbigint(20)否—PRI—
order_idbigint(20)是0MUL订单ID
order_novarchar(40)是——订单号
companyvarchar(50)是——物流公司
express_novarchar(60)是——物流单号
statustinyint(4)是0MUL0待发货 1已发货 2已签收
created_atdatetime是CURRENT_TIMESTAMP——

merchant_verify

业务说明:线下商家核销记录(让利金额核销)。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL商家ID
user_idbigint(20)否0—消费会员ID(0=未绑定)
user_mobilevarchar(20)否——消费会员手机号快照
member_namevarchar(50)否——消费会员昵称快照
rebate_ratedecimal(5,2)否0.00—核销时让利比例(%)快照
rebate_amountdecimal(12,2)否0.00—让利额(核销金额×让利比例)
pointsdecimal(12,2)否0.00—发放兑换积分(让利额×5×50%)
store_idbigint(20)否0—归属门店(0=商家整体)
amountdecimal(12,2)是0.00—核销金额
operator_idbigint(20)是0—操作人
created_atdatetime是CURRENT_TIMESTAMPMUL—
rebatedecimal(12,2)否0.00—本次核销让利额=金额×商家rate%
region_codevarchar(20)是——末级行政区划编码 region.code(取自商家)

五、线下商家与区域代理

merchant

业务说明:线下商家:经营类目/区域/让利比例/审核状态。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(120)否——商家名称
categoryvarchar(50)是——经营类目
typetinyint(4)否2—1=线上商家 2=线下商家
regionvarchar(100)是—MUL所属区域
contactvarchar(50)是——联系人/电话
license_novarchar(60)是——证照编号
license_imagevarchar(255)是——执照图片(资质留档)
legal_personvarchar(40)是——法人代表
phonevarchar(20)是——联系电话
ratedecimal(5,2)是0.00—让利比例(%)
statustinyint(4)是0MUL0待审核 1启用 2禁用 3驳回
guidedtinyint(4)否0—开店引导是否完成(0否/1是)
audit_remarkvarchar(255)是——驳回原因
settled_atdatetime是——开通时间
created_atdatetime是CURRENT_TIMESTAMP——
region_codevarchar(20)是——末级行政区划编码 region.code
region_namevarchar(150)是——地区名称路径(空格分隔) 如 浙江省 杭州市 西湖区
member_idbigint(20)是—MUL关联C端会员ID(推荐链来源)
bind_sourcetinyint(4)否0—绑定来源:0无/1C端带入/2PC端验证/3平台代建
bind_atdatetime是——绑定时间

agent

业务说明:区域代理(工作室/区县/市级/省级),含考核业绩 performance。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(120)否——代理名称/姓名
leveltinyint(4)是1MUL1工作室 2区县 3市级 4省级
regionvarchar(100)是——管辖区域
contactvarchar(50)是——联系方式
performancedecimal(14,2)是0.00—考核业绩
statustinyint(4)是0MUL0待审核 1启用 2禁用
created_atdatetime是CURRENT_TIMESTAMP——
region_codevarchar(20)是——末级行政区划编码 region.code
region_namevarchar(150)是——地区名称路径(空格分隔)
red_packetdecimal(12,2)否0.00—区域收益红包累计(机制A/B 计提入账)
owner_member_idbigint(20)否0—关联推荐树根会员ID(团队礼包业绩归集)
member_idbigint(20)是—UNI关联会员ID(添加代理商时必填;NULL=未绑定,允许多个未绑定)

agent_funds

业务说明:代理经费发放(扶持经费/激励费用),operator_id 操作人。

字段类型可空默认键说明
idbigint(20)否—PRI—
agent_idbigint(20)否—MUL代理ID
typetinyint(4)是1—1扶持经费 2激励费用
amountdecimal(12,2)是0.00—金额
statustinyint(4)是0—0待发放 1已发放 2驳回
operator_idbigint(20)是0—操作人
created_atdatetime是CURRENT_TIMESTAMP——
remarkvarchar(255)否——计提/经费备注

agent_equity_ledger

业务说明:区域代理权益流水(按代理维度记录权益发放/消耗,对齐代理计提)。

字段类型可空默认键说明
idbigint(20)否—PRI—
agent_idbigint(20)否0MUL代理ID, 0=平台沉淀(差额蒸发/无对应级)
agent_leveltinyint(4)是0—代理级别 2区县 3市级 4省级 (0=平台沉淀)
settle_idbigint(20)是0—关联 agent_monthly_settle.id(发放后回填)
mechanismtinyint(4)否——1=机制A订单利润补贴 2=机制B月度区域计提
source_typevarchar(20)是—MUL来源类型 order_profit / offline_rebate
source_idbigint(20)是0—来源单据ID sales_order.id / merchant_verify.id
region_codevarchar(20)是——辖区末级编码
region_namevarchar(150)是——辖区名称路径
amountdecimal(12,2)否0.00—计入金额(元)
settle_monthvarchar(8)是—MUL结算月份 YYYYMM
remarkvarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMP——

agent_monthly_settle

业务说明:区域代理月度结算(按辖区月度汇总生成结算单:业绩/提成/应发/已发)。

字段类型可空默认键说明
idbigint(20)否—PRI—
agent_idbigint(20)否—MUL—
agent_leveltinyint(4)是0—2区县 3市级 4省级
region_codevarchar(20)是——代理辖区末级编码
region_namevarchar(150)是——代理辖区名称路径
settle_monthvarchar(8)否—MUL结算月份 YYYYMM
order_profit_sumdecimal(12,2)是0.00—机制A 辖区累计订单利润
offline_rebate_sumdecimal(12,2)是0.00—机制B 辖区线下核销让利额合计
equity_a_amountdecimal(12,2)是0.00—机制A 订单利润补贴合计
equity_b_amountdecimal(12,2)是0.00—机制B 月度区域计提合计
total_amountdecimal(12,2)是0.00—应发合计 = A+B
statustinyint(4)是0—0待发放 1已发放
operator_idbigint(20)是0——
settled_atdatetime是———
created_atdatetime是CURRENT_TIMESTAMP——

region_monthly_stats

业务说明:辖区月度汇总(区域代理计提基础:辖区 GMV/让利/有效会员等月度聚合)。

字段类型可空默认键说明
idbigint(20)否—PRI—
region_codevarchar(20)否—MUL末级区编码 region.code (level=3)
region_namevarchar(150)是——区名称路径
province_codevarchar(20)是——省编码
province_namevarchar(50)是——省名称
city_codevarchar(20)是——市编码
city_namevarchar(50)是——市名称
district_codevarchar(20)是——区编码(=region_code)
district_namevarchar(50)是——区名称
settle_monthvarchar(8)否——结算月份 YYYYMM
order_profitdecimal(12,2)是0.00—辖区线上订单利润合计
offline_rebatedecimal(12,2)是0.00—辖区线下核销让利额合计
equity_a_provincedecimal(12,2)是0.00—机制A 省补贴 ¥1
equity_a_citydecimal(12,2)是0.00—机制A 市补贴 ¥2
equity_a_districtdecimal(12,2)是0.00—机制A 区补贴 ¥3
equity_b_provincedecimal(12,2)是0.00—机制B 省计提 1%
equity_b_citydecimal(12,2)是0.00—机制B 市计提 2%
equity_b_districtdecimal(12,2)是0.00—机制B 区计提 6%
created_atdatetime是CURRENT_TIMESTAMP——

六、奖励与分红结算

reward_record

奖励记录(含 should/actual/burn 三额 + status/batch_no 结算字段)

业务说明:三大加速奖计提:share 分享奖(直接推荐人)、team 团队奖(沿链 0.5^d 衰减)、recommend 反加速(获奖者招募人由平台拨付)。should_amount 应发/actual_amount 实发/burn_amount 烧伤三额;status 0待结算/1已结算;batch_no 结算批次(逐商品 order#id:item#id)。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)是0MUL领奖人
from_user_idbigint(20)是0—来源用户
reward_typevarchar(30)是—MULshare/team/recommend
should_amountdecimal(12,2)是0.00—应得
actual_amountdecimal(12,2)是0.00—实发
burn_amountdecimal(12,2)是0.00—烧伤
statustinyint(4)否0MUL1=已计提(accrued) 2=已发放(paid) 3=已冲正(revoked)
batch_novarchar(40)否—MUL结算批次号
created_atdatetime是CURRENT_TIMESTAMP——
linetinyint(4)否0MUL归属线:0通用/1购买者线/2商户线
merchant_idbigint(20)是—MUL商户线来源商户ID
source_eventvarchar(30)是——商户线事件类型:verify/settle 等
directionvarchar(16)否—MUL团队加速方向:share=分享奖(推荐人奖)/up=向上/down=向下;空=旧口径
direction_leveltinyint(4)否0—团队加速层级:up=第k级上级/down=第d层下级(1-based);share及旧口径=0
revoked_atdatetime是——冲正时间(status=3 时写入)
revoked_reasonvarchar(255)是——冲正原因:order_close/order_cancel/merchant_refund/manual

dividend_record

分红记录(含 source 来源列)

业务说明:分红记录:按会员等级 V1-V6 分池,source 1线上(礼包流水)/2线下(让利);status 0待审批/1已审批/2已发放/3驳回。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)是0MUL分红人
leveltinyint(4)是1—等级V1-V6
sourcetinyint(4)否1MUL分红来源 1线上(礼包流水) 2线下(让利)
amountdecimal(12,2)是0.00—分红金额
batch_novarchar(40)是——批次号
statustinyint(4)是0MUL0待审批 1已审批 2已发放 3驳回
created_atdatetime是CURRENT_TIMESTAMP——

platform_tax_reserve

平台税/烧伤沉淀台账(Q20 骨架 P0):加速奖 6% 税与差额烧伤额的沉淀与释放,台账行只增不改(冲正靠反向行)

业务说明:平台税/烧伤沉淀台账(Q20 骨架 P0):加速奖 6% 税与差额烧伤额的沉淀与释放,台账行只增不改(冲正靠反向行)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
directiontinyint(4)否——1=沉淀(平台留存/收入) 2=释放(支出)
sourcevarchar(32)否—MULaccel_tax=加速奖6%税 / burn_gap=差额烧伤 / revoke_tax=冲正释放
ref_typevarchar(32)否——ref_id 所属表名:reward_record / order_refund
ref_idbigint(20) unsigned否——ref_type 对应主键;与 source 组成幂等键(同源同单只落一行)
order_idbigint(20) unsigned是—MUL关联订单(可空,便于按单据对账)
item_idbigint(20) unsigned是——关联订单明细(可空)
user_idbigint(20) unsigned是—MUL税/烧伤的来源会员(该金额不属其所有)
base_amountdecimal(12,2)否0.00—计税 / 烧伤基数
tax_ratedecimal(6,4)是——税率,仅 accel_tax / revoke_tax 有值(0.0600)
amountdecimal(12,2)否——本次留存/释放金额(恒为正,方向看 direction)
statustinyint(4)否1—1=有效。★台账行不可变:冲正靠新增 direction=2 反向行,不回改历史行
remarkvarchar(255)是———
created_atdatetime否—MUL—

exchange_equity_apply

业务说明:兑换权益申请表(会员用积分/资产兑换权益的审批单:类型/数量/状态机)。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL会员ID
amountdecimal(14,2)否0.00—申请数量
remarkvarchar(200)否——用途说明
statustinyint(4)否0MUL0待审核 1已通过 2已驳回
audit_remarkvarchar(200)否——审核意见
audit_admin_idbigint(20)否0—审核管理员ID
audited_atdatetime是——审核时间
created_atdatetime是CURRENT_TIMESTAMP—申请时间
updated_atdatetime是CURRENT_TIMESTAMP——

exchange_equity_record

业务说明:兑换权益流水(兑换权益的发放与消耗明细,对齐四池资产)。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL会员ID
change_typevarchar(30)否——daily_release每日释放转入 apply_deduct申请兑换扣减
amountdecimal(14,2)否0.00—变动额(正=转入 负=扣减)
balance_afterdecimal(14,2)否0.00—变动后兑换权益余额
ref_typevarchar(30)否——关联类型
ref_idbigint(20)否0—关联ID(申请ID等)
ref_datedate是——归属日期(每日释放幂等键)
remarkvarchar(200)否——备注
created_atdatetime是CURRENT_TIMESTAMP——

announcement

业务说明:后台公告(置顶/发布/草稿/阅读数)。

字段类型可空默认键说明
idbigint(20)否—PRI—
titlevarchar(120)否——标题
contenttext是——内容
content_mdmediumtext是——Markdown 原文(后台编辑器回填用;content 存渲染后的 HTML)
is_toptinyint(4)是0—1置顶
statustinyint(4)是1MUL1已发布 0草稿
read_countint(11)是0—阅读数
publish_atdatetime是———
expire_atdatetime是———
created_atdatetime是CURRENT_TIMESTAMP——

config_log

业务说明:config_param 的修改历史(旧值→新值、原因、生效时间 effective_at、操作人 operator_id)。

字段类型可空默认键说明
idbigint(20)否—PRI—
param_keyvarchar(100)否—MUL—
old_valuevarchar(255)是———
new_valuevarchar(255)否———
operator_idbigint(20)否——操作人ID
reasonvarchar(255)是——修改原因
effective_atdatetime是——生效时间
created_atdatetime是CURRENT_TIMESTAMP——

七、资金与红包

withdraw

提现申请表(含备付金 T+1 兑付跟踪列)

业务说明:提现申请:金额/手续费(3%内扣)/实际到账;status 0待审/1处理中/2已完成/3驳回;reserve_settled 备付金 T+1 外部兑付标志。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL—
nicknamevarchar(50)是———
amountdecimal(12,2)否——提现金额
feedecimal(12,2)是0.00—手续费
actual_amountdecimal(12,2)是0.00—实际到账
methodvarchar(50)是交易所仓票兑换——
statustinyint(4)是0MUL0待审核 1处理中 2已完成 3已驳回
reject_reasonvarchar(255)是———
operator_idbigint(20)是———
remarkvarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMPMUL—
updated_atdatetime是CURRENT_TIMESTAMP——
reserve_settledtinyint(4)否0—备付金是否已 T+1 兑付(外部出金) 0未 1已
reserve_settled_atdatetime是——备付金兑付时间

transfer

业务说明:链内转账:仅同 V6 根推荐链且祖先后代关系可转;手续费 0.1% 入平台;status 0待处理/1成功/2失败。

字段类型可空默认键说明
idbigint(20)否—PRI—
from_user_idbigint(20)否0MUL—
to_user_idbigint(20)否0MUL—
chain_rootbigint(20)否0—同V6根推荐链ID
amountdecimal(12,2)否0.00—转账金额
feedecimal(12,2)否0.00—手续费
statustinyint(4)否0—0待处理 1成功 2失败
batch_novarchar(40)否—UNI—
remarkvarchar(255)是———
created_atdatetime是CURRENT_TIMESTAMP——

red_packet_ledger

业务说明:现金红包流水(统一记账):income/reward/dividend/transfer_out/in/withdraw/consume;ref_type+ref_id 关联业务。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL—
change_typevarchar(30)否—MULincome/reward/dividend/transfer_out/transfer_in/withdraw/consume
sub_typevarchar(30)否——细分来源(仅 change_type=reward 有值: reward_share/reward_team/reward_team_merchant/reward_lock/reward_recommend)
amountdecimal(12,2)否0.00—正为入负为出
balance_afterdecimal(12,2)否0.00——
ref_typevarchar(30)是——关联业务
ref_idbigint(20)是0——
remarkvarchar(255)否——备注(后台手工调账必填)
order_idbigint(20)否0MUL订单ID(sales_order.id)
item_idbigint(20)否0—订单明细ID(order_item.id)
goods_idbigint(20)否0MUL商品ID(goods.id)
goods_namevarchar(120)否——商品名称快照
created_atdatetime是CURRENT_TIMESTAMP——

stock_exchange_apply

业务说明:上市股票兑换申请(内部记账:会员用资产兑换股票份额的申请与状态机)。

字段类型可空默认键说明
idbigint(20)否—PRI—
member_idbigint(20)否—MUL申请会员ID
exchange_pointdecimal(12,2)否0.00—申请兑换的兑换积分(兑换积分池)
stock_amountdecimal(12,2)否0.00—兑换股票权益数量(内部记账·股)
ratedecimal(12,4)否0.0000—兑换比率=兑换积分/股(申请时快照)
statustinyint(4)否0MUL0待审 1通过 2驳回
remarkvarchar(255)是———
audit_bybigint(20)是0—审核人(admin_id)
audit_atdatetime是———
created_atdatetime是CURRENT_TIMESTAMP——

八、行政区划

region

业务说明:行政区划(省/市/区三级):code 唯一、parent_code 父级、path 祖先编码链、name_path 名称链;运费试算/收货地址/商家区域匹配用。

字段类型可空默认键说明
idbigint(20)否—PRI—
codevarchar(20)否—UNI行政区划编码 area_id
namevarchar(50)否——名称
parent_codevarchar(20)否—MUL父级编码 area_pid
leveltinyint(4)否—MUL1省/直辖市/自治区/港澳台 2市 3区·街道
pathvarchar(255)否——祖先编码路径,逗号分隔(含自身)
name_pathvarchar(255)否——祖先名称路径,空格分隔
zop_codevarchar(20)否——联通ZOP编码
sortint(11)否0——
statustinyint(4)否1——

九、结算引擎基础设施(无 Redis 自研)

job_queue

业务说明:自研队列表(替代 think-queue):tube 任务类型、payload JSON、status、attempt、batch_id 幂等唯一。

字段类型可空默认键说明
idbigint(20)否—PRI—
tubevarchar(60)否defaultMUL任务类型
payloadmediumtext否——JSON 参数
statustinyint(4)否0—0待处理 1处理中 2完成 3失败
attemptint(11)否0——
batch_idvarchar(40)是—UNI幂等批次,NULL 不约束;非NULL唯一
available_atdatetime是CURRENT_TIMESTAMP—可消费时间
reserved_atdatetime是———
created_atdatetime是CURRENT_TIMESTAMP——

schedule_lock

业务说明:调度/幂等锁(替代 Redis):key 唯一,owner+expire_at 防并发重复执行。

字段类型可空默认键说明
idbigint(20)否—PRI—
keyvarchar(128)否—UNI—
ownervarchar(64)否———
expire_atdatetime否———
created_atdatetime是CURRENT_TIMESTAMP——

十、支付与结算(多渠道支付体系)

pay_channel

支付渠道配置(策略网关注册表:channel_code 唯一、gateway_class 网关类、mode 清分模式、config_json 渠道密钥参数)

业务说明:支付渠道配置(策略网关注册表):channel_code 唯一;gateway_class 网关类(PaymentGatewayInterface 实现);mode 1实时分账(需子商户)/2平台代收;status 开关;priority 优先级;min_amount/max_amount 金额区间(路由:订单指定>商户绑定>金额区间>平台默认);config_json 渠道密钥参数 JSON(敏感字段后台脱敏);health_status/last_checked_at/fail_count 健康检查。

字段类型可空默认键说明
idbigint(20)否—PRI—
channel_codevarchar(30)否—UNI渠道编码 joinpay/kuaifu/wechat/alipay/ecny
channel_namevarchar(60)否——渠道名称 汇聚支付/快付支付/微信支付/支付宝/数字人民币
gateway_classvarchar(120)否——网关实现类全名 appservicegatewayXxxGateway
modetinyint(4)否1—1实时分账(服务商+子商户) 2平台代收+下游结算
statustinyint(4)否0MUL0禁用 1启用
prioritytinyint(4)否99MUL平台默认优先级(越小越优先)
min_amountdecimal(12,2)否0.00—启用金额下限(元),路由金额区间用
max_amountdecimal(12,2)否0.00—启用金额上限(元),0=不限
config_jsonmediumtext是——渠道密钥/主商户号/网关地址/证书路径等(JSON)
remarkvarchar(255)否——备注
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——
health_statustinyint(4)否0—0未知 1健康 2异常(容灾自动跳过)
last_checked_atdatetime是——最近一次健康检查时间
fail_countint(11)否0—连续下单失败计数(容灾观测)
fail_atdatetime是——最近一次下单失败时间

pay_trade

支付流水(每笔支付唯一记录,含订单关联/渠道单号/回调原文/重试计数)

业务说明:支付流水(每笔支付唯一记录):out_trade_no 我方交易号、channel_trade_no 渠道交易号、order_no 关联订单、merchant_id、channel_code、sub_merchant_no 子商户号、pay_method 支付方式、amount 金额、balance_offset 红包/余额抵扣额、status 0待支付/1成功/2已关单/3退款、notify_data 回调原文、notify_count/last_notify_at 回调重试。

字段类型可空默认键说明
idbigint(20)否—PRI—
out_trade_novarchar(64)否—UNI平台内部交易号(我们生成)
channel_trade_novarchar(64)否—MUL支付商交易号(回调回填)
order_novarchar(40)否—MUL关联订单号 sales_order.order_no
merchant_idbigint(20)否0MUL归属商家 0=平台自营
channel_codevarchar(30)否—MUL支付渠道编码
sub_merchant_novarchar(64)否——实际收款子商户号(路径A)
pay_methodvarchar(30)否——支付方式 微信/支付宝/银行卡/余额
amountdecimal(12,2)否0.00—交易金额(元)
balance_offsetdecimal(12,2)否0.00—余额/红包抵扣金额
currencyvarchar(10)否CNY——
subjectvarchar(120)否——订单标题
trade_typetinyint(4)否1—1收款 2退款
statustinyint(4)否0—0待支付 1支付中 2已支付 3已关闭 4退款中 5已退款 9失败
notify_datamediumtext是——原始回调报文(JSON)
paid_atdatetime是—MUL支付成功时间(回调回填)
expire_atdatetime是——订单超时时间
client_ipvarchar(45)否——下单客户端IP
return_urlvarchar(255)否——同步跳转地址
notify_urlvarchar(255)否——异步回调地址
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——
notify_countint(11)否0—回调通知累计次数(重放观测)
last_notify_atdatetime是——最近一次收到回调的时间

pay_split_rule

清分规则与结果(mode=1 实时分账:分账比例/金额/渠道分账单号)

业务说明:清分规则与结果:trade_id/out_trade_no 关联支付流水,merchant_id 参与方、split_mode 分账方式、split_value 比例或金额、amount 分账额、provider_split_no 渠道分账单号、status 0待分/1成功/2失败。

字段类型可空默认键说明
idbigint(20)否—PRI—
trade_idbigint(20)否0MUL关联 pay_trade.id
out_trade_novarchar(64)否—MUL平台交易号(冗余,便于对账)
order_novarchar(40)否—MUL关联订单号
merchant_idbigint(20)否0MUL分账接收方商家(子商户) 0=平台
channel_codevarchar(30)否——渠道编码
split_modetinyint(4)否1—1按比例(%) 2固定金额(元)
split_valuedecimal(12,2)否0.00—比例值 或 固定金额
amountdecimal(12,2)否0.00—实际分账金额(计算回填)
statustinyint(4)否0MUL0待分账 1已分账 2失败 3无需分账
provider_split_novarchar(64)否——支付商分账流水号(路径A回填)
error_msgvarchar(255)否——分账失败原因
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

member_bank_agreement

会员签约卡(joinpay 等渠道免密支付签约,卡号/姓名掩码存储)

业务说明:会员签约卡(免密支付):member_id/channel_code/merchant_id、mch_no 商户号、sign_no 渠道签约号、bank_code/bank_card_type/bank_card_mask 卡号掩码、payer_name_mask 姓名掩码、status 0未签约/1已签约、signed_at/last_used_at。

字段类型可空默认键说明
idbigint(20)否—PRI—
member_idbigint(20)否0MUL会员ID → member.id
channel_codevarchar(30)否joinpay—支付渠道编码(默认 joinpay 快捷协议支付)
merchant_idbigint(20)否0—签约所用平台商户(0=平台默认 joinpay 配置) → merchant.id
mch_novarchar(64)否—MUL汇聚商户号(签约归属的商户号,sign_no 与之绑定)
sign_novarchar(64)否—MUL签约ID(汇聚 smsSign 返回,后续支付/解约上送)
sign_order_novarchar(40)否——签约订单号(汇聚 signSms 下发短信时生成,smsSign 须携带一致)
bank_codevarchar(20)否——银行简码(签约成功返回)
bank_card_typetinyint(4)否0—1借记卡 2贷记卡
bank_card_maskvarchar(30)否——脱敏卡号(如 6225****8888)
payer_name_maskvarchar(30)否——脱敏持卡人姓名(如 张*)
id_typevarchar(4)否1—证件类型(默认 1=身份证)
statustinyint(4)否1MUL1生效 0已解约
last_used_atdatetime是——最近一次支付使用时间
signed_atdatetime是——签约成功时间
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

merchant_pay_channel

商户绑定支付渠道(商户×渠道多对多,含子商户入驻状态)

业务说明:商户绑定支付渠道:merchant_id×channel_code 多对多、priority 优先级、sub_merchant_no/sub_merchant_key 子商户号与密钥、settle_account 结算账户、sub_status 子商户入驻状态(0未申请/1待审/2已入驻)、config_json。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否0MUL商家ID → merchant.id
channel_codevarchar(30)否—MUL渠道编码(同 pay_channel)
statustinyint(4)否0—0禁用 1启用
prioritytinyint(4)否99—商户级优先级(覆盖平台默认)
sub_merchant_novarchar(64)否——子商户号(入驻API返回)
sub_merchant_keyvarchar(255)否——子商户独立密钥/证书标识(可选)
settle_accountvarchar(64)否——结算账户(银行卡/钱包标识)
sub_statustinyint(4)否0MUL0未入驻 1入驻中 2已入驻 3入驻失败
sub_rawmediumtext是——入驻API原始返回(JSON,便于排障)
config_jsonmediumtext是——商户级覆盖配置(JSON)
applied_atdatetime是——入驻申请时间
activated_atdatetime是——入驻完成时间
remarkvarchar(255)否——备注
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

kuaifu_merchant_apply

业务说明:快付(GDKF)商户进件申请记录:商户资质/子商户号/进件状态,作为 merchant_pay_channel 子商户入驻的来源。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
merchant_idbigint(20) unsigned否—MUL本地商家ID(merchant.id)
out_mer_codevarchar(32)否—UNI外部商户号(唯一,字母数字下划线)
channel_codevarchar(32)否easypay—渠道编号
business_rolevarchar(12)否ACQUIRING—ACQUIRING收单/SPLIT分账接收方
h5_register_flowvarchar(64)否—MULH5进件流水号
register_idvarchar(64)否—MUL申请单号(产品开通后返回)
register_urlvarchar(512)否——H5注册地址
statusvarchar(16)否WAITMULWAIT/DOING/FAIL/SUCCESS
fail_descvarchar(255)否——进件失败描述
sign_statusvarchar(16)否——签约 WAIT/DOING/SUCCESS/FAIL
sign_urlvarchar(512)否——签约地址
split_sign_statusvarchar(16)否——分账协议签约状态(必返回字段)
split_sign_urlvarchar(512)否——分账协议签约地址
wx_auth_statusvarchar(32)否——微信开户意愿确认状态
alipay_auth_statusvarchar(32)否——支付宝实名确认状态
user_idvarchar(32)否——快付用户ID(SUCCESS后返回)
application_idvarchar(48)否——应用APPID(SUCCESS后返回,交易/配置接口用)
notify_urlvarchar(512)否——进件通知地址
pro_open_statusvarchar(16)否——产品开通:空/DOING/SUCCESS/FAIL
pro_open_descvarchar(255)否——产品开通描述
split_add_statusvarchar(16)否——分账接收方添加:空/SUCCESS/FAIL
created_atdatetime否CURRENT_TIMESTAMP——
updated_atdatetime否CURRENT_TIMESTAMP——

十一、优惠券与营销

coupon

优惠券模板(满减券:金额/门槛/有效期/发放量)

业务说明:优惠券模板(满减):amount 面额、min_amount 使用门槛、expire_days 领取后有效期(天)、total/taken 发放总量/已领取、status 0停用/1启用。

字段类型可空默认键说明
idbigint(20)否—PRI—
namevarchar(80)否———
amountdecimal(10,2)否0.00—抵扣金额
min_amountdecimal(10,2)否0.00—满额门槛
expire_daysint(11)否7—领取后有效期(天)
totalint(11)否0—发行量
takenint(11)否0—已领取
statustinyint(4)否1MUL1启用 0停用
created_atdatetime是CURRENT_TIMESTAMP——

member_coupon

会员持有优惠券(领取/核销状态,order_no 关联核销订单)

业务说明:会员持有优惠券:user_id/coupon_id 领取来源、name/amount/min_amount 快照、expire_at 到期时间、status 0未用/1已用/2已过期、used_at/order_no 核销信息。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL—
coupon_idbigint(20)否———
namevarchar(80)否———
amountdecimal(10,2)否0.00——
min_amountdecimal(10,2)否0.00——
expire_atdatetime否———
statustinyint(4)否1—1未用 2已用 3过期
used_atdatetime是——使用时间
order_novarchar(40)是——抵扣的订单号
created_atdatetime是CURRENT_TIMESTAMP——

group_buy_activity

拼团活动(拼团价/成团人数/库存/上下架时间窗)

业务说明:拼团活动:goods_id/goods_name/cover、origin_price 原价、group_price 拼团价、group_size 成团人数、stock/sold 库存/销量、status 0停用/1进行中、start_at/end_at 时间窗。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
goods_idint(10) unsigned否0MUL—
goods_namevarchar(120)否———
covervarchar(255)否———
origin_pricedecimal(12,2)否0.00——
group_pricedecimal(12,2)否0.00——
group_sizeint(10) unsigned否3—成团所需人数
stockint(10) unsigned否0—活动库存
soldint(10) unsigned否0—已成团件数(按成功团计)
statustinyint(4)否1MUL1进行中 0下架
start_atdatetime是———
end_atdatetime是———
created_atdatetime否CURRENT_TIMESTAMP——

group_buy_team

拼团团队(团长/成团进度/过期时间)

业务说明:拼团团队:activity_id、leader_id 团长、status 0拼团中/1成功/2失败/3已退款、current_num/need_num 当前/需成团人数、expire_at 拼团截止。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
activity_idint(10) unsigned否0MUL—
leader_idbigint(20)否0—开团人
statustinyint(4)否1MUL1拼团中 2已成团 3已失败/过期
current_numint(10) unsigned否1—当前参团人数
need_numint(10) unsigned否3—需要人数
expire_atdatetime是——拼团截止
created_atdatetime否CURRENT_TIMESTAMP——

group_buy_member

拼团成员(团队成员与团长标识)

业务说明:拼团成员:team_id/activity_id/user_id、is_leader 是否团长、joined_at 参团时间。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
team_idint(10) unsigned否0MUL—
activity_idint(10) unsigned否0MUL—
user_idbigint(20)否0MUL—
is_leadertinyint(4)否0—1团长 0团员
joined_atdatetime否CURRENT_TIMESTAMP——

home_banner

首页轮播(主题色/图片/跳转链接/排序/启停)

业务说明:首页轮播:title/subtitle、theme 主题色、image 图片、link_type 跳转类型(商品/分类/活动/链接)、link_target、sort 排序、status 启停。

字段类型可空默认键说明
idbigint(20)否—PRI—
titlevarchar(100)否——Banner 标题
subtitlevarchar(200)是——副标题
themevarchar(20)是gold—主题色: gold / brown / dark
imagevarchar(500)是——图片 URL
link_typevarchar(20)是none—跳转类型: none / goods / store / url
link_targetvarchar(500)是——跳转目标
sortint(11)是0MUL排序(越小越前)
statustinyint(4)是1MUL1启用 0禁用
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

home_nav

首页金刚区导航(图标 glyph/跳转路径/排序/启停)

业务说明:首页金刚区导航:key_name 唯一键、label 名称、glyph 图标标识、path 跳转路径、sort 排序、status 启停。

字段类型可空默认键说明
idbigint(20)否—PRI—
key_namevarchar(30)否——标识 key(前端路由匹配)
labelvarchar(20)否——显示文字
glyphvarchar(10)否——单字图标
pathvarchar(200)是——跳转路径
sortint(11)是0MUL排序(越小越前)
statustinyint(4)是1MUL1启用 0禁用
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

十二、会员功能扩展

member_address

会员收货地址(地区编码+名称快照,is_default 默认标记)

业务说明:收货地址:user_id、name/phone、region_code/region_name 地区编码+名称快照、detail 详细地址、is_default 是否默认。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
user_idint(10) unsigned否—MUL—
namevarchar(50)否——收货人
phonevarchar(20)否——手机号
region_codevarchar(20)否——末级地区 code(关联 region 表)
region_namevarchar(100)否——完整地区名路径(省/市/区)
detailvarchar(255)否——详细地址
is_defaulttinyint(4)否0—1=默认地址
created_atint(11)否0——
updated_atint(11)否0——

member_favorite

会员商品收藏(user_id+goods_id 唯一)

业务说明:商品收藏:user_id+goods_id 唯一,created_at 收藏时间。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL—
goods_idbigint(20)否———
created_atdatetime是CURRENT_TIMESTAMP——

member_cart

购物车(user_id 隔离,goods_id+sku_id 维度,selected 勾选状态)

业务说明:购物车:user_id 隔离、goods_id+sku_id 商品维度、qty 数量、selected 勾选状态;结算清购物车在订单创建事务内删除。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
user_idint(10) unsigned否—MUL—
goods_idint(10) unsigned否———
sku_idint(10) unsigned否0—0 表示非多规格(取商品主价)
qtyint(10) unsigned否1——
selectedtinyint(4)否1—1=选中参与结算 0=未选
created_atint(11)否0——
updated_atint(11)否0——

member_message

站内信(类型/标题/内容)

业务说明:站内信:user_id、type 类型、title/content、created_at。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL0=全员公告;>0 指定会员私信
typetinyint(4)否1—1系统公告 2私信
titlevarchar(120)否———
contenttext是——正文(支持纯文本)
created_atdatetime是CURRENT_TIMESTAMPMUL—

member_message_read

站内信已读记录(user_id+message_id)

业务说明:站内信已读:user_id+message_id、read_at。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否0MUL—
message_idbigint(20)否0——
read_atdatetime是CURRENT_TIMESTAMP——

member_invite_log

业务说明:邀请注册流水(邀请人/被邀请人/注册时间/奖励发放标记),裂变拉新对账用。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
inviter_idbigint(20) unsigned否—MUL邀请人 member.id
invitee_idbigint(20) unsigned否—MUL被邀请人 member.id
invite_codevarchar(32)否——使用的邀请码
channelvarchar(16)否card—来源:card卡片/qrcode小程序码/link链接
statustinyint(4)否1—1有效 0失效(解绑/风控)
created_atdatetime否———

sms_code

短信验证码(手机号/验证码/类型/过期/使用标记)

业务说明:短信验证码:mobile、code、type 用途、used 是否使用、expired_at 过期时间。

字段类型可空默认键说明
idbigint(20)否—PRI主键
mobilevarchar(20)否—MUL手机号
codevarchar(10)否——验证码(明文,5 分钟内有效)
typevarchar(20)否login—场景 login/register(预留扩展)
usedtinyint(4)否0—0未使用 1已使用
expired_atdatetime否—MUL过期时间
created_atdatetime是CURRENT_TIMESTAMP——

verify_code

通用验证码(scene 场景区分:登录/注册/改密等)

业务说明:通用验证码:mobile、code、scene 场景(login/register/reset 等)、expires_at、used。

字段类型可空默认键说明
idbigint(20)否—PRI—
mobilevarchar(20)否—MUL—
codevarchar(10)否———
scenevarchar(20)否merchant_apply——
expires_atdatetime否———
usedtinyint(4)否0——
created_atdatetime是CURRENT_TIMESTAMP——

sms_config

短信服务商配置(driver 驱动 + config_json)

业务说明:短信服务商配置:driver 驱动(aliyun/tencent 等)、config_json 密钥参数、status 启停。

字段类型可空默认键说明
idint(11)否1PRI单例行固定 1
drivervarchar(16)否mock—短信驱动 mock/aliyun
config_jsonmediumtext是——驱动相关参数(JSON,含密钥)
statustinyint(4)否1—0禁用 1启用
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

storage_config

对象存储配置(driver 驱动 + config_json,如七牛云)

业务说明:对象存储配置:driver 驱动(如 qiniu 七牛云)、config_json(下划线键 access_key/secret_key)、status。

字段类型可空默认键说明
idint(11)否1PRI单例行固定 1
drivervarchar(16)否local—存储驱动 local/qiniu/aliyun
config_jsonmediumtext是——驱动相关参数(JSON,含密钥)
statustinyint(4)否1—0禁用 1启用
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

member_points_log

积分流水(旧版表,已废弃——真实流水见 point_record)

业务说明:积分流水(旧版,已废弃):真实流水见 point_record(type 收入/支出/锁定/解冻,point_type 消费/兑换/锁仓)。

字段类型可空默认键说明
idbigint(20)否—PRI—
user_idbigint(20)否—MUL—
kindtinyint(4)否1—1积分 2红包
typetinyint(4)否1—1收入 2支出
amountdecimal(12,2)否0.00——
balancedecimal(12,2)否0.00—变动后余额
remarkvarchar(120)是———
created_atdatetime是CURRENT_TIMESTAMP——

十三、商家与门店

merchant_apply

商家入驻申请(含营业执照/代建账号,审核状态机)

业务说明:商家入驻申请:apply_no 申请单号、merchant_name、type/category 类型类目、region/contact/mobile、legal_person 法人、license_no/license_image 营业执照、username/password 代建登录账号(bcrypt)、status 0待审/1通过/2驳回、audit_remark、reviewed_by/at 审核人/时间。

字段类型可空默认键说明
idbigint(20)否—PRI—
apply_novarchar(32)否—UNI申请编号
merchant_namevarchar(120)否——商户名称
typetinyint(4)否2—1线上/2线下
categoryvarchar(50)是——经营类目
regionvarchar(100)是——地区 name_path 文本
contactvarchar(50)是——联系人
mobilevarchar(20)否—MUL实名手机
legal_personvarchar(40)是——法人
license_novarchar(60)是——执照号
license_imagevarchar(255)是——执照图片URL
usernamevarchar(50)否—UNI自设登录账号
passwordvarchar(255)否——自设密码 bcrypt 哈希
statustinyint(4)否0MUL0待审核/1通过/2驳回
audit_remarkvarchar(255)是——驳回原因/审核备注
reviewed_bybigint(20)是——审核人 admin_id
reviewed_atdatetime是——审核时间
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——
region_codevarchar(20)是——末级行政区划编码 region.code
region_namevarchar(150)是——地区名称路径(空格分隔)
member_idbigint(20)是—MUL申请关联的C端会员ID
bind_sourcetinyint(4)否0—绑定来源:0无/1C端带入/2PC端验证

merchant_store

门店(商户下多门店,含定位/评分/营业时间)

业务说明:门店:merchant_id、name、region/address、contact、region_code/region_name、lat/lng 定位、rating 评分、logo、category、business_hours、status。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL所属商家
namevarchar(120)否——门店名称
regionvarchar(100)是——所在区域(省/市/区路径)
addressvarchar(255)是——详细地址
contactvarchar(50)是——门店联系人/电话
statustinyint(4)是1—0禁用 1启用
created_atdatetime是CURRENT_TIMESTAMP——
region_codevarchar(20)是——末级行政区划编码 region.code
region_namevarchar(150)是——地区名称路径(空格分隔)
latdecimal(10,6)是——纬度
lngdecimal(10,6)是——经度
ratingdecimal(2,1)否5.0—评分(0-5)
logovarchar(255)是——门店Logo
categoryvarchar(30)是——经营分类(餐饮/零售/服务)
business_hoursvarchar(60)是——营业时间
bannervarchar(512)否——门店顶部banner图
introvarchar(500)否——店铺简介

merchant_role

商家角色(权限点 + 门店数据范围 data_scope)

业务说明:商家角色(RBAC):merchant_id、role_code/role_name、permissions 权限点 JSON、data_scope 门店数据范围(0全部/1本店/2自定义)、status。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL所属商家(0=系统内置模板)
role_codevarchar(50)否——角色代码 owner/operator/finance/service/readonly
role_namevarchar(50)否——角色名称
descriptionvarchar(255)是——描述
permissionstext是——权限码 JSON 数组
data_scopetinyint(4)是1—1=全部门店 2=指定门店
statustinyint(4)是1—0禁用 1启用
created_atdatetime是CURRENT_TIMESTAMP——

merchant_staff

商家员工(角色绑定 role_id + 门店范围 store_ids)

业务说明:商家员工:username/password(bcrypt)、real_name/mobile、role_id 角色、store_ids 管辖门店 JSON、status、last_login_ip/time。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL所属商家
usernamevarchar(50)否——登录账号
passwordvarchar(255)否——bcrypt 密码
real_namevarchar(50)是——姓名
mobilevarchar(20)是——手机号
role_idbigint(20)是0—角色(复用 admin_role)
store_idstext是——负责门店ID JSON 数组(空=按角色 data_scope)
statustinyint(4)是1—0禁用 1启用
last_login_ipvarchar(50)是——最近登录IP
last_login_timedatetime是——最近登录时间
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——
member_idbigint(20)是——对应C端会员(owner)

merchant_balance

商家余额(可用/冻结/累计进出,version 乐观锁)

业务说明:商家余额:available 可用/frozen 冻结/total_in 累计入/total_out 累计出、version 乐观锁。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—UNI关联 merchant.id
availabledecimal(12,2)否0.00—可用余额
frozendecimal(12,2)否0.00—冻结余额
total_indecimal(12,2)否0.00—累计入账
total_outdecimal(12,2)否0.00—累计出账
versionint(11)否0—乐观锁
created_atdatetime是CURRENT_TIMESTAMP——
updated_atdatetime是CURRENT_TIMESTAMP——

merchant_balance_ledger

商家余额流水(变动类型/变动后余额/业务引用)

业务说明:商家余额流水:change_type 变动类型、amount、balance_after 变动后余额、ref_type/ref_id 业务引用、remark。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL—
change_typevarchar(30)否——pay_settle=订单清分入账 / platform_fee=平台抽成(归属平台,merchant_id=0) / withdraw=提现出账 / adjust=手工调整
amountdecimal(12,2)否0.00——
balance_afterdecimal(12,2)否0.00——
ref_typevarchar(30)否—MULpay_trade / withdraw / manual
ref_idbigint(20)否0——
remarkvarchar(255)否———
created_atdatetime是CURRENT_TIMESTAMP——

merchant_notify

商家通知(类型/标题/内容/已读)

业务说明:商家通知:type、title/content、is_read、created_at。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL关联 merchant
typevarchar(30)否audit—通知类型
titlevarchar(120)否———
contenttext是———
is_readtinyint(4)否0MUL—
created_atdatetime是CURRENT_TIMESTAMP——

merchant_bind_log

业务说明:商户-C端会员绑定留痕(线下商家与 C 端会员的绑定/解绑记录,用于核销与权益归属)。

字段类型可空默认键说明
idbigint(20)否—PRI—
merchant_idbigint(20)否—MUL商户ID(0=仅申请阶段绑定)
apply_idbigint(20)否0MUL入驻申请ID(申请阶段绑定留痕)
member_idbigint(20)否—MUL绑定会员ID
actionvarchar(16)否bind—bind/unbind/rebind
sourcetinyint(4)否0—1C端带入/2PC端验证/3平台代建
mobilevarchar(20)是——绑定手机号快照
operator_typevarchar(16)否system—admin/member/system
operator_idbigint(20)否0—操作者ID
remarkvarchar(255)是———
created_atdatetime否CURRENT_TIMESTAMP——

十四、交易售后与评价

order_refund

退款申请(退款单号/原因/金额/状态机)

业务说明:退款申请:refund_no 退款单号、order_id/order_no、user_id、reason、amount、status 0待审/1通过/2驳回/3已退款、remark。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
refund_novarchar(32)否—UNI退款单号 RF + 时间 + 随机
order_idint(10) unsigned否0MUL关联 sales_order.id
order_novarchar(32)否——关联订单号(冗余便于展示)
user_idint(10) unsigned否0MUL申请人(会员)
reasonvarchar(255)否——退款原因
amountdecimal(12,2)否0.00—退款金额
statustinyint(4)否1—1申请中 2已退款 3已驳回
remarkvarchar(255)否——平台处理备注
created_atdatetime是———
updated_atdatetime是———

order_review

订单评价(商品/评分/图文/匿名/审核状态)

业务说明:订单评价:order_id/order_no/order_item_id、user_id/goods_id/sku_id/merchant_id、goods_name/spec_str 快照、rating 星级、content/images、is_anonymous 匿名、status 0待审/1已发布/2隐藏。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
order_idbigint(20) unsigned否——订单ID
order_novarchar(32)否——订单号
order_item_idbigint(20) unsigned否—UNI订单商品行ID
user_idbigint(20) unsigned否—MUL评价会员ID
goods_idbigint(20) unsigned否—MUL商品ID
sku_idbigint(20) unsigned否0—规格SKU ID
merchant_idbigint(20) unsigned否0—商家ID
goods_namevarchar(200)是——商品名快照
spec_strvarchar(255)是——规格文本快照
ratingtinyint(4)否5—评分 1-5
contentvarchar(1000)是——评价内容
imagestext是——晒图JSON数组
is_anonymoustinyint(4)否0—是否匿名 1是
statustinyint(4)否1—状态 1显示 0隐藏
created_atdatetime是——评价时间

十五、AI 智能客服

ai_cs_config

业务说明:AI 客服运行配置(开关/模型选择/限流/脱敏/卡片意图阈值等全局参数)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
keyvarchar(64)否—UNI配置键
valuetext是——配置值
updated_atdatetime否CURRENT_TIMESTAMP——

ai_cs_session

业务说明:AI 客服会话(用户维度会话上下文:状态/最后消息/来源渠道)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
session_novarchar(32)否—UNI会话编号(对外展示)
user_idbigint(20) unsigned否0MUL会员ID,0=匿名
store_idbigint(20) unsigned否0—商户ID,0=平台统一客服(多商户预留)
statustinyint(4)否0MUL0=进行中 1=已关闭 2=已转人工
last_intentvarchar(32)否——最近一次意图(shipment/refund/order/points/faq/human)
message_countint(10) unsigned否0—消息条数(含用户+助手)
handoff_idbigint(20) unsigned否0—关联的转人工单ID
created_atdatetime否CURRENT_TIMESTAMP——
updated_atdatetime否CURRENT_TIMESTAMP——

ai_cs_message

业务说明:AI 客服消息(用户与机器人逐条消息:角色/内容/耗时/命中卡片)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
session_idbigint(20) unsigned否0MUL—
store_idbigint(20) unsigned否0—商户ID,0=平台统一客服(多商户预留)
rolevarchar(16)否user—user/assistant/system
contenttext否——消息文本
intentvarchar(32)否——该条消息意图标签
quick_repliestext是——助手消息携带的快捷回复(JSON数组)
cardtext是——富消息卡片JSON(order/goods/points/logistics)
tokensint(10) unsigned否0—本次消耗的token(仅assistant)
created_atdatetime否CURRENT_TIMESTAMPMUL—

ai_cs_faq

业务说明:AI 客服 FAQ 知识库(问题/标准答案/关键词/分类/置信阈值,语义召回用)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
questionvarchar(255)否——标准问法(用于展示)
answertext否——标准答案
keywordstext是——触发关键词(JSON数组,命中任一即召回)
similarvarchar(1000)是——相似问法(JSON数组)
categoryvarchar(32)否generalMUL分类:general/shipment/refund/order/points/payment
sortint(11)否0—排序(小在前)
enabledtinyint(4)否1MUL1=启用 0=停用
hitsint(10) unsigned否0—命中次数(运营参考)
created_atdatetime否CURRENT_TIMESTAMP——
updated_atdatetime否CURRENT_TIMESTAMP——

ai_cs_model

业务说明:AI 客服模型通道配置(多模型失败切换:provider/model/key/优先级/启停)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
namevarchar(64)否—UNI通道显示名(如 通义千问 / DeepSeek / 自建GPT)
providervarchar(32)否openai—供应商标识:dashscope/deepseek/openai/azure/...(仅用于展示与日志)
base_urlvarchar(255)否——OpenAI 兼容 base_url(到 /chat/completions 之前)
modelvarchar(64)否——模型名(如 qwen-plus / deepseek-chat / gpt-4o)
api_keyvarchar(512)否——敏感凭证;列表接口脱敏为 ****+后4位,绝不返回明文
priorityint(11)否0—优先级:越小越优先(失败切换顺序)
enabledtinyint(4)否1MUL1=启用 0=停用(停用通道不参与切换)
is_defaulttinyint(4)否0—1=默认通道(同优先级下优先,且作为配置页展示默认值)
temperaturedecimal(3,2)是——生成温度(可空,空则回落 config/ai.php 的 temperature)
max_tokensint(11)是——最大输出 token(可空,空则回落 config/ai.php 的 max_tokens)
created_atdatetime否CURRENT_TIMESTAMP——
updated_atdatetime否CURRENT_TIMESTAMP——

ai_cs_decision_log

业务说明:AI 客服决策审计日志(gate/card_type/cost_ms/resolved,指代消解打 [coref] 标)。

字段类型可空默认键说明
idint(10) unsigned否—PRI—
session_idint(10) unsigned否0—会话ID
user_idint(10) unsigned否0MUL会员ID(0=匿名)
questionvarchar(500)否——用户提问原文
intentvarchar(32)否——路由意图
gatevarchar(32)否—MUL命中闸门: order_no/human/card_points/card_logistics/.../faq/ai/fallback
card_typevarchar(32)否——卡片类型
faq_idint(10) unsigned否0—命中的FAQ ID
ai_calledtinyint(1)否0—是否尝试调用大模型
ai_oktinyint(1)否0—大模型是否成功返回
tokensint(10) unsigned否0—本次消耗token
cost_msint(10) unsigned否0—本次耗时(毫秒)
resolvedtinyint(1)否1MUL1=已解决 0=未解决(知识缺口)
created_atdatetime是—MUL—

ai_cs_handoff

业务说明:AI 客服转人工工单(触发转人工后的工单:用户/问题摘要/处理人/状态)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
session_idbigint(20) unsigned否0MUL—
user_idbigint(20) unsigned否0—会员ID,0=匿名
reasonvarchar(255)否——转人工原因/摘要
last_questiontext是——用户最后的问题(便于人工接手)
contactvarchar(64)否——匿名用户留的联系方式(可选)
statustinyint(4)否0MUL0=待接待 1=接待中 2=已解决
admin_notetext是——人工处理备注
resolved_atdatetime是———
created_atdatetime否CURRENT_TIMESTAMP——

十六、页面 CMS 与访问埋点

page_page

业务说明:页面定义(草稿/发布分离:path/标题/状态/发布版本)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
page_keyvarchar(50)否—UNI页面标识(uk,如 home)
page_namevarchar(50)否——页面名称
statustinyint(4)否1—0停用 1启用
versionint(11)否1—发布版本号
draft_jsontext是——草稿快照(控件配置JSON)
published_jsontext是——已发布快照(C端只读)
published_atdatetime是——最后发布时间
scopevarchar(16)否all—端范围:all/H5/MP(预留多版本)
created_atdatetime否———
updated_atdatetime否———

page_widget

业务说明:页面控件实例(首页/自定义页的组件实例:类型/配置 JSON/排序/所属页)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
page_idbigint(20) unsigned否—MULpage_page.id
widget_keyvarchar(50)否——页面内控件标识(uk)
widget_typevarchar(30)否——控件类型(banner/nav_grid/goods_list/waterfall/...)
titlevarchar(100)否——控件名称
paramstext是——控件参数JSON(数据源+样式)
sortint(11)否0—排序(升序)
statustinyint(4)否1—0草稿 1发布 2停用
created_atdatetime否———
updated_atdatetime否———
scopevarchar(16)否all—端范围:all/H5/MP

page_visit_log

业务说明:页面访问流水(埋点:user_id/path/停留/来源,明细级)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
session_idvarchar(64)否——会话ID(前端每次启动生成)
device_idvarchar(64)否——设备指纹(本地持久化,游客去重UV)
member_idbigint(20) unsigned是—MUL会员ID(游客为空)
page_pathvarchar(200)否—MUL页面路径
page_namevarchar(50)否——页面名称
refer_pagevarchar(200)否——来源页面路径
refer_sourcevarchar(16)否direct—来源:share/nav/search/qr/direct/poster
share_codevarchar(32)否——分享码原值(invite=XSxxx)
inviter_idbigint(20) unsigned是—MUL解析后的邀请人member.id
channelvarchar(16)否noneMUL渠道:card/qrcode/link/poster/none
client_typevarchar(16)否H5—端:MP-WEIXIN/MP-ALIPAY/H5/APP
osvarchar(30)否——操作系统
devicevarchar(80)否——设备型号
screenvarchar(30)否——分辨率(宽x高)
uavarchar(255)否——User-Agent(截断)
duration_secint(11)否0—停留时长(秒)
first_visittinyint(4)否0—会话内首访标记
ipvarchar(45)否——客户端IP
created_atdatetime否—MUL访问时间

visit_daily

业务说明:页面访问日聚合(容量优化,visit:daily 命令写入,按日按页汇总 PV/UV)。

字段类型可空默认键说明
idbigint(20) unsigned否—PRI—
stat_datedate否—MUL统计日期
page_pathvarchar(200)否——页面路径
page_namevarchar(50)否——页面名称
refer_sourcevarchar(16)否direct—来源:share/nav/search/qr/direct/poster
channelvarchar(16)否none—渠道:card/qrcode/link/poster/none
client_typevarchar(16)否H5—端:MP-WEIXIN/MP-ALIPAY/H5/APP
pvint(10) unsigned否0—访问量
uvint(10) unsigned否0—独立访客(登录按member,游客按device,兜底session)
duration_secbigint(20) unsigned否0—停留总时长(秒)
first_visitsint(10) unsigned否0—会话内首访次数
created_atdatetime否——首次聚合时间
updated_atdatetime否——最近聚合时间