夜雨聆风学习资料网

ARTICLE · 1097039

源码专题-java0185-基于Spring Boot智慧酒店管理系统

源码专题-java0185-基于Spring Boot智慧酒店管理系统

智慧酒店管理系统:SpringBoot + Vue 3 + 微信小程序三端一体化实践

  从预订、入住到退房结算,一条主链打通酒店运营;再在链路上叠加协同过滤推荐与大模型客服。

写在前面

酒店行业的信息化并不是新鲜话题,真正难的是把「预订—入住—退房—结算」这条主链真正打通,并在链路上叠加可运营的数据能力。
智慧酒店管理系统给出的答案是:以 Spring Boot 为服务底座,用 Vue 3 管理后台承载商家与平台运营,用微信小程序承接住客,再把**协同过滤推荐算法**与**大模型能力**接到业务缝隙里。整套系统共 31 张数据表、32 个后端接口控制器、80+ 管理后台视图、100+ 小程序页面,是一个完整可落地的三端工程。

一、技术栈全景

后端

  • 基础框架:Spring Boot 2.2.2 + JDK 8
  • 持久层:MyBatis-Plus 2.3 + MySQL 5.7,使用 EntityWrapper 构建动态条件,MPUtil 统一处理驼峰与下划线的映射、模糊查询与区间查询
  • 切面与日志:Spring AOP + 自定义 @SysLog 注解,操作日志落库到 syslog 表
  • 工具链:Hutool 4.0.12、FastJSON 1.2.8、Apache POI 3.x(批量导入导出)、Unirest / HttpClient
  • 安全:Token 鉴权、DeSensUtil 字段脱敏、滑块验证码、逻辑删除

人工智能

  • 百度智能云 Java SDK 4.4.1:AipFace(人脸比对)、AipOcr(文字识别)、AipNlp(情感分析)、AipImageClassify(图像识别)
  • 百度千帆 Qianfan 0.1.1:接入 ERNIE-3.5-8K 大模型,作为智能问答底座
  • HanLP portable-1.8.0:中文分词,服务于词云统计与内容安全

管理后台

  • 核心:Vue 3.5 + Vue Router 4 + Vuex 4 + Axios 1.3
  • UI 与可视化:Element Plus 2.10、ECharts 5.4 + echarts-gl(3D 图表)
  • 样式:Sass 1.32.13 + sass-loader 12(dart-sass,全量使用现代 :deep() 语法)
  • 业务组件:@vuemap/vue-amap(高德地图选址)、@wangeditor/editor(富文本)、emoji-mart-vue-fast(表情)、vue3-puzzle-vcode(拼图滑块验证)、print-js(打印)、xlsx(导出)

移动端

原生微信小程序 + Vant Weapp 组件库,启用定位能力(`getLocation` / `chooseLocation`),底部导航分为首页、公告资讯、酒店信息、论坛交流、我的五个板块。

二、三端协同

  • 小程序端:面向住客,承担浏览、预订、支付、入住/退房查询、客房服务、论坛交流与即时通讯,是流量入口。
  • 管理后台:面向商家与平台管理员,承担房源维护、订单审核、财务统计、内容治理与系统配置,是运营中枢。
  • 后端服务:统一的 RESTful 接口层,前端列表与后端列表通过 /list(@IgnoreAuth)与 /page(需鉴权)分离,配合 View 实体做级联字段拼装。

三、三类角色与核心功能

1. 住客(用户 · 小程序端)

  • 房源浏览与检索:按酒店名称、房间类型、服务类型筛选,查看酒店详情、图片、位置与住客评价
  • 在线预订与支付:选择日期与房型下单,支持微信支付确认页、会员充值(buyvip)
  • 订单全生命周期自助:查看预订记录、发起取消预订(quxiaoyuding)、查看入住记录(ruzhujilu)与退房记录(tuifangjilu)
  • 客房服务:在线提交客房服务请求(kefangfuwu),如加床、送物、维修
  • 内容互动:收藏酒店(storeup)、发表与回复评论(discussjiudianxinxi)、论坛发帖与交流(forum)、评论点赞
  • 咨询与沟通:使用智能问答助手(chathelper),与商家或其他住客即时通讯(chat / chat_friend / chat_message)
  • 个人中心:资料维护、密码找回、公告资讯浏览(news)

2. 商家(酒店运营方 · 管理后台)

  • 房源管理:维护酒店信息(jiudianxinxi)、房间类型(fangjianleixing)、服务类型(fuwuleixing)
  • 订单审核:对预订单执行批量审核(shBatch),填写审核回复(sfsh / shhf),决定是否受理
  • 住离管理:登记入住记录、办理退房、安排客房清洁(qingjiejilu)
  • 服务受理:处理住客提交的客房服务申请
  • 财务与经营分析:录入并查看财务报表(caiwubaobiao),借助统计接口与图表掌握营收走势
  • 客户沟通:在后台与住客对话,回复咨询与留言

3. 平台管理员(管理后台)

  • 账号治理:管理住客账号(yonghu)与商家账号(shangjia),含审核、禁用与密码重置
  • 基础数据:维护字典、公告资讯(news)、弹窗提醒(popupRemind)、菜单(menu)与系统配置(config)
  • 内容治理:论坛版块(forumType)、帖子(forum)与举报(forumReport)管理,敏感词库(sensitiveWord)维护
  • 智能运营:配置问答助手知识库(chathelper),查看词云与各类统计报表
  • 系统运维:查看操作日志(syslog)、用户与商家的注册登录审计

