HaniBlindBox/docs/README.md
2026-01-01 21:01:50 +08:00

284 lines
6.0 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.

# 抽奖盲盒系统文档
欢迎来到抽奖盲盒系统的技术文档中心!本文档集合包含了系统的完整技术资料,帮助开发者、运维人员和产品经理全面了解系统架构和业务流程。
## 📚 文档目录
### 🎯 [业务流程图](./业务流程图.md)
详细展示了系统的核心业务流程,包括:
- 系统整体业务流程
- 用户注册登录流程
- 抽奖核心流程
- 支付流程
- 商品管理流程
- 订单处理流程
- 集市交易流程
- 数据统计分析流程
### 🏗️ [系统架构图](./系统架构图.md)
全面介绍了系统的技术架构设计,包括:
- 系统整体架构
- 应用模块架构
- 抽奖算法架构
- 支付系统架构
- 缓存架构设计
- 消息队列架构
- 安全架构设计
- 监控运维架构
### 🗄️ [数据库设计图](./数据库设计图.md)
完整的数据库设计文档,包含:
- 数据库整体ER图
- 核心业务表关系图
- 用户财务系统表关系图
- 商品管理系统表关系图
- 管理后台系统表关系图
- 数据表索引设计
- 数据库分表策略
- 数据备份与恢复策略
### 🔌 [API接口文档](./API接口文档.md)
详细的API接口说明文档包括
- 用户认证接口
- 商品相关接口
- 订单相关接口
- 抽奖相关接口
- 集市相关接口
- 财务相关接口
- 发货相关接口
- 系统配置接口
- 错误码说明
- 接口调用示例
## 🎮 系统概述
### 项目简介
这是一个基于 **ThinkPHP 6.0** 框架开发的**抽奖盲盒系统**,主要面向娱乐抽奖和商品销售场景。系统采用前后端分离架构,支持多种抽奖模式和支付方式。
### 核心特性
- 🎲 **多样化抽奖模式**支持一番赏、无限赏、擂台赏、抽卡机等9种抽奖类型
- 💰 **灵活支付系统**:支持微信支付、支付宝、余额、虚拟货币等多种支付方式
- 🎁 **智能奖品管理**:支持普通奖品、宝箱奖品、特殊奖品等多种类型
- 🛒 **完整交易流程**:从下单到收货的完整闭环,支持发货、回收、集市交易
- 📊 **数据分析系统**:全方位的用户行为分析和销售数据统计
- 🔒 **安全防护机制**:多层安全防护,完善的权限控制体系
### 技术栈
- **后端框架**ThinkPHP 6.0
- **数据库**MySQL 5.7+
- **缓存**Redis
- **PHP版本**7.1+ (兼容 PHP 8.0)
- **依赖管理**Composer
## 🚀 快速开始
### 环境要求
- PHP 7.1+
- MySQL 5.7+
- Redis 3.0+
- Composer
### 安装步骤
1. **克隆项目**
```bash
git clone [项目地址]
cd lottery-system
```
2. **安装依赖**
```bash
composer install
```
3. **配置环境**
```bash
cp .env.example .env
# 编辑 .env 文件,配置数据库和其他服务
```
4. **导入数据库**
```bash
mysql -u root -p < table.sql
```
5. **启动服务**
```bash
php think run
```
### 配置说明
主要配置文件位于 `config/` 目录下
- `database.php` - 数据库配置
- `app.php` - 应用配置
- `cache.php` - 缓存配置
- `route.php` - 路由配置
## 📋 业务模块
### 用户系统
- 手机号注册登录
- 用户信息管理
- 等级体系
- 推荐机制
### 商品系统
- 商品分类管理
- 多种抽奖类型
- 奖品配置
- 库存管理
- 概率控制
### 订单系统
- 订单创建
- 支付处理
- 抽奖执行
- 中奖记录
### 财务系统
- 多币种支持
- 资金流水
- 优惠券系统
- 回收机制
### 物流系统
- 发货管理
- 物流跟踪
- 收货确认
### 集市系统
- 商品发布
- 交易撮合
- 安全保障
## 🔧 开发指南
### 代码结构
```
server/php/
├── app/ # 应用目录
│ ├── admin/ # 管理后台
│ ├── api/ # API接口
│ ├── index/ # 前台页面
│ ├── command/ # 命令行任务
│ └── common/ # 公共模块
├── config/ # 配置文件
├── public/ # 入口文件
├── route/ # 路由定义
├── view/ # 视图模板
└── vendor/ # 第三方依赖
```
### 开发规范
- 遵循 PSR-4 自动加载规范
- 使用 ThinkPHP 6.0 开发规范
- 数据库操作使用 ORM
- 接口返回统一 JSON 格式
- 完善的异常处理机制
### 扩展开发
系统采用模块化设计支持功能扩展
- 新增抽奖类型
- 自定义支付方式
- 扩展奖品类型
- 增加数据分析维度
## 🛡️ 安全特性
### 数据安全
- 敏感信息加密存储
- SQL注入防护
- XSS攻击防护
- CSRF防护
### 业务安全
- 防刷机制
- 风控系统
- 异常监控
- 操作审计
### 系统安全
- JWT认证
- 权限控制
- 访问日志
- 安全配置
## 📈 性能优化
### 数据库优化
- 合理的索引设计
- 读写分离
- 分表策略
- 查询优化
### 缓存策略
- Redis缓存
- 数据缓存
- 页面缓存
- 对象缓存
### 系统优化
- 异步处理
- 队列机制
- 负载均衡
- CDN加速
## 🔍 监控运维
### 日志管理
- 应用日志
- 错误日志
- 访问日志
- 业务日志
### 性能监控
- 系统性能
- 数据库性能
- 接口性能
- 用户体验
### 告警机制
- 实时告警
- 邮件通知
- 短信通知
- 钉钉通知
## 🤝 贡献指南
### 开发流程
1. Fork 项目
2. 创建功能分支
3. 提交代码
4. 创建 Pull Request
### 代码规范
- 遵循 PSR 标准
- 添加必要注释
- 编写单元测试
- 更新文档
### 问题反馈
- 通过 Issue 反馈问题
- 提供详细的问题描述
- 包含复现步骤
- 提供环境信息
## 📞 技术支持
### 联系方式
- 技术交流群[群号]
- 邮箱[邮箱地址]
- 官网[官网地址]
### 常见问题
- 查看 FAQ 文档
- 搜索历史 Issue
- 参考技术文档
- 联系技术支持
## 📄 许可证
本项目采用 [Apache 2.0](../LICENSE) 许可证
---
**注意**本文档会持续更新请关注最新版本如有疑问或建议欢迎提交 Issue Pull Request