# 彩票数据分析系统 ## 项目概述 本项目是一个彩票数据分析系统,支持双色球和大乐透的数据管理、统计分析和智能选号功能。系统采用前后端分离架构,提供直观的用户界面和强大的数据分析能力。 ## 技术栈 ### 后端 - Python 3.8+ - FastAPI - SQLAlchemy - PostgreSQL - Pydantic ### 前端 - Vue 3 - Vite - Element Plus - ECharts - Pinia - Vue Router ## 系统功能 1. 数据管理 - 双色球和大乐透历史数据导入 - 数据查询和筛选 - 数据导出 - 手动数据录入 2. 统计分析 - 号码出现频率统计 - 热门号码分析 - 冷门号码分析 - 数据可视化展示 3. 智能选号 - 随机选号 - 频率选号 - 热门号码选号 - 冷门号码选号 ## 项目结构 ``` lottery/ ├── backend/ # 后端代码 │ ├── app/ │ │ ├── api/ # API 路由 │ │ ├── core/ # 核心配置 │ │ ├── models/ # 数据模型 │ │ ├── schemas/ # 数据验证 │ │ └── services/ # 业务逻辑 │ ├── requirements.txt # 依赖包 │ └── main.py # 入口文件 ├── frontend/ # 前端代码 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 组件 │ │ ├── router/ # 路由配置 │ │ ├── views/ # 页面 │ │ ├── App.vue # 根组件 │ │ └── main.js # 入口文件 │ ├── package.json # 依赖配置 │ └── vite.config.js # Vite 配置 └── README.md # 项目文档 ``` ## 开发环境要求 - Python 3.8+ - Node.js 16+ - PostgreSQL 12+ - npm 或 yarn ## 安装和运行 ### 后端 1. 创建虚拟环境 ```bash python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows ``` 2. 安装依赖 ```bash cd backend pip install -r requirements.txt ``` 3. 配置数据库 - 创建 PostgreSQL 数据库 - 修改 `backend/app/core/database.py` 中的数据库连接配置 4. 启动服务 ```bash uvicorn main:app --reload --host 0.0.0.0 --port 8000 ``` ### 前端 1. 安装依赖 ```bash cd frontend npm install ``` 2. 启动开发服务器 ```bash npm run dev ``` 3. 构建生产版本 ```bash npm run build ``` ## 使用说明 ### 数据导入 1. 在双色球或大乐透页面点击"导入数据"按钮 2. 选择对应的 JSON 数据文件 3. 等待导入完成 ### 数据查询 1. 在查询表单中输入查询条件 2. 点击"查询"按钮 3. 查看查询结果 ### 统计分析 1. 进入统计分析页面 2. 选择要分析的彩票类型 3. 查看统计图表 ### 智能选号 1. 进入智能选号页面 2. 选择彩票类型和选号策略 3. 设置生成注数 4. 点击"生成号码"按钮 ## API 文档 启动后端服务后,访问以下地址查看 API 文档: - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ## 常见问题 1. 数据库连接失败 - 检查数据库服务是否启动 - 验证数据库连接配置是否正确 2. 前端无法连接后端 - 确认后端服务是否正常运行 - 检查前端环境配置中的 API 地址是否正确 3. 数据导入失败 - 检查 JSON 文件格式是否正确 - 确认数据库表结构是否完整 ## 开发计划 - [ ] 添加用户认证功能 - [ ] 实现数据备份和恢复 - [ ] 优化数据导入性能 - [ ] 添加更多统计分析功能 - [ ] 实现自定义选号策略 ## 贡献指南 1. Fork 项目 2. 创建特性分支 3. 提交更改 4. 推送到分支 5. 创建 Pull Request ## 许可证 MIT License