# 6-旅游推荐系统 - 功能说明
# 项目概述
将景点、酒店、旅游路线和游记整合展示的旅游服务平台。用户可以浏览与收藏旅游资源、查看推荐、预订并发布游记;商家维护旅游资源和订单;管理员管理平台内容。
# 项目概览
# 创新点
- 行为关联推荐:景点推荐结合用户收藏与浏览记录寻找相似用户,没有足够行为时回退热门景点。
- 多类型预订:景点门票、酒店预订与旅游路线使用统一订单结构记录。
- 旅行内容积累:游记、评论、收藏和浏览历史支持旅游信息的持续整理与交流。
# 项目亮点
- 角色分工:提供管理员、商家、用户等业务入口。
- 业务数据组织:主初始化脚本包含 13 张表,围绕该系统的核心对象与业务记录建模。
- 前后端分离:前端负责页面交互,后端通过控制器、服务与数据映射层提供接口。
- 操作体验:提供列表查询、表单编辑、状态展示及个人资料维护入口。
# 管理员
# 账号管理
维护管理员、用户和商家信息。
# 旅游资源
管理景点、酒店和旅游路线。
# 订单管理
查询并维护不同类型旅游订单。
# 内容治理
管理游记、评论、系统通知和轮播图。
# 商家
# 资源管理
通过后台维护景点、酒店与路线资料。
# 订单处理
查看和处理旅游资源相关订单。
# 用户
# 资源浏览
按景点、酒店和路线入口查看旅游信息及详情。
# 旅游预订
选择资源、数量、日期和联系人,提交订单并支付。
# 游记交流
浏览、发布和维护游记,参与评论。
# 个性化记录
查看推荐、收藏以及浏览历史。
# 账户管理
维护个人资料、密码,查询余额和充值。
# 功能权限对照表
下表说明当前菜单与业务入口分工。“—”表示未列为该角色的常规入口;不代表已对每个接口完成权限安全审计。
| 功能模块 | 管理员 | 商家 | 用户 |
|---|---|---|---|
| 账号及平台内容 | 管理 | — | 浏览 |
| 景点、酒店、路线 | 管理 | 维护 | 浏览预订 |
| 旅游订单 | 管理 | 处理 | 创建支付查询 |
| 游记与评论 | 管理 | — | 发布互动 |
| 收藏、历史、推荐 | 相关数据接口 | — | 个人使用 |
# 业务状态说明
- 旅游订单:待支付、已支付、已完成、已取消。
- 订单类型:景点门票、酒店预订、旅游路线。
# 默认账号
以下为主初始化 SQL 中能够核实的示例账号;需先导入对应脚本。这里不把脚本初始值视为当前运行数据库的实际账号或余额。
| 登录角色 | 角色标识 | 用户名 | 初始密码 |
|---|---|---|---|
| 管理员 | ADMIN | admin | 123456 |
| 商家 | MERCHANT | merchant1 | 123456 |
| 用户 | USER | user1 | 123456 |
# 核心业务流程
# 推荐浏览
- 浏览或收藏景点。
- 系统记录交互。
- 推荐服务寻找相似用户关联景点。
- 展示推荐或热门结果。
# 旅游预订
- 查看资源详情。
- 填写预订信息。
- 创建待支付订单。
- 使用账户余额支付。
- 查看订单状态。
# 游记发布
- 进入我的游记。
- 编辑图文内容。
- 提交保存。
- 在游记列表与详情页展示。
# 技术说明
# 系统架构
| 项目 | 当前源码配置 |
|---|---|
| Vue | ^3.4.29 |
| Element Plus | ^2.8.4 |
| Pinia | ^2.2.2 |
| Axios | ^1.7.5 |
| Vite | ^5.3.1 |
| Spring Boot | 3.2.10 |
| Java | 17 |
| MyBatis 集成组件 | 3.0.4 |
| 数据库 | MySQL;具体运行版本以实际部署为准 |
| 身份认证 | JWT;通过登录接口生成令牌 |
前端版本按 package.json 中的声明范围记录,不将依赖范围等同于已安装的精确版本。
# 访问地址
- 后端接口:http://localhost:1000 (opens new window),对应服务端端口配置。
- 前端开发页面:http://localhost:5173 (opens new window),项目未显式覆盖 Vite 默认端口,实际以启动日志为准。
- 登录入口:前端
/login;管理端基础路由/admin。
# 数据库
- 配置数据库名:
a_2026_6_travel_system。 - 主初始化脚本:
sql/sql.sql。 - 主脚本建表数量:13 张,仅统计当前主脚本的 CREATE TABLE,不包含临时 SQL、迁移脚本或运行时改动。
- 字符集:主脚本采用 utf8mb4。
- 数据表清单:
admin、attraction、browse_history、carousel、collect、comment、hotel、merchant、orders、route、system_notice、travel_note、user。
# 文件上传
- 上传接口:
POST /file/upload。 - 文件访问:
GET /file/{fileName}。 - 配置限制:单文件 100MB,单次请求 1000MB。
- 使用范围:根据业务页面上传图片或附件;具体允许类型以对应上传组件配置为准。
# 系统特色
# 行为关联推荐
景点推荐结合用户收藏与浏览记录寻找相似用户,没有足够行为时回退热门景点。
# 多类型预订
景点门票、酒店预订与旅游路线使用统一订单结构记录。
# 旅行内容积累
游记、评论、收藏和浏览历史支持旅游信息的持续整理与交流。
# 当前实现说明
- 已核实的行为推荐主要针对景点,不扩展描述为所有资源均有同等算法能力。
- 余额支付由本地业务接口处理;取消状态不等同于已实现自动退款。
- 没有核实到地图导航、行程自动规划及第三方订票接口,原文如有相关描述不予保留。
本次按本地源码进行静态核对,未启动前后端或连接数据库执行端到端验证;上述说明反映当前代码与页面定义。