哈尼盲盒
- 权益中心领取优惠券/任务奖励提示改为中文'领取成功' - 后端action端点返回中文消息(回收成功/发货申请成功/支付成功等) - 商城兑换成功提示改为'兑换成功'并优化加载闪烁 - 商城确认订单弹窗使用封面图 - 后台商品编辑/新增Banner图保存修复(|| undefined → || null) |
||
|---|---|---|
| .kiro | ||
| .vscode | ||
| bug | ||
| docs | ||
| honey_box | ||
| server/HoneyBox | ||
| .gitignore | ||
| README.md | ||
抽奖盲盒系统
欢迎来到抽奖盲盒系统!这是一个基于 UniApp + ThinkPHP 6.0 架构开发的跨平台抽奖盲盒系统,主要面向娱乐抽奖和商品销售场景。
📚 文档目录
🎯 业务流程图
详细展示了系统的核心业务流程,包括:
- 系统整体业务流程
- 用户注册登录流程
- 抽奖核心流程
- 支付流程
- 商品管理流程
- 订单处理流程
- 集市交易流程
- 数据统计分析流程
🏗️ 系统架构图
全面介绍了系统的技术架构设计,包括:
- 系统整体架构
- 前后端架构设计
- 小程序技术架构
- 抽奖算法架构
- 支付系统架构
- 缓存架构设计
- 消息队列架构
- 安全架构设计
- 监控运维架构
🗄️ 数据库设计图
完整的数据库设计文档,包含:
- 数据库整体ER图
- 核心业务表关系图
- 用户财务系统表关系图
- 商品管理系统表关系图
- 管理后台系统表关系图
- 数据表索引设计
- 数据库分表策略
- 数据备份与恢复策略
🔌 API接口文档
详细的API接口说明文档,包括:
- 用户认证接口
- 商品相关接口
- 订单相关接口
- 抽奖相关接口
- 盒柜相关接口
- 财务相关接口
- 福利相关接口
- 系统配置接口
- UniApp调用示例
🎮 系统概述
项目结构
抽奖盲盒系统/
├── honey_box/ # 前端小程序项目(UniApp)
│ ├── pages/ # 页面文件
│ ├── components/ # 组件库
│ ├── common/ # 公共模块
│ └── static/ # 静态资源
├── server/php/ # 后端API项目(ThinkPHP 6.0)
│ ├── app/ # 应用目录
│ ├── config/ # 配置文件
│ └── public/ # 入口文件
└── docs/ # 项目文档
核心特性
- 🎲 多样化抽奖模式:支持一番赏、无限赏、擂台赏、抽卡机等9种抽奖类型
- 📱 跨平台支持:一套代码支持微信小程序、H5、Android、iOS多端运行
- 💰 灵活支付系统:支持微信支付、支付宝、余额、虚拟货币等多种支付方式
- 🎁 智能奖品管理:支持普通奖品、宝箱奖品、特殊奖品等多种类型
- 🛒 完整交易流程:从下单到收货的完整闭环,支持发货、回收、集市交易
- 📊 数据分析系统:全方位的用户行为分析和销售数据统计
- 🔒 安全防护机制:多层安全防护,完善的权限控制体系
- ⚡ 高性能算法:优化的抽奖算法,内存占用减少90%+
技术栈
前端技术栈:
- 框架:UniApp + Vue.js 2.x
- 构建工具:HBuilderX
- UI组件:uni-ui + 自定义组件
- 状态管理:全局配置管理 + 本地存储
- 网络请求:封装RequestManager
- 多端支持:微信小程序、H5、Android、iOS
后端技术栈:
- 框架:ThinkPHP 6.0
- 数据库:MySQL 5.7+
- 缓存:Redis
- PHP版本:7.1+ (兼容 PHP 8.0)
- 依赖管理:Composer
- 文件存储:腾讯云COS
🚀 快速开始
环境要求
前端环境:
- HBuilderX 3.0+
- Node.js 12+
- 微信开发者工具(小程序开发)
后端环境:
- PHP 7.1+
- MySQL 5.7+
- Redis 3.0+
- Composer
安装步骤
后端安装
-
克隆项目
git clone [项目地址] cd lottery-system/server/php -
安装依赖
composer install -
配置环境
cp .env.example .env # 编辑 .env 文件,配置数据库和其他服务 -
导入数据库
mysql -u root -p < table.sql -
启动服务
php think run
前端安装
-
打开项目
- 使用HBuilderX打开
honey_box目录
- 使用HBuilderX打开
-
配置环境
- 修改
common/env.js中的API地址 - 配置小程序AppID(manifest.json)
- 修改
-
运行项目
- 选择运行到微信小程序开发者工具
- 或运行到浏览器(H5版本)
配置说明
后端配置文件位于 server/php/config/ 目录下:
database.php- 数据库配置app.php- 应用配置cache.php- 缓存配置route.php- 路由配置
前端配置文件位于 honey_box/common/ 目录下:
env.js- 环境配置(API地址、图片地址等)config.js- 全局配置管理request.js- 网络请求配置
📋 业务模块
用户系统
- 手机号注册登录
- 微信授权登录
- 用户信息管理
- 等级体系
- 推荐机制
商品系统
- 商品分类管理
- 多种抽奖类型
- 奖品配置
- 库存管理
- 概率控制
订单系统
- 订单创建
- 支付处理
- 抽奖执行
- 中奖记录
财务系统
- 多币种支持
- 资金流水
- 优惠券系统
- 回收机制
物流系统
- 发货管理
- 物流跟踪
- 收货确认
集市系统
- 商品发布
- 交易撮合
- 安全保障
🔧 开发指南
代码结构
前端结构(honey_box/):
honey_box/
├── pages/ # 页面文件
│ ├── shouye/ # 首页模块
│ ├── user/ # 用户中心
│ ├── mall/ # 商城模块
│ ├── infinite/ # 福利模块
│ └── hegui/ # 盒柜模块
├── components/ # 组件库
├── common/ # 公共模块
├── static/ # 静态资源
├── uni_modules/ # uni-app插件
└── package/ # 分包模块
后端结构(server/php/):
server/php/
├── app/ # 应用目录
│ ├── admin/ # 管理后台
│ ├── api/ # API接口
│ ├── index/ # 前台页面
│ ├── command/ # 命令行任务
│ └── common/ # 公共模块
├── config/ # 配置文件
├── public/ # 入口文件
├── route/ # 路由定义
├── view/ # 视图模板
└── vendor/ # 第三方依赖
开发规范
前端开发规范:
- 遵循Vue.js开发规范
- 使用UniApp官方组件和API
- 组件命名采用kebab-case
- 页面路由统一管理
- 网络请求统一封装
后端开发规范:
- 遵循 PSR-4 自动加载规范
- 使用 ThinkPHP 6.0 开发规范
- 数据库操作使用 ORM
- 接口返回统一 JSON 格式
- 完善的异常处理机制
🛡️ 安全特性
数据安全
- 敏感信息加密存储
- SQL注入防护
- XSS攻击防护
- CSRF防护
业务安全
- 防刷机制
- 风控系统
- 异常监控
- 操作审计
系统安全
- Token认证
- 权限控制
- 访问日志
- 安全配置
📈 性能优化
数据库优化
- 合理的索引设计
- 读写分离
- 分表策略
- 查询优化
缓存策略
- Redis缓存
- 数据缓存
- 页面缓存
- 对象缓存
系统优化
- 异步处理
- 队列机制
- 负载均衡
- CDN加速
🔍 监控运维
日志管理
- 应用日志
- 错误日志
- 访问日志
- 业务日志
性能监控
- 系统性能
- 数据库性能
- 接口性能
- 用户体验
告警机制
- 实时告警
- 邮件通知
- 短信通知
- 钉钉通知
🤝 贡献指南
开发流程
- Fork 项目
- 创建功能分支
- 提交代码
- 创建 Pull Request
代码规范
- 遵循 PSR 标准
- 添加必要注释
- 编写单元测试
- 更新文档
问题反馈
- 通过 Issue 反馈问题
- 提供详细的问题描述
- 包含复现步骤
- 提供环境信息
📄 许可证
本项目采用 Apache 2.0 许可证。
注意:本文档会持续更新,请关注最新版本。如有疑问或建议,欢迎提交 Issue 或 Pull Request。