作者主页:夜未央5788

简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

功能介绍

springboot酒店宾馆管理系统。该系统为后管系统,无前台。主要分三种角色:管理者/工作人员/前台人员。

主要功能有:
客房:客房标准、房间信息;
订单:入住订单;
员工:员工信息;
事务:事务信息;
停车:车位信息;
财务:财务信息;
历史:订单历史、车库历史;

会员:会员信息;

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目

6.数据库:MySql 8.0版本;

技术栈

1. 后端:SpringBoot

2. 前端:html+layui+jQuery

使用说明

1. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,下载所需jar包;

2. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
3. 将项目中db.properties配置文件中的数据库配置改为自己的配置
4. 配置tomcat,然后运行项目,输入localhost:8888 登录
5. 数据库中的employ中有密码,密码是加密过的,三种权限,管理者/工作人员/前台人员 
管理账号:admin 密码:worker1
工作人员账号:worker1 密码:worker1

前台人员:sever1 密码:worker1

运行截图 

代码相关

员工管理控制器

@RestController
public class EmployController
{private final EmployService employservice;@Autowiredpublic EmployController(EmployService employservice){this.employservice=employservice;}@AutowiredEventService eventService;@RequestMapping("/employ/list")public Result<Employ> employList() {return ResultReturn.success(employservice.findAll());}@RequestMapping("/employ/searchOne/{employno}")public Result employSearchOne(@PathVariable("employno") int employno) {Employ r = employservice.findByEmployno(employno);if(r == null) {return ResultReturn.error(1,"it's not exist, you can't delete!");}else {return ResultReturn.success(r);}}@RequestMapping("/employ/add")public Result employAdd(@RequestParam("employno")int employno,@RequestParam("employname") String employname,@RequestParam("employsex")int employsex,@RequestParam("employage") int employage,@RequestParam("employposition")int employposition,@RequestParam("employauthority") int employauthority,@RequestParam("employpaymentpermonth")int employpaymentpermonth,@RequestParam("employworktime") int employworktime,@RequestParam("username") String username,@RequestParam("password") String password) {Employ e = employservice.findByEmployno(employno);if(e!=null)return ResultReturn.error(2,"that employno arleady exist");else{e = saveEmploy(employno,employname,employsex,employage,employposition,employauthority,employpaymentpermonth,employworktime,username,password);return ResultReturn.success(employservice.save(e));}}@RequestMapping("/employ/update/{employno}")public Result employUpdate(@PathVariable("employno")int employno,@RequestParam("employname") String employname,@RequestParam("employsex")int employsex,@RequestParam("employage") int employage,@RequestParam("employposition")int employposition,@RequestParam("employauthority") int employauthority,@RequestParam("employpaymentpermonth")int employpaymentpermonth,@RequestParam("employworktime") int employworktime,@RequestParam("username") String username,@RequestParam("password") String password) {Employ e = employservice.findByEmployno(employno);if(e==null) {return ResultReturn.error(1,"that employno did not exist");}else{e = saveEmploy(employno,employname,employsex,employage,employposition,employauthority,employpaymentpermonth,  employworktime,username,password);return ResultReturn.success(employservice.save(e));}}@RequestMapping("/employ/delete/{employno}")public Result employDelete(@PathVariable("employno")int employno) {Employ e = employservice.findByEmployno(employno);if (e==null)return ResultReturn.error(1,"can't find this employno");employservice.delete(e);return ResultReturn.success(e);}@RequestMapping("/employ/personalMeasage")public Result getPersonalMeasage() {UserDetails userDetails = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();String username = userDetails.getUsername();String password = userDetails.getPassword();Employ e = employservice.findByUsernameAndPassword(username,password);System.out.println("employ measage:"+e);return ResultReturn.success(e);}@RequestMapping("/employ/personalEvent")public Result getPersonalEvent() {UserDetails userDetails = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();String username = userDetails.getUsername();String password = userDetails.getPassword();Employ e = employservice.findByUsernameAndPassword(username,password);List<Event> event = eventService.findAllByEmployno(e.getEmployno());System.out.println("event: "+event);return ResultReturn.success(event);}public Employ saveEmploy(int employno,String employname,int employsex,int employage,int employposition,int employauthority,int employpaymentpermonth,int employworktime,String username,String password) {Employ e = new Employ();e.setEmployno(employno);e.setEmployposition(employposition);e.setEmployworktime(employworktime);e.setEmployage(employage);e.setEmploysex(employsex);e.setEmployname(employname);e.setEmploypaymentpermonth(employpaymentpermonth);e.setEmployauthority(employauthority);e.setUsername(username);e.setPassword(BCrypt.hashpw(password, BCrypt.gensalt()));return e;}}

