# chagee_admin **Repository Path**: chao/chagee_admin ## Basic Information - **Project Name**: chagee_admin - **Description**: 后台管理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-03 - **Last Updated**: 2026-01-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小茶姬管理系统 一个基于 Vue 3 + Node.js + MySQL 的小茶姬会员管理系统。 ## 功能特性 - 🔐 用户认证与权限管理 - 👥 系统用户管理(管理员、角色、权限) - 🍔 小茶姬会员管理 - 📱 小茶姬账号登录集成 - 📊 登录日志记录 - 🎨 现代化的 UI 界面 ## 技术栈 ### 前端 - Vue 3 - Element Plus - Vite - Vue Router - Pinia ### 后端 - Node.js - Express - MySQL - JWT 认证 - Winston 日志 ### 第三方服务 - Python Flask API(小茶姬接口服务,端口 8004) ## 系统架构 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 前端 Vue 3 │ ───> │ 后端 Node.js │ ───> │ MySQL 数据库 │ │ (端口 8081) │ │ (端口 3005) │ │ (chagee) │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ │ ▼ ┌─────────────────┐ │ Python Flask API│ │ (端口 8004) │ └─────────────────┘ ``` ## 安装与运行 ### 前置要求 - Node.js >= 12.0.0 - MySQL >= 5.7 - Python 3.x(用于 Flask API 服务) ### 1. 数据库设置 ```bash # 登录 MySQL mysql -u root -p # 导入数据库结构 source chagee.sql ``` 默认管理员账号: - 用户名: `admin` - 密码: `123456` ### 2. 配置数据库连接 编辑 `chagee-server/src/config/db.config.js`,修改数据库连接信息: ```javascript { host: 'localhost', user: 'root', password: 'your_password', database: 'chagee' } ``` ### 3. 配置小茶姬 API 服务 确保 Python Flask 服务运行在 8006 端口。 在 `start-server.sh` 中设置环境变量: ```bash export CHAGEE_API_URL=http://localhost:8006 export CHAGEE_API_TOKEN=your_token_here ``` ### 4. 启动后端服务 ```bash # 使用启动脚本 ./start-server.sh # 或手动启动 cd chagee-server npm install node src/app.js ``` 后端服务将运行在 `http://localhost:3005` ### 5. 启动前端服务 ```bash # 使用启动脚本 ./start-portal.sh # 或手动启动 cd chagee-portal npm install npm run dev ``` 前端服务将运行在 `http://localhost:8081` ## 主要功能说明 ### 系统管理 - **用户管理**: 管理后台管理员账号 - **角色管理**: 配置不同角色及其权限 - **权限管理**: 细粒度的功能权限控制 - **登录日志**: 记录系统登录历史 ### 小茶姬会员管理 - **会员列表**: 查看所有小茶姬会员信息 - **添加会员**: 通过小茶姬手机号登录添加会员 1. 输入小茶姬会员手机号 2. 获取验证码 3. 输入验证码完成登录 4. 系统自动保存会员信息 - **会员详情**: 查看会员完整信息 - **数据导出**: 导出会员数据为 Excel 文件 ## API 接口说明 ### 认证接口 - `POST /auth/login` - 管理员登录 - `GET /auth/captcha` - 获取验证码 ### 会员管理接口 - `GET /customers` - 获取会员列表 - `GET /customers/:id` - 获取会员详情 - `POST /customers` - 创建会员 - `PUT /customers/:id` - 更新会员 - `DELETE /customers/:id` - 删除会员 - `PUT /customers/:id/status` - 更新会员状态 ### 小茶姬集成接口 - `POST /chagee/get_verification_code` - 获取小茶姬验证码 - `POST /chagee/login` - 小茶姬会员登录 ### 系统管理接口 - `GET /users` - 获取用户列表 - `GET /roles` - 获取角色列表 - `GET /permissions` - 获取权限列表 - `GET /logs` - 获取日志记录 ## 项目结构 ``` chagee_admin/ ├── chagee-server/ # 后端服务 │ ├── src/ │ │ ├── config/ # 配置文件 │ │ ├── controllers/ # 控制器 │ │ ├── middlewares/ # 中间件 │ │ ├── models/ # 数据模型 │ │ ├── routes/ # 路由 │ │ ├── services/ # 服务层(小茶姬API) │ │ └── utils/ # 工具函数 │ └── package.json ├── chagee-portal/ # 前端项目 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 组件 │ │ ├── layout/ # 布局 │ │ ├── router/ # 路由 │ │ ├── store/ # 状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面 │ └── package.json ├── chagee.sql # 数据库结构 ├── start-server.sh # 后端启动脚本 └── start-portal.sh # 前端启动脚本 ``` ## 开发说明 ### 添加新的管理功能 1. 创建数据表(在 `chagee.sql` 中) 2. 创建模型(`chagee-server/src/models/`) 3. 创建控制器(`chagee-server/src/controllers/`) 4. 添加路由(`chagee-server/src/routes/`) 5. 注册路由(`chagee-server/src/routes/api.js`) 6. 创建前端 API(`chagee-portal/src/api/`) 7. 创建页面组件(`chagee-portal/src/views/`) 8. 添加路由配置(`chagee-portal/src/router/index.js`) ### 环境变量 后端支持以下环境变量: - `NODE_ENV`: 运行环境(development/production) - `HOST`: 服务监听地址 - `PORT`: 服务端口 - `DB_HOST`: 数据库主机 - `DB_USER`: 数据库用户 - `DB_PASSWORD`: 数据库密码 - `DB_DATABASE`: 数据库名 - `CHAGEE_API_URL`: 小茶姬 API 服务地址 - `CHAGEE_API_TOKEN`: 小茶姬 API 认证令牌 ## 常见问题 ### Q: 无法连接数据库? A: 检查 MySQL 服务是否启动,数据库名是否为 `chagee`,用户名密码是否正确。 ### Q: 小茶姬登录失败? A: 确保 Python Flask API 服务(端口 8006)正常运行,并且 token 配置正确。 ### Q: 前端无法访问后端接口? A: 检查后端服务是否运行在 3005 端口,查看 `chagee-portal/vite.config.js` 中的代理配置。 ## 许可证 MIT License ## 贡献 欢迎提交 Issue 和 Pull Request。