Skip to content

公共表

平台表(sys_platform)

字段 类型 约束 说明
...Common
name VARCHAR(32) NOT NULL 平台名称,
Android
Windows
Linux
iOS
macOS
Harmony OS
Fuchsia
Web
## 应用表(sys_app)
字段 类型 约束 说明
...Common
name VARCHAR(32) NOT NULL 应用名称
bundle_id VARCHAR(32) NOT NULL 应用 bundle id
platform_ids JSON 应用支持的平台,为空时表示支持所有平台

应用包表(sys_app_binary_info)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK, NOT NULL 平台 id
version_code INT UNSIGNED NOT NULL 版本号,UNIQUE
version_name VARCHAR(32) NOT NULL 版本名
is_force_update BOOLEAN DEFAULT FALSE 是否强制更新
url TEXT NOT NULL 下载 url
release_note_id BIGINT NOT NULL 发行日志 Id
length BIGINT NOT NULL 应用包大小
## 用户表(sys_user)

nick_name & email & phone 被称为 account.

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
nick_name VARCHAR(64) UNIQUE NOT NULL 昵称
password VARBINARY(128) SHA-256
email VARCHAR(255) UNIQUE 邮箱
avatar TEXT 头像
phone VARCHAR(64) UNIQUE 电话
gender TINYINT 性别,0 -女,1 - 男
addr TEXT 地址
birthday DATETIME 生日
profile_bio TEXT 用户简介
qq_uid VARCHAR(64) QQ 用户 id
qq_nick_name VARCHAR(64) QQ 昵称
wx_uid VARCHAR(64) 微信用户 id
wx_nick_name VARCHAR(64) 微信用户昵称
register_time DATETIME DEFAULT CURRENT_TIMESTAMP 注册时间
last_login_time DATETIME 最后登录时间
last_logout_time DATETIME 最后登出时间
block_end_time DATETIME 被封禁的结束时间,如果为空表示没有被封禁
## 客户端配置表(sys_client_config)

客户端的在线配置

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id, 如果为空则表示全部平台
version_code_range VARCHAR(32) 应用版本号在 version_code_range 范围内,则配置生效,为空表示全部版本都生效
config JSON 配置内容,见 ClientConifg

ClientConifg

字段 类型 约束 说明
display_mode TINYINT DEFAULT 0 客户端显示模式:0 - 正常模式,1 - 默哀模式
## 客户端设备表(sys_client_device)
1. 根据 uidaid 限制用户登录设备数。
2. 从 ipv4* 获取 address**。
字段 类型 约束 说明
...Common
user_id BIGINT UNSIGNED 用户 id ,如果用户没有登录,则 uid 为 -1
app_id INT UNSIGNED NOT NULL 应用 id
platform_id INT UNSIGNED NOT NULL 平台 id
ipv4 INT UNSIGNED NOT NULL 设备的 ipv4
ipv6 VARBINARY(16) 设备的 ipv6
name VARCHAR(32) 设备名称
model VARCHAR(32) 型号
brand VARCHAR(32) Android系统定制商
board VARCHAR(32) 主板
system_name VARCHAR(32) NOT NULL Android | Windows | Linux | iOS | macOS | Harmony OS | Fuchsia
system_version_code INT UNSIGNED NOT NULL
system_version_name VARCHAR(32) NOT NULL
system_arch VARCHAR(32) NOT NULL 系统架构
app_version_code INT UNSIGNED NOT NULL
app_version_name VARCHAR(32) NOT NULL
is_main BOOLEAN NOT NULL 是否为主设备
last_request_time DATETIME NOT NULL 最近请求时间
last_request_addr TEXT NOT NULL 最近请求地址, 例如:中国·山东·青岛
last_login_time DATETIME 用户最近登录时间
last_login_addr VARCHAR(32) 用户最近登录的地址
## 帮助组表(sys_help_group)
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id,空表示全部平台
version_code_range VARCHAR(32) 应用版本号范围,空表示全部版本
title VARCHAR(128) NOT NULL 标题

