# 数据库【db_admin】文档

## 1. 数据库概述

- **数据库名称**: db\_admin
- **服务器版本**: MySQL 8.0.36
- **字符集**: utf8mb4
- **排序规则**: utf8mb4\_bin
- **用途**: Wimoor 电商管理系统后台数据库，包含用户管理、权限控制、店铺管理、订阅管理等功能

## 2. 主要功能模块

### 2.1 权限管理系统

- **核心表**: `t_authority`, `t_role`, `t_role_authority`, `t_user_role`, `t_permission`
- **功能**: 基于角色的权限控制(RBAC)，支持菜单权限、操作权限等

### 2.2 菜单管理系统

- **核心表**: `t_menu`, `t_menu_group`, `t_sys_menu`, `t_role_menu`, `t_sys_role_menu`
- **功能**: 多级菜单管理，支持菜单收藏、权限分配

### 2.3 用户管理系统

- **核心表**: `t_user`, `t_userinfo`, `t_user_role`, `t_user_shop`
- **功能**: 用户账户管理、个人信息、角色分配、店铺绑定

### 2.4 店铺管理系统

- **核心表**: `t_shop`, `t_manager_limit`, `t_user_shop`
- **功能**: 店铺基本信息、权限限制、用户绑定

### 2.5 套餐订阅系统

- **核心表**:
    
    
    - `t_sys_tariff_packages` - 套餐定义
    - `t_manager_limit` - 店铺限制配置
    - `t_sys_customer_order` - 客户订单
    - `t_sys_customer_discount` - 折扣管理
- **功能**: 套餐管理、订单处理、折扣优惠

### 2.6 通知系统

- **核心表**: `t_sys_notify`, `t_sys_usernotify`, `t_sys_message_template`
- **功能**: 系统通知、消息推送、用户订阅

### 2.7 标签系统

- **核心表**: `t_sys_tags`, `t_sys_tags_groups`, `t_sys_role_tag`
- **功能**: 标签管理、分组、权限分配

### 2.8 应用商店系统

- **核心表**:
    
    
    - `t_sys_app_store_group` - 应用分组
    - `t_sys_app_store_company` - 服务商信息
    - `t_sys_app_store_detail` - 服务详情
- **功能**: 应用服务展示、服务商管理

### 2.9 工具模块

- **核心表**:
    
    
    - `t_sys_tool_deepseek_chat_*` - AI聊天功能
    - `t_sys_tool_notepad` - 记事本
    - `t_sys_tool_large_file` - 大文件管理
- **功能**: 内置工具集

### 2.10 系统管理

- **核心表**:
    
    
    - `t_sys_operationlog` - 操作日志
    - `t_sys_importrecord` - 导入记录
    - `t_sys_dict` - 字典管理
    - `t_sys_quartz_task` - 定时任务
- **功能**: 系统监控、日志记录、配置管理

## 3. 重要表结构说明

### 3.1 用户相关表

<div class="md-code-block md-code-block-light" id="bkmrk-sql"><div class="md-code-block-banner-wrap"><div class="md-code-block-banner md-code-block-banner-lite"><div class="_121d384"><div class="d2a24f03"><span class="d813de27">sql</span></div></div></div></div></div>```
-- t_user: 用户主表
-- 包含账户信息、密码、状态、上级关系等
-- 支持Google验证、微信绑定等

-- t_userinfo: 用户详细信息
-- 包含姓名、性别、联系方式等
```

<div class="md-code-block md-code-block-light" id="bkmrk-"><svg class="_9bc997d _33882ae" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg><svg class="_9bc997d _28d7e84" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg></div>### 3.2 权限相关表

<div class="md-code-block md-code-block-light" id="bkmrk-sql-1"><div class="md-code-block-banner-wrap"><div class="md-code-block-banner md-code-block-banner-lite"><div class="_121d384"><div class="d2a24f03"><span class="d813de27">sql</span></div></div></div></div></div>```
-- t_role: 角色定义
-- 支持系统角色和自定义角色

-- t_authority: 操作权限定义
-- URL级别的权限控制

-- t_permission: 权限项管理
-- 按钮级别的权限控制
```

<div class="md-code-block md-code-block-light" id="bkmrk--1"><svg class="_9bc997d _33882ae" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg><svg class="_9bc997d _28d7e84" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg></div>### 3.3 店铺限制表 (`t_manager_limit`)

<div class="md-code-block md-code-block-light" id="bkmrk-sql-2"><div class="md-code-block-banner-wrap"><div class="md-code-block-banner md-code-block-banner-lite"><div class="_121d384"><div class="d2a24f03"><span class="d813de27">sql</span></div></div></div></div></div>```
-- 关键字段说明:
-- maxShopCount: 最大店铺数
-- maxProductCount: 最大商品数
-- maxOrderCount: 最大订单处理数
-- maxMember: 最大子用户数
-- tariffpackage: 套餐类型(0-基础版,1-标准版,2-专业版,3-独享版,4-自定义)
-- losingEffect: 失效时间
```

<div class="md-code-block md-code-block-light" id="bkmrk--2"><svg class="_9bc997d _33882ae" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg><svg class="_9bc997d _28d7e84" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg></div>### 3.4 订单和发票表

<div class="md-code-block md-code-block-light" id="bkmrk-sql-3"><div class="md-code-block-banner-wrap"><div class="md-code-block-banner md-code-block-banner-lite"><div class="_121d384"><div class="d2a24f03"><span class="d813de27">sql</span></div></div></div></div></div>```
-- t_sys_customer_order: 客户订单
-- 支持套餐购买、附加包购买

-- t_sys_customer_invoice: 发票信息
-- 支持普票、专票等类型
```

