# 旅游宣传管理系统 - 功能规格说明书 ## 一、项目概述 ### 1.1 项目背景 随着旅游业的发展需要一个统一的平台来展示景点、售卖纪念品、管理旅游业务 ### 1.2 项目目标 - 为游客提供便捷的景点信息浏览和纪念品购买服务 - 为管理者提供高效的后台运营管理功能 - 为服务提供者提供数据支持和业务管理接口 ### 1.3 系统架构 ``` ┌─────────────────────────────────────────────────────────────┐ │ 用户端 (Vue) │ │ 景点展示 | 纪念品商城 | 订单管理 | 用户中心 | 游记分享 │ └─────────────────────────────────────────────────────────────┘ ┌─────────────────────────────────────────────────────────────┐ │ 管理端 (Vue) │ │ 用户管理 | 景点管理 | 商品管理 | 订单管理 | 数据统计 | 系统设置 │ └─────────────────────────────────────────────────────────────┘ ┌─────────────────────────────────────────────────────────────┐ │ 服务端 (SpringBoot) │ │ 用户服务 | 景点服务 | 商品服务 | 订单服务 | 支付服务 │ └─────────────────────────────────────────────────────────────┘ ┌─────────────────────────────────────────────────────────────┐ │ MySQL 数据库 │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 二、用户端功能设计 ### 2.1 首页模块 | 功能 | 描述 | |------|------| | 轮播图展示 | 展示热门景点、活动公告、促销信息 | | 景点推荐 | 基于算法推荐热门景点,支持分类筛选 | | 商品推荐 | 展示热销纪念品、新品上架 | | 游记精选 | 展示用户发布的优质游记 | ### 2.2 景点展示模块 | 功能 | 描述 | |------|------| | 景点列表 | 支持分类(自然风光、人文历史、主题公园等)、地区筛选 | | 景点详情 | 景点介绍、图片视频展示、开放时间、门票价格 | | 智能导览 | 景点内部分区图、游览路线推荐 | | 在线预订 | 门票预订、人数限制、时段选择 | | 收藏分享 | 收藏景点、分享到社交平台 | | 用户评价 | 查看其他用户评价、发表心得 | ### 2.3 纪念品商城模块 | 功能 | 描述 | |------|------| | 商品列表 | 分类浏览(特产、工艺品、服饰、文创等)、搜索、排序 | | 商品详情 | 商品图片、视频、规格选择、价格、库存 | | 购物车 | 添加/删除商品、数量修改、合计金额 | | 订单确认 | 收货地址选择、配送方式选择、优惠抵扣 | | 在线支付 | 支付宝支付(沙箱环境) | | 订单管理 | 查看订单、取消订单、申请退款、确认收货 | ### 2.4 游记分享模块 | 功能 | 描述 | |------|------| | 游记列表 | 按景点、热度、时间筛选 | | 发布游记 | 文字、图片、视频编辑,关联景点 | | 游记详情 | 浏览、点赞、评论、收藏 | | 个人游记 | 管理自己发布的游记 | ### 2.5 个人中心模块 | 功能 | 描述 | |------|------| | 登录注册 | 手机号、邮箱、第三方登录 | | 个人信息 | 头像、昵称、简介、修改密码 | | 我的订单 | 景点订单、商品订单、全部/待支付/待发货/已完成 | | 我的收藏 | 收藏的景点、商品、游记 | | 地址管理 | 收货地址增删改查、设为默认 | | 消息通知 | 系统通知、订单状态、互动消息 | --- ## 三、管理端功能设计 ### 3.1 系统管理模块 | 功能 | 描述 | |------|------| | 管理员管理 | 增删改查管理员、角色分配(超级管理员、内容管理员、订单管理员) | | 角色权限 | 不同角色功能权限控制 | | 操作日志 | 记录管理员操作行为 | ### 3.2 用户管理模块 | 功能 | 描述 | |------|------| | 用户列表 | 查看所有注册用户、条件筛选 | | 用户详情 | 基本信息、订单记录、收藏记录 | | 禁用/启用 | 异常用户处理 | ### 3.3 景点管理模块 | 功能 | 描述 | |------|------| | 景点列表 | 增删改查、上下架、分类管理 | | 景点编辑 | 基础信息、图片视频、富文本介绍 | | 门票管理 | 票种设置(成人票、儿童票、老人票)、价格设置 | | 预订设置 | 每日限额、开放时段、退改政策 | | 评价管理 | 查看/隐藏/回复用户评价 | ### 3.4 商品管理模块 | 功能 | 描述 | |------|------| | 商品列表 | 增删改查、上下架、分类管理 | | 商品编辑 | 名称、描述、图片视频、规格、价格、库存 | | 分类管理 | 商品一级/二级分类 | | 库存预警 | 库存不足提醒 | ### 3.5 订单管理模块 | 功能 | 描述 | |------|------| | 景点订单 | 订单列表、订单详情、状态变更(待使用/已使用/已取消) | | 商品订单 | 订单列表、发货处理、物流跟踪、退款处理 | | 退款管理 | 退款审核、退款进度 | ### 3.6 游记管理模块 | 功能 | 描述 | |------|------| | 游记列表 | 审核状态筛选(待审核/已发布/已下架) | | 内容审核 | 审核游记内容、违规处理 | | 评论管理 | 查看/隐藏/删除用户评论 | ### 3.7 内容管理模块 | 功能 | 描述 | |------|------| | 轮播图管理 | 首页轮播图增删改、链接跳转设置 | | 公告管理 | 系统公告、活动通知发布 | | 热门关键词 | 搜索关键词配置 | ### 3.8 数据统计模块 | 功能 | 描述 | |------|------| | 运营概览 | 今日订单、GMV、访问量、注册用户数 | | 销售报表 | 按日/周/月/年统计销售额、订单量 | | 景点报表 | 景点预订排名、热度分析 | | 商品报表 | 商品销售排行、库存分析 | | 用户报表 | 新增用户、活跃用户、留存分析 | --- ## 四、服务端接口设计 ### 4.1 用户服务 - 用户注册/登录/登出 - Sa-Token 认证授权 - 第三方登录(微信) - 密码找回 ### 4.2 景点服务 - 景点CRUD - 门票预订 - 预订取消/改签 ### 4.3 商品服务 - 商品CRUD - 购物车操作 - 订单创建/支付/发货/收货 ### 4.4 支付服务 - 支付宝沙箱统一下单 - 支付回调处理 - 退款接口 ### 4.5 文件服务 - 图片/视频上传 - RustFS 分布式文件存储 --- ## 五、数据库设计概要 ### 5.1 核心表结构 | 表名 | 说明 | |------|------| | `user` | 用户表 | | `admin` | 管理员表 | | `role` | 角色表 | | `attraction` | 景点表 | | `attraction_category` | 景点分类表 | | `ticket` | 门票表 | | `attraction_order` | 景点订单表 | | `product` | 商品表 | | `product_category` | 商品分类表 | | `sku` | 商品规格表 | | `cart` | 购物车表 | | `product_order` | 商品订单表 | | `travel_note` | 游记表 | | `comment` | 评论表 | | `favorite` | 收藏表 | | `address` | 收货地址表 | | `banner` | 轮播图表 | | `announcement` | 公告表 | ### 5.2 实体关系 ``` User 1──n AttractionOrder User 1──n ProductOrder User 1──n Cart User 1──n TravelNote User 1──n Favorite User 1──n Address Attraction 1──n Ticket Attraction 1──n TravelNote Attraction 1──n Comment Product 1──n Sku Product 1──n ProductOrder ``` --- ## 六、技术架构 ### 6.1 前端技术 | 端 | 技术栈 | |----|--------| | 用户端 | Vue3 + Vite + Pinia + Vue Router + Element Plus | | 管理端 | Vue3 + Vite + Pinia + Vue Router + Element Plus | ### 6.2 后端技术 | 层级 | 技术 | |------|------| | 核心框架 | SpringBoot 4.x | | ORM | MyBatis-Plus | | 安全框架 | Sa-Token | | 缓存 | Redis | | 文件存储 | RustFS | | 支付 | 支付宝沙箱SDK | ### 6.3 数据库 - MySQL 8.0 ### 6.4 运行环境 - JDK 21 - 后端 IDE:IDEA - 前端 IDE:VS Code - 版本控制:Git --- ## 七、后端包结构 ``` com.tourism/ ├── TourismApplication.java # 启动类 ├── common/ # 公共模块 │ ├── config/ # 配置类 │ ├── constant/ # 常量 │ ├── enums/ # 枚举 │ ├── exception/ # 异常处理 │ └── utils/ # 工具类 ├── user/ # 用户模块 │ ├── controller/ # 用户控制器 │ ├── service/ # 用户服务 │ ├── entity/ # 用户实体 │ ├── mapper/ # 用户DAO │ └── dto/ # 数据传输对象 ├── attraction/ # 景点模块 │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ ├── product/ # 商品模块 │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ ├── order/ # 订单模块(景点订单+商品订单) │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ ├── travel/ # 游记模块 │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ ├── admin/ # 管理端模块 │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ ├── payment/ # 支付模块 │ ├── controller/ │ ├── service/ │ ├── entity/ │ ├── mapper/ │ └── dto/ └── file/ # 文件模块 ├── controller/ ├── service/ └── config/ ``` --- ## 八、开发计划建议 ### 第一阶段(基础功能) 1. 项目搭建(SpringBoot + Vue项目初始化) 2. 数据库设计实现 3. 用户注册登录功能 4. 管理员登录 ### 第二阶段(核心功能) 1. 景点管理(CRUD、分类) 2. 景点展示、预订 3. 商品管理(CRUD、分类) 4. 商品展示、购物车、订单 ### 第三阶段(完善功能) 1. 游记发布、评论 2. 支付功能集成 3. 数据统计 4. 性能优化 --- ## 版本信息 - 文档版本:V1.0 - 创建日期:2026-05-26 - 作者:毕业设计