# KP-Blind-Box
**Repository Path**: yxl/KP-Blind-Box
## Basic Information
- **Project Name**: KP-Blind-Box
- **Description**: KP-Blind-Box盲盒商城是基于 Vue3.x + ThinkPHP8 + TypeScript + Vite + Pinia + Element Plus 等流行技术栈开发的后台管理系统,采用 BuildAdmin 框架构建。系统支持盲盒商品展示与购买、在线开箱、积分兑换、会员体系等完整电商功能,提供可视化 CRUD 代码生成、自适应多端等特性,无需授权即可免费商用。
- **Primary Language**: PHP
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2016-06-29
- **Last Updated**: 2026-05-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
KP-Blind-Box 盲盒商城
基于 BuildAdmin 框架的盲盒电商系统
官网 |
演示 |
社区 |
文档 |
视频介绍
### 介绍
KP-Blind-Box 盲盒商城是基于 Vue3.x + ThinkPHP8 + TypeScript + Vite + Pinia + Element Plus 等流行技术栈开发的后台管理系统,采用 BuildAdmin 框架构建。系统支持盲盒商品展示与购买、在线开箱、积分兑换、会员体系等完整电商功能,提供可视化 CRUD 代码生成、自适应多端等特性,无需授权即可免费商用。
### 技术栈
| 技术 | 说明 |
|--------------|--------|
| ThinkPHP8 | 后端核心框架 |
| Vue3.x | 前端框架 |
| TypeScript | 类型系统 |
| Vite | 构建工具 |
| Pinia | 状态管理 |
| Element Plus | UI 组件库 |
| BuildAdmin | 核心后台框架 |
### 数据库设计
#### 基础信息
- **数据库名称**:base.sql
- **字符集**:utf8mb4
- **存储引擎**:InnoDB
- **表数量**:30+ 张核心业务表
#### 核心业务模块
**商品模块**
| 表名 | 说明 |
|-------------------------|------------------------|
| blind_box_categories | 盲盒分类表(支持多级分类,pid 父级关联) |
| blind_box_products | 盲盒商品表 |
| blind_box_items | 盲盒内容物表(含稀有度属性) |
| blind_box_product_specs | 商品规格表 |
| blind_box_product_skus | 商品 SKU 表 |
**订单模块**
| 表名 | 说明 |
|-----------------------|-------|
| blind_box_orders | 订单主表 |
| blind_box_order_items | 订单详情表 |
| blind_box_cart | 购物车表 |
| blind_box_logistics | 物流表 |
**支付模块**
| 表名 | 说明 |
|------------------------|--------|
| blind_box_payments | 支付记录表 |
| blind_box_coupons | 优惠券表 |
| blind_box_user_coupons | 用户优惠券表 |
**用户模块**
| 表名 | 说明 |
|---------------------------|---------|
| blind_box_user_addresses | 用户地址表 |
| blind_box_user_levels | 用户等级表 |
| blind_box_user_experience | 经验记录表 |
| blind_box_user_sign | 签到表 |
| blind_box_balance_logs | 余额变动记录表 |
| blind_box_points_logs | 积分变动记录表 |
**活动模块**
| 表名 | 说明 |
|-----------------------------|---------|
| blind_box_activities | 活动表 |
| blind_box_activity_products | 活动商品关联表 |
| blind_box_draw_records | 抽奖记录表 |
| blind_box_exchange_records | 积分兑换记录表 |
**互动模块**
| 表名 | 说明 |
|-----------------------|-------|
| blind_box_reviews | 商品评价表 |
| blind_box_favorites | 收藏表 |
| blind_box_share_logs | 分享记录表 |
| blind_box_view_logs | 浏览记录表 |
| blind_box_search_logs | 搜索记录表 |
| blind_box_feedback | 反馈表 |
**消息模块**
| 表名 | 说明 |
|-------------------------|-------|
| blind_box_messages | 用户消息表 |
| blind_box_notices | 系统通知表 |
| blind_box_announcements | 公告表 |
**系统模块**
| 表名 | 说明 |
|--------------------|-------|
| blind_box_settings | 系统设置表 |
#### 核心表关系
```
盲盒商品 (blind_box_products)
├── 所属分类 (blind_box_categories) ─── 多对一
├── 包含物品 (blind_box_items) ─────── 一对多,含稀有度
├── 参与活动 (blind_box_activity_products) ─── 多对多
└── SKU规格 (blind_box_product_skus) ── 一对多
订单 (blind_box_orders)
├── 所属用户 ─────────────────── 多对一
├── 订单明细 (blind_box_order_items) ── 一对多
├── 收货地址 ─────────────────── 多对一
├── 支付记录 ─────────────────── 一对一
└── 物流信息 ─────────────────── 一对一
用户
├── 收货地址 ─────────────────── 一对多
├── 优惠券 ───────────────────── 一对多
├── 收藏 ────────────────────── 一对多
├── 签到 ────────────────────── 一对多
├── 积分兑换记录 ─────────────── 一对多
└── 消息 ────────────────────── 一对多
```
#### 稀有度体系
| 稀有度 | 英文标识 | 概率范围 | 示例物品 | 兑换积分 |
|-----|-----------|---------|------------------|------------|
| 普通 | common | 35-50% | T恤、数据线、手机贴膜 | 不可兑换 |
| 稀有 | rare | 4.5-15% | 潮流背包、运动手环、快充头 | 800-2000 |
| 史诗 | epic | 4-5% | 潮流手表、无线充电器、大牌香水 | 3000-4000 |
| 传奇 | legendary | 0.1-1% | 限量版运动鞋、绝版手办、蓝牙耳机 | 5000-20000 |
#### 会员等级体系
| 等级 | 名称 | 所需经验值 | 折扣比例 |
|----|------|-------|------|
| 1 | 新手会员 | 0 | 100% |
| 2 | 普通会员 | 500 | 98% |
| 3 | 白银会员 | 2000 | 95% |
| 4 | 黄金会员 | 5000 | 92% |
| 5 | 钻石会员 | 10000 | 88% |
### 核心功能模块
**商品管理**
- 多级分类管理(支持无限子级)
- 盲盒商品 CRUD 操作
- 商品内容物配置(支持稀有度设置)
- SKU 规格管理
- 商品上下架控制
**订单管理**
- 订单创建与状态流转(待支付→已支付→已发货→已完成/已取消)
- 订单支付(微信/支付宝/余额)
- 物流信息管理
- 订单备注
**营销活动**
- 限时秒杀
- 新品首发
- 团购优惠
- 优惠券发放与使用
- 积分兑换
**用户体系**
- 会员等级管理(经验值自动升级)
- 积分系统(签到/评价/分享获取)
- 余额管理
- 每日签到
- 收货地址管理
**互动功能**
- 商品评价(支持图片/匿名)
- 商品收藏
- 商品分享
- 用户反馈
- 浏览/搜索记录
**消息系统**
- 系统通知
- 平台公告
- 用户消息(订单/活动/积分等)
- 通知目标定向推送
### 安装部署
**环境要求**
- PHP >= 8.1
- MySQL >= 5.7
- Node.js >= 16
- Composer >= 2.0
**部署步骤**
1. 导入数据库:将 `database/base.sql` 导入 MySQL 数据库
2. 配置后端:
```bash
cd backend
composer install
cp .env.example .env
# 编辑 .env 配置数据库连接
```
3. 配置前端:
```bash
cd web
npm install
npm run dev
```
4. 访问后台管理,默认账户:`admin`,密码:`123456`
### 目录结构
```
wx_mall/
├── app/ # 后端应用目录
│ └── ... # ThinkPHP 应用文件
├── database/ # 数据库文件
│ └── base.sql # 完整数据库结构
├── web/ # 前端项目目录
│ └── ... # Vue 项目文件
├── route/ # 路由配置
├── public/ # 公共资源
├── runtime/ # 运行时目录
├── .env # 环境配置
├── .env.example # 环境配置示例
└── README.md # 项目文档
```
### 系统设置项
系统内置以下可配置项(存储于 blind_box_settings 表):
| 配置名称 | 说明 | 示例值 |
|----------------------|--------|----------------|
| site_name | 站点名称 | 盲盒商城 |
| site_desc | 站点描述 | 惊喜盲盒,开启你的幸运之旅! |
| points_rate | 积分汇率 | 10 |
| delivery_fee | 配送费用 | 10.00 |
| free_delivery_amount | 免配送费金额 | 99.00 |
| max_draw_count | 最大抽奖次数 | 10 |
| share_points | 分享获得积分 | 50 |
| review_points | 评价获得积分 | 50 |
| exchange_rate | 兑换汇率 | 100 |
### 注意事项
1. 盲盒商品一经售出概不退换,请理性消费
2. 部分商品可能存在限量,售完即止
3. 积分可兑换指定商品,兑换后不可退换
4. 请遵守系统规则,合理使用各项功能
### 版权信息
本项目基于 BuildAdmin 框架开发,遵循 Apache2.0 开源协议,提供无需授权的免费使用。
### 联系我们
- 演示站:demo.buildadmin.com
- 问答社区:ask.buildadmin.com
- 官方网站:uni.buildadmin.com
- 文档中心:doc.buildadmin.com
- 官方邮箱:hi@buildadmin.com