<div class="md-code-block md-code-block-light" id="bkmrk--3"><svg class="_9bc997d _33882ae" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg><svg class="_9bc997d _28d7e84" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg></div>## 4. 数据字典说明

### 4.1 套餐类型 (tariffpackage)

<div class="ds-scroll-area _1210dd7 c03cafe9" id="bkmrk-%E5%80%BC-%E5%90%8D%E7%A7%B0-%E8%AF%B4%E6%98%8E-0-%E5%9F%BA%E7%A1%80%E7%89%88-%E5%9F%BA%E7%A1%80%E5%8A%9F%E8%83%BD%E5%A5%97%E9%A4%90"><div class="ds-scroll-area__gutters"><div class="ds-scroll-area__horizontal-gutter">  
</div><div class="ds-scroll-area__vertical-gutter">  
</div></div><table><thead><tr><th>值</th><th>名称</th><th>说明</th></tr></thead><tbody><tr><td>0</td><td>基础版</td><td>基础功能套餐</td></tr><tr><td>1</td><td>标准版</td><td>标准功能套餐</td></tr><tr><td>2</td><td>专业版</td><td>专业功能套餐</td></tr><tr><td>3</td><td>独享版</td><td>独享服务套餐</td></tr><tr><td>4</td><td>自定义</td><td>自定义套餐</td></tr></tbody></table>

</div>### 4.2 订单类型 (ftype)

<div class="ds-scroll-area _1210dd7 c03cafe9" id="bkmrk-%E5%80%BC-%E8%AF%B4%E6%98%8E-package-%E5%A5%97%E9%A4%90%E8%AE%A2%E5%8D%95-ap"><div class="ds-scroll-area__gutters"><div class="ds-scroll-area__horizontal-gutter">  
</div><div class="ds-scroll-area__vertical-gutter">  
</div></div><table><thead><tr><th>值</th><th>说明</th></tr></thead><tbody><tr><td>package</td><td>套餐订单</td></tr><tr><td>append</td><td>附加包订单</td></tr></tbody></table>

</div>### 4.3 发票类型 (ivctype)

<div class="ds-scroll-area _1210dd7 c03cafe9" id="bkmrk-%E5%80%BC-%E8%AF%B4%E6%98%8E-normal-%E6%99%AE%E9%80%9A%E5%8F%91%E7%A5%A8-spe"><div class="ds-scroll-area__gutters"><div class="ds-scroll-area__horizontal-gutter">  
</div><div class="ds-scroll-area__vertical-gutter">  
</div></div><table><thead><tr><th>值</th><th>说明</th></tr></thead><tbody><tr><td>normal</td><td>普通发票</td></tr><tr><td>special</td><td>专用发票</td></tr></tbody></table>

</div>## 5. 业务逻辑说明

### 5.1 用户权限流程

1. 用户登录 → 验证账户状态
2. 查询用户角色 → 获取权限集合
3. 加载菜单权限 → 显示可用菜单
4. 操作时检查权限 → 验证操作权限

### 5.2 套餐订阅流程

1. 选择套餐 → 生成订单
2. 支付订单 → 更新支付状态
3. 应用套餐 → 更新店铺限制
4. 失效处理 → 自动降级或提醒续费

### 5.3 店铺限制检查

- 创建店铺时检查店铺数量限制
- 添加商品时检查商品数量限制
- 添加子用户时检查用户数量限制
- 开启广告时检查广告组限制

## 6. 索引优化建议

### 6.1 建议添加的索引

<div class="md-code-block md-code-block-light" id="bkmrk-sql-4"><div class="md-code-block-banner-wrap"><div class="md-code-block-banner md-code-block-banner-lite"><div class="_121d384"><div class="d2a24f03"><span class="d813de27">sql</span></div></div></div></div></div>```
-- t_sys_operationlog 表
CREATE INDEX idx_oplog_user_time ON t_sys_operationlog(userid, time);

-- t_sys_customer_order 表
CREATE INDEX idx_order_shop_status ON t_sys_customer_order(shopid, paystatus);

-- t_manager_limit 表
CREATE INDEX idx_limit_shop_status ON t_manager_limit(shopId, losingEffect);
```

<div class="md-code-block md-code-block-light" id="bkmrk--4"><svg class="_9bc997d _33882ae" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg><svg class="_9bc997d _28d7e84" fill="none" height="12" viewbox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z" fill="currentColor"></path></svg></div>### 6.2 现有索引分析

- 大部分表已有主键索引
- 关联查询字段多数已建索引
- 时间范围查询建议添加复合索引

## 7. 数据维护建议

### 7.1 定期清理

- 操作日志按时间归档
- 过期通知清理
- 临时文件清理

### 7.2 备份策略

- 每日全量备份
- 事务日志实时备份
- 重要表单独备份

## 8. 安全注意事项

### 8.1 敏感数据

- 用户密码使用盐值加密
- 支付信息加密存储
- 密钥信息单独管理

### 8.2 访问控制

- 数据库访问权限分级
- 生产环境最小权限原则
- 操作审计日志记录

## 9. 扩展性考虑

### 9.1 分表策略

- 操作日志按时间分表
- 订单数据按店铺分表
- 通知消息按用户分表

### 9.2 读写分离

- 主库：写操作、重要查询
- 从库：读操作、报表查询

## 10. 常见问题处理

### 10.1 性能问题

- 大表查询优化
- 索引失效处理
- 连接池配置优化

### 10.2 数据一致性问题

- 事务使用规范
- 异常处理机制
- 数据修复流程

---

**文档版本**: V1.0  
**更新日期**: 2024年  
**适用版本**: MySQL 8.0+  
**备注**: 本文档基于提供的数据库结构分析，实际使用时请结合具体业务需求调整。