订单管理控制器

@RestController
public class OrderController
{private final OrderService orderservice;private final OrderRoomService orderroomservice;private final RoomidService roomidservice;private final RoomService roomservice;private final OrderHistoryService orderHistoryService;private final FinanceService financeService;@Autowiredpublic OrderController(OrderService orderservice,OrderRoomService orderroomservice,RoomidService roomidservice,RoomService roomservice,OrderHistoryService orderHistoryService,FinanceService financeService){this.orderservice=orderservice;this.orderroomservice=orderroomservice;this.roomidservice=roomidservice;this.roomservice=roomservice;this.orderHistoryService=orderHistoryService;this.financeService=financeService;}/*** 查找所有订单** @return 返回现有的全部订单*/@RequestMapping("/order/orderlist")public Result<List<Order>> orderList(){return ResultReturn.success(orderservice.findAll());}/*** 根据订单号查找对应订单信息** @param orderno 订单号* @return 返回订单号对应的订单*/@RequestMapping("/order/searchOne/{orderno}")public Result<Order> orderSearchOne(@PathVariable("orderno") int orderno){return ResultReturn.success(orderservice.findByOrderNo(orderno));}/*** 更新订单信息** @param orderno 订单号* @param name    姓名* @param id      身份证* @param phone   电话号码* @param isenter 是否入住* @return 返回更新后的订单*/@RequestMapping("/order/update/{orderno}")public Result<Order> orderUpdate(@PathVariable("orderno") int orderno,@RequestParam("name") String name,@RequestParam("id") String id,@RequestParam("phone") String phone,@RequestParam("isenter") int isenter){Order o=orderservice.findByOrderNo(orderno);o.setName(name);o.setId(id);o.setPhone(phone);o.setIsenter(isenter);return ResultReturn.success(orderservice.save(o));}/*** 插入订单** @param* @return*/@RequestMapping("/order/insert")public Result orderInsert(@RequestParam("name") String name,@RequestParam("id") String id, @RequestParam("phone") String phone,@RequestParam("starttime") String starttime, @RequestParam("endtime") String endtime,@RequestParam("isenter") int isenter, @RequestParam("ismenber") int ismenber,@RequestParam("roomcount") int roomcount, @RequestParam("roomnos") String roomnos,@RequestParam("price") int price){Order o = new Order();o.setName(name);o.setId(id);o.setPhone(phone);// 将String类型格式化为timestampSimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");try {Date startT = sdf.parse(starttime);Date endT = sdf.parse(endtime);o.setStarttime(new Timestamp(startT.getTime()));o.setEndtime(new Timestamp(endT.getTime()));} catch (ParseException e) {e.printStackTrace();}o.setIsenter(isenter);o.setIsmenber(ismenber);o.setRoomcount(roomcount);o.setPrice(price);Order saveO = orderservice.save(o);List<Order> orderList = orderservice.findAllSortByOrderNo();Order lastOrder = orderList.get(0);// 房间号处理String roomStrArray[] = roomnos.split("\\|"); //“.”和“|”都是转义字符,必须得加”\\”;for (int i=0;i<roomStrArray.length;i++){System.out.println(roomStrArray[i]);OrderRoom orderRoom = new OrderRoom();orderRoom.setOrderno(lastOrder.getOrderno());orderRoom.setRoomno(Integer.parseInt(roomStrArray[i]));orderroomservice.save(orderRoom);}return ResultReturn.success(saveO);}/*** 删除订单** @param orderno 订单号* @return 返回成功*/@RequestMapping("/order/delete/{orderno}")public Result orderDelete(@PathVariable("orderno") int orderno){Order o=orderservice.findByOrderNo(orderno);orderservice.delete(o);return ResultReturn.success();}/*** 根据订单号查找所有的订单中的所有房间** @param orderno 订单号* @return 返回房间列表*/@RequestMapping("/order/orderroom/{orderno}")public Result<List<OrderRoom>> orderroomList(@PathVariable("orderno") int orderno){return ResultReturn.success(orderroomservice.findAll(orderno));}/*** 根据订单-房间序号查找对应记录** @param orno 订单-房间表的序号* @return 返回对应的订单-房间信息*/@RequestMapping("/order/orderroom/orderroomSearchOne/{orno}")public Result<OrderRoom> orderroomSearchOne(@PathVariable("orno") int orno){return ResultReturn.success(orderroomservice.findOne(orno));}/*** OrderRoom表更新** @param orno         编号* @param brand        车牌号* @param roomnoAfter  之前的房间号* @param roomnoBefore 现在重新设定的房间号(计算价格需要)* @param orderno      订单号(保存当前订单的价格需要)* @return 返回保存的orderroom对象*/@RequestMapping("/order/orderroom/update/{orno}")public Result orderroomUpdate(@PathVariable("orno") int orno,@RequestParam("brand") String brand,@RequestParam("roomnoAfter") int roomnoAfter,@RequestParam("roomnoBefore") int roomnoBefore,@RequestParam("orderno") int orderno){OrderRoom or=orderroomservice.findOne(orno);or.setBrand(brand);or.setRoomno(roomnoAfter);List<Roomid> ri=roomidservice.findAll(roomnoBefore);for (Roomid aRi : ri){aRi.setRoomno(roomnoAfter);}roomidservice.saveAll(ri);Order order=orderservice.findByOrderNo(orderno);Room roomAfter=roomservice.findByRoom(roomnoAfter);Room roomBefore=roomservice.findByRoom(roomnoBefore);order.setPrice(order.getPrice()+roomAfter.getPrice()-roomBefore.getPrice());orderservice.save(order);return ResultReturn.success(orderroomservice.save(or));}//roomid表查看@RequestMapping("/order/orderroom/roomid/list/{roomno}")public Result<List<Roomid>> roomidList(@PathVariable("roomno") int roomno){return ResultReturn.success(roomidservice.findAll(roomno));}/*** 根据房间-身份证表的序号查找对应信息** @param rino 房间-身份证表的序号* @return 返回对应信息*/@RequestMapping("/order/orderroom/roomid/roomidSearchOne/{rino}")public Result<Roomid> roomidSearchOne(@PathVariable("rino") int rino){return ResultReturn.success(roomidservice.findByRino(rino));}/*** 房间-身份证表更新** @param rino 房间-身份证表的序号* @param name 姓名* @param id   身份证* @return 返回更改后的信息*/@RequestMapping("/order/orderroom/roomid/update/{rino}")public Result roomidUpdate(@PathVariable("rino") int rino,@RequestParam("name") String name,@RequestParam("id") String id){Roomid ri=roomidservice.findByRino(rino);ri.setId(id);ri.setName(name);return ResultReturn.success(roomidservice.save(ri));}/*** 寻找未入住的房间号列表** @return 返回房间号列表*/@RequestMapping("/order/orderroom/roomid/getEmptyRoomno")public Result<List<Integer>> getEmptyRoomno(){List<Roomid> ri=roomidservice.findAllWithoutparam();List<Integer> q=new ArrayList<>(ri.size());for (Roomid aRi : ri){q.add(aRi.getRoomno());}List<Room> r=roomservice.getEmpty(q);List<Integer> sum=new ArrayList<>();for (Room aR : r){sum.add(aR.getRoomno());}return ResultReturn.success(sum);}/*** 结算订单** @param orderno 订单号* @return 返回订单结算结果* @throws HotelException 抛出订单未入住异常 code: 601*/@RequestMapping("/order/settle/{orderno}")public Result<OrderHistory> orderSettle(@PathVariable("orderno") int orderno) throws HotelException{Order order=orderservice.findByOrderNo(orderno);if(order.getIsenter()==1){Order orderTemp=new Order(order);orderservice.delete(order);return new OrderHistoryController(orderHistoryService,financeService).orderHistoryInsert(orderTemp);}else{throw new HotelException(ExceptionType.ORDER_ISENTER_ERROR.getCode(),ExceptionType.ORDER_ISENTER_ERROR.getMsg());}}
}

如果也想学习本系统,下面领取。回复:036springboot

Java项目:springboot酒店宾馆管理系统相关推荐

