# booking-system **Repository Path**: bloxed/booking-system ## Basic Information - **Project Name**: booking-system - **Description**: 约课小程序全套系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-03 - **Last Updated**: 2026-05-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 在线约课平台 > 基于 Spring Boot + Vue + 微信小程序 的在线艺术教育约课系统 ## 项目介绍 本项目是一个线上声乐教育全链路服务平台,整合「学生端(微信小程序)+ 教师端(微信小程序)+ 超管PC管理后台」三端,实现"课卡商品管理→学生购卡约课→教师排课教学→课时消耗统计→全平台管控"的完整业务闭环。 ## 项目结构 ``` booking-system/ ├── booking-server/ # 后端服务(Spring Boot) ├── booking-admin/ # 管理后台(Vue + TS + Arco Design) ├── booking-mini/ # 微信小程序 │ ├── student/ # 学生端小程序 │ └── teacher/ # 教师端小程序 └── README.md ``` ## 技术栈 ### 后端 - **Spring Boot 3.2** - Web框架 - **MyBatis Plus 3.5** - ORM框架 - **MySQL 8.0** - 数据库 - **Redis** - 缓存 - **JWT** - 认证授权 - **Knife4j** - API文档 ### 管理后台 - **Vue 3** - 前端框架 - **TypeScript** - 类型系统 - **Vite** - 构建工具 - **Arco Design** - UI组件库 ### 小程序 - 微信原生开发 - SVG图标 ## 快速开始 ### 1. 环境要求 - JDK 17+ - Node.js 18+ - MySQL 8.0+ - Redis - 微信开发者工具 ### 2. 数据库初始化 ```bash # 登录MySQL mysql -u root -proot # 执行初始化脚本 source booking-server/src/main/resources/db/init.sql ``` ### 3. 启动后端服务 ```bash cd booking-server # 使用Maven启动 mvn spring-boot:run # 或打包后运行 mvn clean package java -jar target/booking-server-1.0.0.jar ``` 服务地址: http://localhost:8080 API文档: http://localhost:8080/doc.html ### 4. 启动管理后台 ```bash cd booking-admin # 安装依赖 npm install # 开发模式 npm run dev # 生产构建 npm run build ``` 管理后台地址: http://localhost:3000 默认账号: admin / admin ### 5. 导入小程序 1. 打开微信开发者工具 2. 导入项目: - 学生端: `booking-mini/student` - 教师端: `booking-mini/teacher` 3. 修改 `app.js` 中的 API 地址为实际后端地址 4. 测试项目 ## 功能模块 ### 学生端小程序 - 首页(Banner、公告、热门老师、精品课程) - 老师列表/详情 - 课卡列表/详情 - 约课管理 - 订单管理 - 个人中心 ### 教师端小程序 - 数据概览 - 排课管理(创建/编辑/删除排课) - 预约管理(确认/签到/完成课程) - 学员管理 - 个人中心 ### 管理后台 - 数据概览 - 教师管理(CRUD、批量导入) - 课卡管理(CRUD、上架/下架) - 订单管理 - Banner管理 - 公告管理 - 渠道管理 - 用户管理 ## 数据库配置 ```yaml # application.yml spring: datasource: url: jdbc:mysql://localhost:3306/booking_system username: root password: root data: redis: host: localhost port: 6379 ``` ## 接口文档 后端API采用 RESTful 设计,主要接口前缀: | 前缀 | 说明 | |------|------| | `/api/auth` | 认证接口 | | `/api/admin` | 管理后台接口 | | `/api/mini` | 小程序接口 | | `/api/teacher` | 教师端接口 | ## 数据库表结构 | 表名 | 说明 | |------|------| | user | 用户表 | | teacher | 教师表 | | course_product | 课卡商品表 | | user_card | 用户课卡表 | | order | 订单表 | | schedule | 排课表 | | booking | 预约表 | | channel | 渠道表 | | evaluation | 评价表 | | banner | Banner表 | | announcement | 公告表 | | operation_log | 操作日志表 | ## 开发说明 ### 前端开发 - 使用 SVG 图标,不使用第三方图标库 - 管理后台主题色: #165DFF (蓝色) - 遵循 Vue 3 Composition API 规范 ### 后端开发 - 使用 Lombok 简化代码 - 全局异常处理 - 统一响应格式 - 接口文档自动生成 ### 小程序开发 - 原生开发,不使用框架 - 统一使用 SVG 图标 - 遵循小程序开发规范 ## License MIT License