四、一条主线:从预订到结算的业务闭环

  1. 预订 —— 住客选定房型与日期,生成 jiudianyuding 预订单
  2. 审核 —— 商家在后台批量审核,写入审核状态与回复意见
  3. 入住 —— 审核通过后登记 ruzhujilu,可结合人脸比对完成身份核验
  4. 退房 —— 办理 tuifangjilu,同步释放房源
  5. 清洁 —— 生成 qingjiejilu,房间重新进入可售状态
  6. 结算 —— 数据汇入 caiwubaobiao,形成可查询、可统计的财务流水
旁路还挂接了取消预订、客房服务、收藏、评论与论坛,构成完整的住前、住中、住后链路。

五、项目亮点

亮点一:基于用户的协同过滤推荐,而非简单销量排序

系统实现了完整的 **User-Based Collaborative Filtering**,核心类为 `UserBasedCollaborativeFiltering`。
算法分三步:先由住客行为(收藏、预订)构建「用户—物品」倒排表;再生成用户相似度稀疏矩阵,用**余弦相似度**衡量两个住客的兴趣重合度:
```
sim(u,v) = |N(u) ∩ N(v)| / √(|N(u)| · |N(v)|)
```
推荐时取与目标住客最相似的 K 个邻居,把邻居消费过而目标住客尚未接触的物品按评分聚合,排序后输出 Top-N。酒店列表的智能排序接口 `autoSort` 即由该算法驱动,实现「千人千面」。
类内部还保留了新旧两版实现:早期版本直接操作 `userRatings`,新版 `recommendItems(List entities, String x, String y, ...)` 支持从任意实体列表反射构建稀疏矩阵,泛化能力更强。

亮点二:大模型智能客服(ERNIE-3.5-8K)

通过百度千帆平台接入 **ERNIE-3.5-8K** 对话模型:
```java
Qianfan qianfan = new Qianfan(Auth.TYPE_OAUTH, ACCESS_KEY, ACCESS_SECRET_KEY);
ChatResponse resp = qianfan.chatCompletion()
.model("ERNIE-3.5-8K")
.addMessage("user", msg)
.execute();
```
对外暴露 `/baidu/askai` 接口,并在提示词中约束「回答不出现 emoji」,保证输出风格统一。配合 `chathelper` 知识库表与 `chat` / `chat_friend` / `chat_message` 构成的完整 IM 模型,住客咨询先由大模型应答,未覆盖的问题再转人工,形成「AI 优先、人工兜底」的分层服务。

亮点三:百度 AI 能力矩阵嵌入业务环节

  • 人脸比对(AipFace + MatchRequest):入住环节做 1:1 身份核验,把「人证一致」落到实际流程中
  • OCR 文字识别(AipOcr):basicAccurateGeneral 高精度识别证件与票据文本,减少手工录入
  • 情感分析(AipNlp.sentimentClassify):对评论内容判定正向 / 中性 / 负向,让口碑数据可直接量化
  • 逆地理编码:调用百度地图 reverse_geocoding/v3,把经纬度还原为省市区,支撑酒店定位与选址

亮点四:数据可视化与词云

后端提供 `value` / `valueMul` / `group` / `count` 四类统计接口,并支持按日、月、年的时间维度聚合(`valueDay` / `valueMulDay`)。前端用 ECharts 5 与 echarts-gl 渲染柱状、饼图与 3D 图表。
另有词云接口 `/wordCloud/{tableName}/{columnName}`,先由 `MPUtil.camelToSnake` 把驼峰字段转为下划线列名,再分组取文本、交由 HanLP 分词统计,把住客评论与论坛内容变成一眼可读的热点图。

亮点五:中文内容安全治理

`HanLP portable-1.8.0` 负责中文分词,`sensitive_word` 表维护敏感词库。论坛发帖、酒店评论、聊天消息在进入存储前经过过滤,配合 `forum_report` 举报表形成「机审 + 人审」的双重机制,避免 UGC 内容成为合规风险点。

亮点六:工程细节与数据治理

  • 登录防护:vue3-puzzle-vcode 拼图滑块验证码 + js-md5 加密传输
  • 操作留痕:@SysLog 注解结合 Spring AOP,关键操作自动写入 syslog
  • 字段脱敏:DeSensUtil.desensitize() 对手机号、身份证号等按角色脱敏输出
  • 批量能力:POI 驱动的 Excel 批量导入导出,降低运营录入成本
  • 样式工程:全量采用 Vue 3 推荐的 :deep() 穿透语法,未遗留任何 ::v-deep 旧写法,Sass 与 sass-loader 版本通过 lock 文件锁定,构建稳定

六、小结

这套系统的价值不在于堆砌了多少个功能模块,而在于它把酒店经营中**最核心的那条业务链**做成了闭环:预订进来,审核、入住、退房、清洁、结算依次流转,每一环都留下可查询、可统计的数据。
在此之上,协同过滤让房源排序具备个性化能力,大模型让客服响应不再受限于人力,人脸与 OCR 把线下核验搬到线上,词云与统计报表则把沉淀的数据重新交还给运营者。技术栈选择上并不追新——Spring Boot 2.x、Vue 3、MyBatis-Plus 都是工程上久经验证的组合,稳定性优先。
对一个真实可运营的酒店业务来说,这样的取舍是合理的。

代码获取

系统非商用,非开源,非无偿!,非无偿!,非无偿!

由本人开发,如需源码,请后台直接联系我并发项目编号,非无偿。

项目有很多,并未全部上传,如果未找到想要的,可直接咨询。源码非无偿!

软件定制及其他业务

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

相关学习资料