帮助表(sys_help)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id,空表示全部平台
help_group_id BIGINT NOT NULL 帮助组的id
title VARCHAR(128) NOT NULL 标题
content_type TINYINT NOT NULL 内容格式类型
1 URL
2 PLANTTEXT
3 HTML
4 MARKDOWN
content LONGTEXT NOT NULL 内容

反馈表(sys_feedback)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id,空表示全部平台
user_id BIGINT UNSIGNED NOT NULL 用户 id
version_code INT UNSIGNED NOT NULL 应用版本号
version_name VARCHAR(32) NOT NULL 应用版本名
content LONGTEXT NOT NULL 内容
contact_type TINYINT NOT NULL 联系方式类型
0 为 QQ
1 为 wechat
2 为 email
contact VARCHAR(255) NOT NULL 联系方式
## 发行日志表(sys_release_notes)
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id,空表示全部平台
version_code INT UNSIGNED NOT NULL 应用版本号
version_name VARCHAR(32) NOT NULL 应用版本名
notes LONGTEXT NOT NULL 日志

系统消息表(sys_system_message)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id,空表示全部平台
version_code_range VARCHAR(32) NOT NULL 如果应用版本号在 version_code_range 范围内,则显示该条消息, 空表示全部应用版本号
title VARCHAR(128) NOT NULL 标题
content_type TINYINT NOT NULL 内容类型
0 URL
1 PLANTTEXT
2 HTML
3 MARKDOWN
content LONGTEXT NOT NULL 内容
js LONGTEXT NOT NULL 当网站加载结束时执行 javascript。
## 订阅计划表(sys_subscription_plans)
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id, 如果为空则表示全部平台
name VARCHAR(100) NOT NULL 计划名称(如 “年度 VIP”)
code VARCHAR(50) UNIQUE, NOT NULL 计划编码(如 “VIP_YEAR”,用于业务逻辑)
description TEXT NOT NULL 计划描述(权益说明)
price DECIMAL(10,2) NOT NULL 订阅价格(单位:元)
discount TINYINT 折扣,如 8 表示 8 折
start_time DATETIME 有效的起始时间
end_time DATETIME 有效的结束时间
duration INT NOT NULL 订阅时长(单位:天,如 30 = 月度,365 = 年度),-1 表示永久
status TINYINT DEFAULT 1 状态:1 - 启用,0 - 禁用(下架套餐)
sort INT DEFAULT 0 排序权重(前端展示顺序)

订阅激活码表(sys_subscription_activation_code)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id, 如果为空则表示全部平台
subscription_id BIGINT NOT NULL 可以激活的对应产品
code VARCHAR(32) NOT NULL 产品激活码
start_date DATETIME 有效的起始时间
end_date DATETIME 有效的结束时间
product_duration INT 产品的生效周期,空表示使用产品本身的生效周期,-1 表示永久激活
status TINYINT DEFAULT 1 状态:1 - 启用,0 - 禁用(下架激活码)

订阅记录表(sys_user_subscriptions)

记录用户的实际订阅行为,关联用户和订阅计划,存储订阅的有效期、状态等关键信息。

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
platform_id INT UNSIGNED FK 平台 id, 如果为空则表示全部平台
user_id BIGINT UNSIGNED FK, NOT NULL 关联用户表id
plan_id BIGINT UNSIGNED FK, NOT NULL 关联订阅计划表id
subscription_no varchar(64) UNIQUE, NOT NULL 订阅订单号(业务唯一标识)
start_time DATETIME 订阅生效时间
end_time DATETIME 订阅到期时间
status TINYINT NOT NULL 订阅状态:1 - 生效中,2 - 已过期,3 - 已取消,4 - 暂停(按需扩展)
is_auto_renew TINYINT DEFAULT 0 是否自动续费:1 - 是,0 - 否
renewal_times INT UNSIGNED DEFAULT 0 自动续费次数(统计用)
cancel_time DATETIME 取消订阅时间(状态为 3 时填充)