  1. springboot酒店宾馆管理系统、、

    下载地址:https://download.csdn.net/download/m0_61837203/23649068 项目介绍: springboot酒店宾馆管理系统.. 系统说明: 源码空间站, ...

  2. Java项目:酒店宾馆管理系统(java+SpringBoot+html+layui+jQuery+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 功能介绍 springboot酒店宾馆管理系统.该系统为后管系统,无前台.主要分三种角色:管理者/工作人员/前台人员. 主要功能有: 客房: ...

  3. Mysql数据库宾馆管理系统_酒店宾馆管理系统 springboot项目 mysql数据库 登陆界面 前端后台 layui.rar...

    [实例简介] 酒店宾馆管理系统 配置直接使用intellij idea的springboot打开 等待把dependence下载完毕(配置maven 修改下载源) 配置的properties中数据库需 ...

  4. 【源码及课件分享】Java实战项目之酒店客房管理系统_Java项目开发_Java项目实战

    Java实战项目又双叒叕来咯~小伙伴们请查收~酒店客房管理系统![源码及课件分享]Java实战项目之酒店客房管理系统_Java项目开发_Java项目实战_Java毕业设计https://www.bil ...

  5. 计算机毕业设计springboot酒店客房管理系统8yj0v源码+系统+程序+lw文档+部署

    计算机毕业设计springboot酒店客房管理系统8yj0v源码+系统+程序+lw文档+部署 计算机毕业设计springboot酒店客房管理系统8yj0v源码+系统+程序+lw文档+部署 本源码技术栈 ...

  6. 基于Vue和SpringBoot的宾馆管理系统的设计和实现

    作者主页:Designer 小郑 作者简介:Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue.SpringBoot和微信小程序).系统定制.远程技术指导. ...

