# KP-Assess **Repository Path**: yxl/KP-Assess ## Basic Information - **Project Name**: KP-Assess - **Description**: KP-Assess 是一个专业的篮球赛事数据分析与预测系统,基于 BuildAdmin 快速开发框架构建。系统集成了球队数据管理、球员数据统计、赛事竞猜、AI分析报告等核心功能,为篮球爱好者和专业分析师提供全面的数据支持。 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2014-11-22 - **Last Updated**: 2026-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

KP-Assess 篮球赛事分析预测系统

基于 BuildAdmin 框架的专业篮球赛事数据分析与预测平台

功能特性 | 技术栈 | 安装部署 | 项目结构 | 数据库设计 | 开发指南

vue vue element plus typescript vite vite license

### 项目简介 KP-Assess 是一个专业的篮球赛事数据分析与预测系统,基于 BuildAdmin 快速开发框架构建。系统集成了球队数据管理、球员数据统计、赛事竞猜、AI分析报告等核心功能,为篮球爱好者和专业分析师提供全面的数据支持。 **主要特点:** - 🏀 **完整的篮球数据体系**: 支持 NBA 等主流联赛的球队、球员、比赛数据管理 - 📊 **专业的统计分析**: 提供赛季统计、比赛数据、球员表现等多维度分析 - 🤖 **AI 智能分析**: 集成 AI 分析报告功能,提供智能化的赛事预测 - 💰 **赛事竞猜系统**: 支持用户参与赛事竞猜,增加互动性 - 📱 **响应式设计**: 完美适配 PC、平板、手机等多种设备 - 🔐 **权限管理**: 完善的 RBAC 权限控制体系 - ⚡ **高性能**: 支持常驻内存运行,性能提升数十倍 ✨ 关于 `Star` 的小小期待 ✨ ~~文档和演示站的「入场券」是点亮 Star~~ 哈哈哈,开个玩笑,实际上**您不需要任何「门槛」即可访问源码、文档和演示站**,在您丝滑体验文档与强大功能的同时,我们有个温暖的请求 —— 若 `BuildAdmin` 让您眼前一亮,请为我们点亮一颗 `Star`,这将是一次开发者间最浪漫的「确认过眼神」,亦可助我们向本应「自由开放」的开源界证明:优秀的项目我会发自内心的点亮 Star ~(而不是像某些同类产品哪样,将 Star 作为文档或演示站的「强制交换」条件) ## 功能特性 ### 核心功能模块 #### 1. 球队管理系统 - ✅ 球队信息管理(名称、简称、城市、球馆等) - ✅ 球队Logo和封面图片管理 - ✅ 球队排名和权重设置 - ✅ 球队在线分析报告和AI分析报告 - ✅ 球队赛季统计数据(得分、篮板、助攻等完整技术指标) - ✅ 支持多联赛、多类型球队分类 #### 2. 球员管理系统 - ✅ 球员基本信息(姓名、昵称、位置、身高等) - ✅ 球员头像和照片管理 - ✅ 球员评分和排名系统 - ✅ 球员赛季详细统计数据 - 场均得分、篮板、助攻、抢断、盖帽 - 投篮命中率、三分命中率、罚球命中率 - 效率值、真实命中率、使用率等高级数据 - ✅ 球员比赛实时数据统计 - ✅ 球员状态管理(在役/退役/受伤) - ✅ 球员线上球探报告和AI分析报告 #### 3. 赛事数据管理 - ✅ 比赛日程管理 - ✅ 实时比赛数据更新 - ✅ 比赛技术统计(两队对比数据) - ✅ 比赛结果记录和分析 - ✅ 历史比赛数据查询 #### 4. 赛事竞猜系统 - ✅ 赛事发布和管理 - ✅ 投注截止时间设置 - ✅ 赔率管理 - ✅ 用户投注记录 - ✅ 竞猜结果结算 - ✅ 赛事评论互动 - ✅ 全场/半场结果预测 #### 5. 内容管理系统 - ✅ 网站公告管理 - ✅ 友情链接管理 - ✅ 广告位管理 - ✅ 幻灯片管理(中心页/竞猜页/其他) - ✅ 前端菜单配置 - ✅ 网站留言管理 #### 6. 用户管理系统 - ✅ 会员注册登录 - ✅ 会员分组和权限 - ✅ 会员余额管理 - ✅ 会员积分系统 - ✅ 用户地址管理 - ✅ 个人资料管理 #### 7. 系统管理 - ✅ 管理员管理 - ✅ 角色组权限管理 - ✅ 菜单规则管理 - ✅ 系统配置管理 - ✅ 附件管理 - ✅ 操作日志记录 - ✅ 数据回收站 - ✅ 敏感数据修改记录 ### 技术亮点 **🚀 CRUD 代码生成** - 图形化拖拽生成后台增删改查代码 - 自动创建数据表和模型 - 支持24种表单组件 - 关联表自动生成 **💥 内置 WEB 终端** - 集成于本地开发环境 - 自动执行 npm install - 代码格式化自动化 - 可扩展调用任意命令 **🔀 前后端分离** - 前端代码完全独立 - RESTful API 设计 - Token 认证机制 - 跨域支持 **⚡️ 常驻内存运行** - Workerman 提供 HTTP 服务 - WebSocket 实时通信 - 性能提升数十倍 **🌴 数据安全** - 全局数据回收站 - 字段级修改记录 - 数据回滚和还原 - 敏感数据监控 ## 技术栈 ### 后端技术 - **框架**: ThinkPHP 8.1+ - **语言**: PHP 8.0+ - **数据库**: MySQL 8.0+ - **缓存**: Redis (可选) - **常驻内存**: Workerman - **ORM**: ThinkPHP Model - **认证**: JWT Token ### 前端技术 - **框架**: Vue 3.5+ - **语言**: TypeScript 5.7+ - **构建工具**: Vite 6.0+ - **状态管理**: Pinia 2.3+ - **UI 组件**: Element Plus 2.9+ - **路由**: Vue Router 4.x - **HTTP 请求**: Axios - **代码规范**: ESLint + Prettier ### 开发工具 - **IDE**: VS Code / PhpStorm - **包管理**: Composer / NPM / PNPM - **版本控制**: Git - **数据库管理**: Navicat / phpMyAdmin ## 环境要求 - PHP >= 8.0 - MySQL >= 5.7 (推荐 8.0+) - Node.js >= 18.x - Composer >= 2.0 - Nginx / Apache ## 安装部署 ### 1. 克隆项目 ```bash git clone https://github.com/your-username/KP-Assess.git cd KP-Assess ``` ### 2. 安装后端依赖 ```bash composer install ``` ### 3. 配置环境变量 复制 `.env-example` 为 `.env` 并修改配置: ```bash cp .env-example .env ``` 编辑 `.env` 文件,配置数据库信息: ```ini [DATABASE] TYPE = mysql HOSTNAME = 127.0.0.1 DATABASE = assess USERNAME = root PASSWORD = your_password HOSTPORT = 3306 CHARSET = utf8mb4 PREFIX = kp_ ``` ### 4. 导入数据库 使用 Navicat 或命令行导入 `database/base.sql` 和 `database/ba.sql`: ```bash mysql -u root -p assess < database/base.sql mysql -u root -p assess < database/ba.sql ``` ### 5. 安装前端依赖 ```bash cd web npm install # 或使用 pnpm pnpm install ``` ### 6. 启动开发服务器 **后端服务:** ```bash # 传统方式 php think run # 或使用 Workerman 常驻内存(推荐) php think workerman start ``` **前端服务:** ```bash cd web npm run dev ``` 访问 `http://localhost:5173` 即可看到前端页面。 ### 7. 生产环境部署 **前端打包:** ```bash cd web npm run build ``` 将 `web/dist` 目录下的文件部署到 Web 服务器。 **后端配置 Nginx:** ```nginx server { listen 80; server_name your-domain.com; root /path/to/KP-Assess/public; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } ``` ## 项目结构 ``` KP-Assess/ ├── app/ # 应用目录 │ ├── admin/ # 后台管理模块 │ │ ├── controller/ # 控制器 │ │ ├── model/ # 模型 │ │ ├── validate/ # 验证器 │ │ └── lang/ # 语言包 │ ├── api/ # API 接口模块 │ ├── common/ # 公共模块 │ ├── front/ # 前台模块 │ └── worker/ # Worker 模块 ├── config/ # 配置文件 ├── database/ # 数据库相关 │ ├── migrations/ # 数据库迁移文件 │ ├── base.sql # 基础数据表结构 │ └── ba.sql # BuildAdmin 系统表 ├── extend/ # 扩展类库 ├── modules/ # 模块市场 ├── public/ # Web 根目录 │ ├── assets/ # 静态资源 │ └── index.php # 入口文件 ├── runtime/ # 运行时目录 ├── web/ # 前端项目 │ ├── src/ # 源代码 │ │ ├── views/ # 页面组件 │ │ ├── api/ # API 请求 │ │ ├── stores/ # Pinia 状态 │ │ └── router/ # 路由配置 │ ├── package.json # 依赖配置 │ └── vite.config.ts # Vite 配置 ├── composer.json # Composer 配置 └── README.md # 项目说明 ``` ## 开发指南 ### 快速开始开发 #### 1. 创建新的数据表 使用 BuildAdmin 的 CRUD 代码生成功能: 1. 登录后台管理系统 2. 进入 "CRUD代码生成" 模块 3. 填写表名、字段信息 4. 选择表单组件类型 5. 点击生成按钮 6. 系统自动生成前后端代码 #### 2. 添加 API 接口 在 `app/api/controller/` 目录下创建控制器: ```php order('weigh', 'desc') ->paginate(20); $this->success('获取成功', $teams); } public function detail($id) { $team = \app\admin\model\SportsLqTeam::find($id); if (!$team) { $this->error('球队不存在'); } $this->success('获取成功', $team); } } ``` **前端命令:** ```bash cd web # 开发模式 npm run dev # 生产构建 npm run build # 预览构建结果 npm run preview # 代码检查 npm run lint # 格式化代码 npm run format ``` ### API 文档 #### 认证接口 **登录:** ```http POST /api/user/login Content-Type: application/json { "username": "user", "password": "123456" } ``` **响应:** ```json { "code": 1, "msg": "登录成功", "data": { "token": "eyJ0eXAiOiJKV1QiLCJhbGc...", "user_info": { ... } } } ``` #### 球队接口 **获取球队列表:** ```http GET /api/team/index?page=1&limit=20 Authorization: Bearer {token} ``` **获取球队详情:** ```http GET /api/team/detail?id={team_id} Authorization: Bearer {token} ``` #### 球员接口 **获取球员列表:** ```http GET /api/player/index?team_key={team_key} Authorization: Bearer {token} ``` **获取球员赛季统计:** ```http GET /api/player/season-stats?player_key={player_key}&season=2024 Authorization: Bearer {token} ``` ### 权限控制 #### 后端权限 在控制器中设置需要登录的接口: ```php class Team extends Api { // 不需要登录的接口 protected $noNeedLogin = ['index', 'detail']; // 不需要鉴权的接口 protected $noNeedAuth = ['index']; } ``` #### 前端权限 使用权限指令: ```vue ``` ### 数据验证 创建验证器 `app/admin/validate/Team.php`: ```php 'require|max:85', 'city' => 'max:50', 'stadium' => 'max:100', 'ranking' => 'number', ]; protected $message = [ 'name.require' => '球队名称不能为空', 'name.max' => '球队名称不能超过85个字符', ]; } ``` ## 常见问题 ### 1. 数据库连接失败 **问题:** `SQLSTATE[HY000] [2002] Connection refused` **解决:** - 检查 MySQL 服务是否启动 - 确认 `.env` 中的数据库配置正确 - 检查数据库用户权限 ### 2. 前端跨域问题 **问题:** `Access to XMLHttpRequest has been blocked by CORS policy` **解决:** 在 `config/middleware.php` 中配置跨域: ```php return [ '\\think\\middleware\\AllowCrossDomain', ]; ``` ### 3. 文件上传失败 **问题:** 上传文件时提示权限错误 **解决:** ```bash # Linux/Mac chmod -R 755 runtime chmod -R 755 public/uploads # Windows # 确保 IIS/Apache/Nginx 用户有写入权限 ``` ### 4. Workerman 启动失败 **问题:** `Address already in use` **解决:** ```bash # 查找占用端口的进程 lsof -i:2345 # 杀死进程 kill -9 {PID} # 或更换端口 php think workerman start --port=2346 ``` ### 5. 前端白屏 **问题:** 访问前端页面显示空白 **解决:** - 检查浏览器控制台是否有报错 - 确认后端 API 是否正常响应 - 检查 Token 是否过期 - 清除浏览器缓存 ## 性能优化 ### 后端优化 1. **启用 Redis 缓存** ```ini [CACHE] DRIVER = redis HOST = 127.0.0.1 PORT = 6379 ``` 2. **数据库索引优化** - 为常用查询字段添加索引 - 避免 SELECT * ,只查询需要的字段 - 使用分页查询,避免一次性加载大量数据 3. **使用 Workerman** - 常驻内存运行,避免重复加载 - 性能提升 10-50 倍 ### 前端优化 1. **路由懒加载** ```typescript const routes = [ { path: '/team', component: () => import('/@/views/team/index.vue') } ] ``` 2. **图片优化** - 使用 WebP 格式 - 实施懒加载 - CDN 加速 3. **代码分割** - Vite 自动进行代码分割 - 第三方库按需引入 ## 安全建议 1. **修改默认密码** - 管理员默认密码: `admin123` - 会员默认密码: `123456` 2. **启用 HTTPS** - 生产环境必须使用 HTTPS - 配置 SSL 证书 3. **定期备份数据库** ```bash mysqldump -u root -p assess > backup_$(date +%Y%m%d).sql ``` 4. **限制文件上传类型** - 在 `config/upload.php` 中配置允许的文件类型 - 验证文件 MIME 类型 5. **开启数据回收站** - 重要数据删除前先放入回收站 - 定期清理过期数据 ## 贡献指南 欢迎提交 Issue 和 Pull Request! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request ## 许可证 本项目基于 Apache 2.0 许可证开源。 BuildAdmin 遵循 `Apache2.0` 开源协议发布,提供无需授权的免费使用。 ## 支持与联系 - 📧 Email: your-email@example.com - 💬 QQ群: 待添加 - 🐛 Issues: [GitHub Issues](https://github.com/your-username/KP-Assess/issues) - 📖 文档: [在线文档](https://your-docs-url.com) ## 致谢 感谢以下开源项目: - [BuildAdmin](https://gitee.com/wonderful-code/buildadmin) - 基础框架 - [ThinkPHP](https://www.thinkphp.cn/) - PHP 框架 - [Vue.js](https://vuejs.org/) - 前端框架 - [Element Plus](https://element-plus.org/) - UI 组件库 - [Workerman](https://www.workerman.net/) - 常驻内存服务 ---
**如果这个项目对你有帮助,请给我们一个 ⭐ Star!** Made with ❤️ by KP Team