# 海外预约系统 海外预约小程序系统,包含 uni-app 微信小程序前端、Node.js 后端 API 和 Vue.js 管理后台。 ## 项目结构 ``` project-root/ ├── miniprogram/ # uni-app 小程序前端 │ ├── pages/ # 页面组件 │ ├── components/ # 公共组件 │ ├── static/ # 静态资源 │ ├── locale/ # 国际化文件 │ ├── utils/ # 工具函数 │ ├── modules/ # 业务模块 │ ├── uni_modules/ # uni-app 插件 │ └── package.json # 前端依赖 │ ├── backend/ # Node.js 后端 │ ├── src/ # 源代码 │ │ ├── controllers/ # 控制器 │ │ ├── services/ # 业务服务 │ │ ├── models/ # 数据模型 │ │ ├── routes/ # 路由定义 │ │ └── middleware/ # 中间件 │ ├── logs/ # 日志文件 │ ├── uploads/ # 上传文件 │ └── package.json # 后端依赖 │ ├── admin/ # Vue 管理后台 │ ├── src/ # 源代码 │ │ ├── views/ # 页面视图 │ │ ├── stores/ # 状态管理 │ │ ├── router/ # 路由配置 │ │ └── utils/ # 工具函数 │ └── package.json # 管理后台依赖 │ ├── docs/ # 项目文档 │ ├── guides/ # 使用指南 │ ├── setup/ # 配置文档 │ ├── troubleshooting/ # 问题排查 │ └── analysis/ # 分析文档 │ ├── docker/ # Docker 配置 ├── docker-compose.yml # Docker 编排 ├── docker-compose.dev.yml # 开发环境 Docker ├── Makefile # 项目命令 └── package.json # 根目录脚本 ``` ## 快速开始 ### 环境要求 - Node.js >= 18.0.0 - MySQL 8.0+ - Redis (可选,用于缓存) ### 安装依赖 ```bash # 安装所有子项目依赖 npm run install:all # 或分别安装 npm run miniprogram:install npm run backend:install npm run admin:install ``` ### 运行项目 #### 后端 API ```bash # 初始化数据库 npm run backend:init-db # 开发模式 npm run backend:dev # 生产模式 npm run backend:start ``` 后端默认运行在 http://localhost:3000 #### 小程序前端 ```bash # H5 开发模式 npm run miniprogram:dev # 微信小程序开发模式 npm run miniprogram:dev:weixin # 构建 H5 npm run miniprogram:build # 构建微信小程序 npm run miniprogram:build:weixin ``` #### 管理后台 ```bash # 开发模式 npm run admin:dev # 构建生产版本 npm run admin:build # 预览构建结果 npm run admin:preview ``` 管理后台默认运行在 http://localhost:5173 ## Docker 部署 ```bash # 开发环境 docker-compose -f docker-compose.dev.yml up -d # 生产环境 docker-compose up -d ``` ## 可用脚本 | 脚本 | 说明 | |------|------| | `npm run install:all` | 安装所有子项目依赖 | | `npm run miniprogram:dev` | 运行小程序 H5 开发服务器 | | `npm run miniprogram:dev:weixin` | 运行小程序微信开发模式 | | `npm run backend:dev` | 运行后端开发服务器 | | `npm run backend:test` | 运行后端测试 | | `npm run admin:dev` | 运行管理后台开发服务器 | | `npm run admin:build` | 构建管理后台 | ## 文档 详细文档请查看 `docs/` 目录: - [配置指南](docs/setup/CONFIG_GUIDE.md) - [微信配置](docs/setup/WECHAT_SETUP.md) - [登录指南](docs/guides/LOGIN_GUIDE.md) - [认证指南](docs/guides/AUTH_GUIDE.md) ## 技术栈 - 小程序前端: uni-app + Vue 3 + Vue I18n - 后端: Node.js + Express + Sequelize + MySQL - 管理后台: Vue 3 + Element Plus + Pinia + Vite - 部署: Docker + Nginx ## License ISC