基于SpringBoot2+vue2的酒店客房管理系统

1. Base64 编码工具

使用 base64 工具


2. 项目简介

酒店客房管理系统,基于Spring Boot框架开发。系统旨在为酒店提供线上客房管理、预订流程处理以及用户角色管理功能。

系统主要面向四类角色:管理员用户会员清洁人员

  • 管理员:负责核心数据管理,包括用户/会员/清洁人员信息维护、客房信息的增删改查、各类订单(预约、入住、退房、取消)的审核与处理,以及系统配置(如轮播图、资讯、客服)。
  • 用户与会员:具备浏览客房、在线预约、支付、入住、退房、取消预约、收藏客房以及在线客服等功能。两者的功能定位基本一致,但作为独立角色存在(可能用于区分不同身份或会员等级的用户)。
  • 清洁人员:主要功能是查看待清扫的退房房间,并更新清扫状态。

3. 技术栈

技术类别 技术选型 主要用途
后端框架 Spring Boot 2.2.2 项目基础架构,提供IoC、MVC等核心能力
ORM框架 MyBatis-Plus 2.3 简化数据库操作,提供强大的CRUD功能
安全框架 Apache Shiro 1.3.2 用户认证与权限控制
数据库 MySQL 5.7.32 持久化存储业务数据
数据库连接 JDBC, MySQL Connector 连接和操作数据库
前端框架 Vue.js (后台管理端) 构建后台管理系统的用户界面
前端UI库 Element UI (后台管理端) 提供后台管理系统的UI组件
前端技术 Layui, jQuery (前台用户端) 构建前台用户系统的界面和交互
工具类 Hutool, FastJson, commons-lang3 提供常用工具方法、JSON处理、字符串操作等

4. 详细介绍

4.1. 核心功能模块
  • 用户管理 :管理系统前台注册的普通用户(yonghu表)和会员(huiyuan表)信息。
  • 客房管理 :管理客房信息(kefangxinxi表),包括客房号、类型、价格、状态(空闲/已客满)、图片、介绍等。
  • 预约管理 :处理用户/会员的客房在线预约(yonghuyuyue/huiyuanyuyue表),支持管理员审核。
  • 入住管理 :将审核通过的预约转化为入住记录(yonghuruzhu/huiyuanruzhu表),并记录入住时间、押金等信息。
  • 退房管理 :处理用户/会员的退房操作,生成退房记录(yonghutuifang/huiyuantuifang表),并可触发房间清扫流程。
  • 取消管理 :处理用户/会员的预约取消请求,记录取消原因(yonghuquxiao/huiyuanquxiao表),并支持管理员审核退款。
  • 清洁管理 :退房后,管理员或系统可生成清扫任务(qingsaofangjian表),由清洁人员登录后查看并完成清扫,更新客房状态。
  • 系统管理 :包括轮播图管理(config表)、酒店资讯管理(news表)、在线客服(chat表)、留言板(messages表)等后台功能。
4.2. 业务流程示例
  1. 用户预订流程
    • 用户/会员登录前台 -> 浏览客房信息 -> 选择客房并提交预约 -> 等待管理员审核。
    • 管理员审核通过后 -> 用户/会员支付 -> 生成入住记录 -> 到店办理入住。
    • 用户/会员入住后 -> 办理退房 -> 系统生成退房记录 -> 并发起清扫任务。
    • 清洁人员登录后台 -> 查看清扫任务 -> 完成清扫 -> 更新房间状态为空闲。

5. 部分代码

5.1. 后端核心配置 (application.yml)
yaml 复制代码
# Tomcat
server:
    tomcat:
        uri-encoding: UTF-8
    port: 8080
    servlet:
        context-path: /springboot6alf1

spring:
    datasource:
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/springboot6alf1?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
        username: root
        password: 123456
5.2. 实体类示例 (HuiyuanEntity.java)
java 复制代码
// 会员实体类,对应数据库中的"huiyuan"表
@TableName("huiyuan")
public class HuiyuanEntity<T> implements Serializable {
    @TableId
    private Long id;
    private String zhanghao;  // 账号
    private String mima;      // 密码
    private String xingming;  // 姓名
    private String nianling;  // 年龄
    private String xingbie;   // 性别
    private String shouji;    // 手机
    private String shenfenzheng; // 身份证
    private String zhaopian;   // 照片
    // ... getters and setters
}
5.3. 控制器示例 (KefangxinxiController.java)
java 复制代码
@RestController
@RequestMapping("/kefangxinxi")
public class KefangxinxiController {
    @Autowired
    private KefangxinxiService kefangxinxiService;

    // 获取客房详情,每次访问会自动增加点击次数(clicknum)
    @IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        KefangxinxiEntity kefangxinxi = kefangxinxiService.selectById(id);
        kefangxinxi.setClicknum(kefangxinxi.getClicknum()+1);
        kefangxinxi.setClicktime(new Date());
        kefangxinxiService.updateById(kefangxinxi);
        return R.ok().put("data", kefangxinxi);
    }
}
5.4. 前端路由配置 (router-static.js)
javascript 复制代码
// 定义前端访问路径与Vue组件的映射关系
const routes = [{
    path: '/index',
    name: '首页',
    component: Index,
    children: [
      { path: '/', name: '首页', component: Home},
      { path: '/updatePassword', name: '修改密码', component: UpdatePassword},
      { path: '/kefangxinxi', name: '客房信息', component: kefangxinxi},
      { path: '/yonghu', name: '用户', component: yonghu},
      // ... 更多路由
    ]
  },
  // ... 其他顶级路由
]

5. 部分截图

Use the tool for decoding

aHR0cHM6Ly9ibG9nLnhpYW9iaWFzLmNvbS9hcnRpY2xlLzU2

7. 项目总结

这是一个功能完备的酒店客房管理系统,实现了从客房展示、在线预约、审核支付、入住退房到房间清扫的完整线上业务流程。系统采用前后端分离模式(后台管理使用Vue,前端用户界面使用Layui),明确了不同角色(管理员、用户、会员、清洁人员)的权限和操作流程。

  • 优点
    • 业务完整性高:涵盖了酒店客房管理的核心环节,形成闭环。
    • 角色清晰:针对不同用户群体设计了特定的操作界面和功能。
    • 技术栈规范:使用了主流的Spring Boot + MyBatis-Plus + MySQL技术组合,便于维护和扩展。
相关推荐
Pluto_CSND1 小时前
Cron表达式使用说明
java
疯狂成瘾者1 小时前
Java 常用工具包 java.util
java·开发语言·windows
ywl4708120871 小时前
springSecurity+jwt,简单版demo
java·前端·servlet
电气_空空1 小时前
基于 LabVIEW 的深海气密采水器测控系统
单片机·嵌入式硬件·毕业设计·labview
SXJR2 小时前
spring boot + langchain4j +milvus实现向量存储
java·spring boot·后端·大模型·milvus·rag·langchain4j
武子康2 小时前
Java-27 深入浅出 Spring - 实现简易Ioc-03 在上节的业务下手动实现IoC 从 XML 配置到 BeanFactory 反射注入
java·后端·mybatis
二哈赛车手2 小时前
新人笔记---idea索引失效问题解决方案
java·笔记·spring·elasticsearch·intellij-idea
飞天狗1112 小时前
零基础JavaWeb入门——第五课第一小节:九大内置对象 · 第1个:request(请求对象)
java·开发语言·前端·后端·servlet
a15108416932 小时前
记一次大模型探索
java·服务器·前端