  7. java计算机毕业设计酒店员工管理系统源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计酒店员工管理系统源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计酒店员工管理系统源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B/S ...

  8. java计算机毕业设计酒店预订管理系统MyBatis+系统+LW文档+源码+调试部署

    java计算机毕业设计酒店预订管理系统MyBatis+系统+LW文档+源码+调试部署 java计算机毕业设计酒店预订管理系统MyBatis+系统+LW文档+源码+调试部署 本源码技术栈: 项目架构:B ...

  9. 计算机毕业设计springboot酒店客房管理系统e03qm源码+系统+程序+lw文档+部署

    计算机毕业设计springboot酒店客房管理系统e03qm源码+系统+程序+lw文档+部署 计算机毕业设计springboot酒店客房管理系统e03qm源码+系统+程序+lw文档+部署 本源码技术栈 ...

最新文章

  1. JQUERY设置或返回属性值attr
  2. SAP HANA中的SLT简介
  3. shell 函数定义和调用
  4. 新能源维修和计算机应用哪个好,在买新能源车之前 这些事你应该先知道
  5. 【Elasticsearch】Elasticsearch 动态模板(Dynamic templates)
  6. mybatis oracle生成注释,MyBatis Generator生成Oracle数据库对应实体类时无法获取注释问题...
  7. jqGrid的单字段查询
  8. 代理模式的原理解析入门
  9. 初识Python 04 day
  10. (转载)十四步实现拥有强大AI的五子棋游戏
  11. 微信小程序轮播图滚动带动背景图变换及滚动对应图片下标
  12. gbk与gb2312并不一样
  13. html5css重复径向渐变,CSS3怎么实现重复径向渐变效果
  14. 51单片机读取引脚值原理
  15. 利用shrinkwrap锁定依赖版本
  16. 赋诗一首!——《秋》
  17. 【计算机基础04】Excel习题
  18. 学会这些快准狠的Word技巧,你也能成为Word高手
  19. Automatic White Balance(AWB)/Color Constancy(CC)系列论文
  20. 对比Excel,利用pandas进行数据分析各种用法

热门文章

  1. 微信支付的软件架构,牛逼!
  2. [架构之路-3]:架构师 - 软件架构师也是魔法师,架构师应具备的四大方面的技能
  3. 服务器系统事件1014,事件ID1014
  4. 浏览器页面白屏怎么处理
  5. 图像 快速傅里叶变换 及 频率域滤波 java 实现
  6. 功能性近红外脑成像技术fNIRs开源网站
  7. 基于php的库存管理系统开题报告,库存管理系统的开题报告.doc
  8. 跟寻智能色选机,一起探索神秘的色彩世界
  9. 基于OpenCv的照片美化工具的设计与实现
  10. 基于MODIS数据的秸秆焚烧遥感监测