功能说明:
1)用户管理:用户登录、用户注册、找回密码、添加用户、修改用户、删除用户、查询用户、修改个人资料、登录注销
密码找回 - 通过邮箱方式找回,需要配置邮箱账号参数。
2)宾馆管理:添加宾馆、修改宾馆、删除宾馆、查询宾馆、预订宾馆
3)房间管理:添加房间、修改房间、删除房间、查询房间
4)预订管理:查询订单、入住、退房、换房、删除预订记录、查询我的预订记录
5)报表管理:统计宾馆、房间、订单、营业金额等信息
序号 | 表名 | 说明 |
1 | admin | 管理员表 |
2 | book | 订单信息表 |
3 | find | 用于密码找回 |
4 | hotel | 宾馆信息表 |
5 | pay | 支付表 |
6 | room | 房间信息表 |
7 | session | 保存管理员或用户登录状态等信息 |
8 | user | 普通用户信息表 |
开发工具:IDEA、VSCode、Maven
运行环境:JDK1.8、Nodejs18、MySQL8.0
后端开发框架:Springboot2.7、MyBatis-Plus、Spring Email
前端开发框架:Vue2.7、Element UI2.15、Axios1.7、Echarts5.5
访问地址:http://localhost:3000/#/login
测试账号
管理员 admin@qq.com admin
用户 zhangsan@qq.com zhangsan
+---hotel-project
后端代码说明
| | pom.xml
| |
| +---src
| | +---main
| | | +---java
| | | | \---com
| | | | \---project
| | | | | HotelProjectApplication.java
| | | | |
| | | | +---common
| | | | | | Commons.java 公共类,获取springbean, 获取当前登录用户,当前HttpServletRequest等对象
| | | | | |
| | | | | +---auth - 框架权限管理
| | | | | | AdminPermission.java java注解,用来表示controller某个方法可以能被管理员调用
| | | | | | IgnorePermission.java java注解,用来表示controller某个方法不需要任何权限就可以被调用
| | | | | | JwtInterceptor.java springboot自定义拦截器,基于JWT Token实现权限管理逻辑
| | | | | | JwtService.java 生成JWT token,验证token
| | | | | | LoginRequiredException.java 需要登录的异常
| | | | | | PermissionConfiguration.java 权限配置,读取application.yml app节点的信息
| | | | | | UnauthorizedException.java 未授权的异常
| | | | | | UserPermission.java java注释,用来表示controller某个方法可以被普通用户调用
| | | | | |
| | | | | +---dto -- 传输对象类定义
| | | | | | CommonResult.java 封装JSON响应的对象
| | | | | | ConstantCode.java 响应码定义
| | | | | | LoginUser.java 封装当前登录用户的对象
| | | | | | PageRequest.java 封装分页查询请求信息的对象
| | | | | | PageResult.java 封装分页查询结果的对象
| | | | | | StatusCode.java 响应码定义对象
| | | | | |
| | | | | +---exception -- 异常管理
| | | | | | JsonException.java 封装json请求处理异常的对象
| | | | | | JsonExceptionController.java 实现JSON请求出错后未知异常,默认调用的controller类
| | | | | | JsonExceptionHandler.java 处理JSON请求处理异常的执行处理器,返回错误提示给浏览器
| | | | | | JsonValidationException.java 封装JSON请求业务校验失败异常的对象
| | | | | |
| | | | | +---pagination
| | | | | | MybatisPlusConfig.java 配置mybatis-plus 分页配置
| | | | | |
| | | | | +---transaction
| | | | | | TransationAspect.java 基于AOP,实现事务控制
| | | | | |
| | | | | \---util
| | | | | EncryptUtil.java 加密解密帮助类
| | | | |
| | | | +---config
| | | | | WebConfiguration.java 基于springboot ,配置CROS跨域访问,以及权限拦截器注册
| | | | |
| | | | +---controller
| | | | | BookController.java
| | | | | CommonController.java 登录,注册,注销,修改个人信息,找回密码功能
| | | | | HotelController.java
| | | | | ReportController.java 报表
| | | | | RoomController.java
| | | | | UserController.java
| | | | |
| | | | +---entity
| | | | | Admin.java
| | | | | Book.java
| | | | | Find.java 找回密码信息 数据库存储
| | | | | Hotel.java
| | | | | Pay.java
| | | | | Room.java
| | | | | Session.java 用户或管理员登录状态 数据库存储
| | | | | User.java
| | | | |
| | | | +---mapper
| | | | | AdminMapper.java
| | | | | BookMapper.java
| | | | | FindMapper.java
| | | | | HotelMapper.java
| | | | | PayMapper.java
| | | | | ReportMapper.java
| | | | | RoomMapper.java
| | | | | SessionMapper.java
| | | | | UserMapper.java
| | | | |
| | | | \---service
| | | | | AdminService.java
| | | | | AuthService.java
| | | | | BookService.java
| | | | | FindService.java
| | | | | HotelService.java
| | | | | PayService.java
| | | | | ReportService.java
| | | | | RoomService.java
| | | | | SessionService.java
| | | | | UserService.java
| | | | |
| | | | \---impl
| | | | AdminServiceImpl.java
| | | | AuthServiceImpl.java
| | | | BookServiceImpl.java
| | | | FindServiceImpl.java
| | | | HotelServiceImpl.java
| | | | PayServiceImpl.java
| | | | ReportServiceImpl.java
| | | | RoomServiceImpl.java
| | | | SessionServiceImpl.java
| | | | UserServiceImpl.java
| | | |
| | | \---resources
| | | | application.yml
| | | |
| | | \---mapper
| | | BookMapper.xml
| | | HotelMapper.xml
| | | ReportMapper.xml
| | | RoomMapper.xml
| | | UserMapper.xml
| | |
前端代码说明
vue
| App.vue 入口页面
| main.js 入口脚本
+---assets
| +---css
| | style.css 全局样式
| |
| \---images
| bj.jpg 背景图片
|
+---components
| room-pic.vue 用于显示房间图片的vue组件
|
+---permission
| index.js 基于vue路由实现的权限管理
|
+---router
| index.js vue路由配置
|
+---store
| session.js 存储登录状态(用户名,token)到浏览器缓存
|
+---util
| constants.js 业务常量信息定义
| dialog.js 基于element ui 封装页面提示对话框的帮助函数
| request.js 基于axios 实现前后端数据传输
|
\---views
| Index.vue 登录成功系统框架页面(上面包含logo标题和登录用户,修改个人信息,注销)
| Login.vue 登录页面
| Profile.vue 修改个人信息页面
| Regedit.vue 注册页面
|
+---admin 管理员能访问的页面
| +---book
| | all-list.vue - 查询所有预订记录
| |
| +---hotel
| | create.vue 宾馆添加页面
| | list.vue 宾馆列表查询页面
| | update.vue 宾馆更新页面
| |
| +---report
| | summary.vue 报表统计
| |
| +---room
| | create.vue 房间添加页面
| | list.vue 房间列表查询页面
| | update.vue 房间更新页面
| |
| \---user
| create.vue 用户添加页面
| list.vue 用户列表查询页面
| update.vue 用户更新页面
|
\---user 用户能访问的页面
\---book
create.vue 按条件查询房间,填写预订信息并提交
my-list.vue 查询我预订的订单记录,可办理入住,退房,换房
获取本站源码,请联系QQ15620030或微信zeyunsoft。本站同时还可以提供服务:远程环境搭建、项目代码运行、BUG修复调试、代码讲解等。本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。 地址:https://www.biyeyuanma.cn/post/19.html