外键约束

ALTER TABLE user_subscriptions ADD CONSTRAINT fk_user_subscriptions_user_id FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; ALTER TABLE user_subscriptions ADD CONSTRAINT fk_user_subscriptions_plan_id FOREIGN KEY (plan_id) REFERENCES subscription_plans(id) ON DELETE RESTRICT;

订阅优惠券表(sys_subscription_coupons)

若支持优惠券抵扣订阅费用,记录优惠券与订阅的关联。

字段名 数据类型 约束 说明
id BIGINT UNSIGNED PK, AUTO_INCREMENT 优惠券关联 ID
subscription_id BIGINT UNSIGNED FK, NOT NULL 关联订阅记录表id
coupon_id BIGINT UNSIGNED FK, NOT NULL 关联优惠券表id
discount decimal(10,2) NOT NULL 抵扣金额
create_time datetime DEFAULT CURRENT_TIMESTAMP 创建时间

角色表(sys_role)

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
name VARCHAR(64) NOT NULL 角色名称(如超级管理员)
code VARCHAR(64) UNIQUE, NOT NULL 角色编码(不可重复,用于权限判断)如 ADMIN
description TEXT 角色描述
parent_id BIGINT UNSIGNED 父角色 ID(支持角色继承)
status TINYINT DEFAULT 1 状态(0 - 禁用,1 - 启用)

权限表(sys_permission)

存储功能级权限,绑定具体的资源(如接口、按钮、菜单)。

字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
name VARCHAR(64) NOT NULL 权限名称
code VARCHAR(64) UNIQUE, NOT NULL 权限编码(核心,用于校验),如 sys:user:add
resource_type TINYINT 资源类型(1 - 菜单,2 - 按钮,3 - 接口)
resource_id BIGINT UNSIGNED 关联资源表 ID(如菜单 ID / 接口 ID)
status TINYINT DEFAULT 1 状态(0 - 禁用,1 - 启用)
## 用户 - 角色关联表(sys_user_role)
用户与角色的多对多关联表(一个用户可拥有多个角色)。
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
user_id BIGINT UNSIGNED FK, NOT NULL 用户 id
role_id BIGINT UNSIGNED FK, NOT NULL 角色 id
## 角色 - 权限关联表(sys_role_permission)
角色与权限的多对多关联表(一个角色可包含多个权限)。
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
role_id BIGINT UNSIGNED FK, NOT NULL 角色 id
permission_id BIGINT UNSIGNED FK, NOT NULL 权限 id
## 资源表(sys_resource)
存储平台的资源实体(菜单、按钮、接口),权限最终绑定到资源上。
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
name VARCHAR(50) NOT NULL 资源名称,如:用户管理菜单
type TINYINT NOT NULL 资源类型(1 - 菜单,2 - 按钮,3 - 接口)
path VARCHAR(200) NOT NULL 资源路径(菜单路由 / 接口 URL)如:/sys/user
component VARCHAR(200) NOT NULL 前端组件路径(仅菜单),如:sys/user/List
sort INT DEFAULT 0 排序号(用于前端展示)
status TINYINT DEFAULT 1 状态(0 - 禁用,1 - 启用)
## 数据权限表(sys_data_permission)
存储角色的数据访问规则,解决 “能看什么数据” 的问题,是平台权限的核心扩展。
字段 类型 约束 说明
...Common
app_id INT UNSIGNED FK, NOT NULL 应用 id
name VARCHAR(50) NOT NULL 资源名称,如:用户管理菜单
type TINYINT NOT NULL 资源类型(1 - 菜单,2 - 按钮,3 - 接口)
path VARCHAR(200) NOT NULL 资源路径(菜单路由 / 接口 URL)如:/sys/user
component VARCHAR(200) NOT NULL 前端组件路径(仅菜单),如:sys/user/List
sort INT DEFAULT 0 排序号(用于前端展示)
status TINYINT DEFAULT 1 状态(0 - 禁用,1 - 启用)