package com.example.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.YudingxinxiInfo;
import com.example.dao.YudingxinxiInfoDao;
import com.example.service.YudingxinxiInfoService;
import com.example.exception.CustomException;
import com.example.common.ResultCode;
import com.example.vo.EchartsData;
import com.example.vo.YudingxinxiInfoVo;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.example.service.*;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Value;
import cn.hutool.core.util.StrUtil;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
@RestController
@RequestMapping(value = "/yudingxinxiInfo")
public class YudingxinxiInfoController {
@Resource
private YudingxinxiInfoService yudingxinxiInfoService;
@Resource
private YudingxinxiInfoDao yudingxinxiInfoDao;
@PostMapping
public Result<YudingxinxiInfo> add(@RequestBody YudingxinxiInfoVo yudingxinxiInfo) {
//mixmajixami
yudingxinxiInfoService.add(yudingxinxiInfo);
return Result.success(yudingxinxiInfo);
}
//youtixing1
//youtixing2
@GetMapping("/getByDiqu")
public Result<List<Map<String,String>>> qidu() {
return Result.success(yudingxinxiInfoService.findByDiqu());
}
@DeleteMapping("/{id}")
public Result delete(@PathVariable Long id) {
yudingxinxiInfoService.delete(id);
return Result.success();
}
@PutMapping
public Result update(@RequestBody YudingxinxiInfoVo yudingxinxiInfo) {
yudingxinxiInfoService.update(yudingxinxiInfo);
return Result.success();
}
//@PutMapping("/update2")
// public Result update2(@RequestBody YudingxinxiInfoVo yudingxinxiInfo) {
// yudingxinxiInfoService.update2(yudingxinxiInfo);
// return Result.success();
// }
@GetMapping("/{id}")
public Result<YudingxinxiInfo> detail(@PathVariable Long id) {
YudingxinxiInfo yudingxinxiInfo = yudingxinxiInfoService.findById(id);
return Result.success(yudingxinxiInfo);
}
@GetMapping("/changeStatus/{id}")
public Result<YudingxinxiInfo> changeStatus(@PathVariable Long id) {
yudingxinxiInfoService.changeStatus(id);
return Result.success();
}
@GetMapping
public Result<List<YudingxinxiInfoVo>> all() {
return Result.success(yudingxinxiInfoService.findAll());
}
@GetMapping("/page/{name}")
public Result<PageInfo<YudingxinxiInfoVo>> page(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "5") Integer pageSize,
HttpServletRequest request) {
return Result.success(yudingxinxiInfoService.findPage(name, pageNum, pageSize, request));
}
@GetMapping("/pageqt/{name}")
public Result<PageInfo<YudingxinxiInfoVo>> pageqt(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "8") Integer pageSize,
HttpServletRequest request) {
return Result.success(yudingxinxiInfoService.findPageqt(name, pageNum, pageSize, request));
}
// @PostMapping("/register")
// public Result<YudingxinxiInfo> register(@RequestBody YudingxinxiInfo yudingxinxiInfo) {
// if (StrUtil.isBlank(yudingxinxiInfo.getName()) || StrUtil.isBlank(yudingxinxiInfo.getPassword())) {
// throw new CustomException(ResultCode.PARAM_ERROR);
// }
// return Result.success(yudingxinxiInfoService.add(yudingxinxiInfo));
// }
/**
* 批量通过excel添加信息
* @param file excel文件
* @throws IOException
*/
@PostMapping("/upload")
public Result upload(MultipartFile file) throws IOException {
List<YudingxinxiInfo> infoList = ExcelUtil.getReader(file.getInputStream()).readAll(YudingxinxiInfo.class);
if (!CollectionUtil.isEmpty(infoList)) {
// 处理一下空数据
List<YudingxinxiInfo> resultList = infoList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getLianxihaoma())).collect(Collectors.toList());
for (YudingxinxiInfo info : resultList) {
yudingxinxiInfoService.add(info);
}
}
return Result.success();
}
@GetMapping("/get/yudingxinxi_tj_fangjianleixing")
Result<List<EchartsData>> yudingxinxi_tj_fangjianleixing() {
List<EchartsData> list = new ArrayList<>();
List<Map<String, Object>> yudingxinxi_tj_fangjianleixingList = yudingxinxiInfoDao.yudingxinxi_tj_fangjianleixing();
Map<String, Double> typeMap = new HashMap<>();
for (Map<String, Object> map : yudingxinxi_tj_fangjianleixingList) {
typeMap.put((String)map.get("aa"), (Double.valueOf((String)map.get("bb").toString())));
}
getPieData("预订信息按房间类型统计", list, typeMap);
getBarData("预订信息按房间类型统计", list, typeMap);
return Result.success(list);
}
@GetMapping("/getExcelModel")
public void getExcelModel(HttpServletResponse response) throws IOException {
// 1. 生成excel
Map<String, Object> row = new LinkedHashMap<>();
row.put("fangjianhao", "A房间号");
row.put("fangjianleixing", "A房间类型");
row.put("jiage", "A价格");
row.put("zhuangtai", "A状态");
row.put("yudingriqi", "A预定日期");
row.put("zhanghao", "A账号");
row.put("xingming", "A姓名");
row.put("lianxihaoma", "A联系号码");
row.put("status", "是");
row.put("level", "yudingxinxi");
List<Map<String, Object>> list = CollUtil.newArrayList(row);
// 2. 写excel
ExcelWriter writer = ExcelUtil.getWriter(true);
writer.write(list, true);
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
response.setHeader("Content-Disposition","attachment;filename=yudingxinxiInfoModel.xlsx");
ServletOutputStream out = response.getOutputStream();
writer.flush(out, true);
writer.close();
IoUtil.close(System.out);
}
@GetMapping("/getExcel")
public void getExcel(HttpServletResponse response) throws IOException {
// 1. 生成excel
Map<String, Object> row = new LinkedHashMap<>();
row.put("fangjianhao", "A房间号");
row.put("fangjianleixing", "A房间类型");
row.put("jiage", "A价格");
row.put("zhuangtai", "A状态");
row.put("yudingriqi", "A预定日期");
row.put("zhanghao", "A账号");
row.put("xingming", "A姓名");
row.put("lianxihaoma", "A联系号码");
row.put("status", "是");
row.put("level", "权限");
List<Map<String, Object>> list = CollUtil.newArrayList(row);
List<Map<String, Object>> daochuexcellist = yudingxinxiInfoDao.daochuexcel();
Map<String, Double> typeMap = new HashMap<>();
没有合适的资源?快使用搜索试试~ 我知道了~
基于Java+SpringBoot的酒店客房管理平台毕业设计(源码+说明+演示视频).zip
共1255个文件
png:212个
gif:190个
js:120个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 100 浏览量
2023-06-25
21:54:35
上传
评论
收藏 27.28MB ZIP 举报
温馨提示
基于Java+SpringBoot的酒店客房管理平台毕业设计(源码+说明+演示视频).zip 【项目技术】 java+mysql+b/s+springboot 【实现功能】 1.客房预订模块:这个模块主要功能是用户通过平台可以浏览、查询酒店客房信息,实现客房预订,包括客房类型、价格、优惠活动、入住时间等信息。 2.客房管理模块:这个模块主要功能是针对酒店客房的管理,包括客房发布、剩余客房数量、客房状态管理、客房数据分析等。 3.客户管理模块:这个模块主要是针对酒店客户的信息进行管理,包括客户档案管理、客户分组和标签管理,以及数据分析和客户评价等。 4.订单管理模块:这个模块主要功能是客户在通过平台进行预订后,酒店需要将订单统一管理,包括订单入住、订单结算、订单退款等。 5.物品管理模块:这个模块主要针对酒店客房中的物品管理,包括洗漱用品、床品、电器等物品的管理,以及库存管理、物品追踪、物品分类等功能。 6.财务管理模块:这个模块主要是针对酒店财务信息的管理,包括账单结算、收支明细、财务分析等功能。
资源推荐
资源详情
资源评论
收起资源包目录
基于Java+SpringBoot的酒店客房管理平台毕业设计(源码+说明+演示视频).zip (1255个子文件)
advertism 3KB
advertism 3KB
YudingxinxiInfoController.class 13KB
XinwentongzhiInfoController.class 13KB
YonghuxinxiInfoController.class 13KB
FangjianxinxiInfoController.class 13KB
KehuxinxiInfoController.class 13KB
RuzhuxinxiInfoController.class 13KB
CaozuorizhiInfoController.class 13KB
FangxingxinxiInfoController.class 12KB
LoucengxinxiInfoController.class 12KB
XitongjianjieInfoController.class 12KB
LiuyanbanInfoController.class 12KB
AccountController.class 11KB
AdminInfoController.class 9KB
NxSystemFileController.class 8KB
YonghuxinxiInfoService.class 6KB
EchartsController.class 5KB
XinwentongzhiInfoService.class 5KB
YudingxinxiInfoService.class 5KB
FangjianxinxiInfoService.class 5KB
AdminInfoService.class 5KB
AdminInfo.class 4KB
KehuxinxiInfoService.class 4KB
CommentInfoService.class 4KB
RuzhuxinxiInfoService.class 4KB
XitongjianjieInfoService.class 4KB
FangxingxinxiInfoService.class 4KB
CaozuorizhiInfoService.class 4KB
LoucengxinxiInfoService.class 4KB
XinwentongzhiInfo.class 4KB
CollectInfoController.class 4KB
LiuyanbanInfoService.class 4KB
CommentInfoController.class 4KB
FangjianxinxiInfo.class 3KB
RichtextInfoController.class 3KB
KehuxinxiInfo.class 3KB
YonghuxinxiInfo.class 3KB
CollectInfoService.class 3KB
YudingxinxiInfo.class 3KB
RichtextInfoService.class 3KB
NxSystemFileInfoService.class 3KB
RuzhuxinxiInfo.class 3KB
LiuyanbanInfo.class 3KB
CollectInfo.class 3KB
CommentInfo.class 3KB
Account.class 3KB
Result.class 2KB
CaozuorizhiInfo.class 2KB
EchartsData.class 2KB
ResultCode.class 2KB
MyInterceptor.class 2KB
YudingxinxiInfoDao.class 2KB
XitongjianjieInfo.class 2KB
CaozuorizhiInfoDao.class 2KB
GlobalExceptionHandler.class 2KB
RuzhuxinxiInfoDao.class 2KB
FangxingxinxiInfo.class 2KB
LoucengxinxiInfo.class 2KB
XinwentongzhiInfoDao.class 2KB
YonghuxinxiInfoDao.class 2KB
EchartsData$Data.class 2KB
WebMvcConfig.class 2KB
CommentInfoDao.class 1KB
FangjianxinxiInfoDao.class 1KB
EchartsData$Series.class 1KB
FangxingxinxiInfoDao.class 1KB
LoucengxinxiInfoDao.class 1KB
KehuxinxiInfoDao.class 1KB
MyInterceptorConfig.class 1KB
AuthorityInfo.class 1KB
NxSystemFileInfo.class 1KB
CollectInfoDao.class 1KB
RichtextInfo.class 1KB
LiuyanbanInfoDao.class 1KB
AuthorityInfo$Model.class 1KB
CustomException.class 1KB
XitongjianjieInfoDao.class 1KB
AdminInfoDao.class 928B
Application.class 793B
NxSystemFileInfoDao.class 773B
RichtextInfoDao.class 641B
FangxingxinxiInfoVo.class 332B
XitongjianjieInfoVo.class 332B
XinwentongzhiInfoVo.class 332B
FangjianxinxiInfoVo.class 332B
LoucengxinxiInfoVo.class 328B
YudingxinxiInfoVo.class 324B
YonghuxinxiInfoVo.class 324B
CaozuorizhiInfoVo.class 324B
RuzhuxinxiInfoVo.class 320B
KehuxinxiInfoVo.class 316B
LiuyanbanInfoVo.class 316B
RichtextInfoVo.class 312B
CollectInfoVo.class 308B
AdminInfoVo.class 300B
layer.cs 14KB
layer.cs 14KB
datepicker.cs 4KB
datepicker.cs 4KB
共 1255 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
职场程序猿
- 粉丝: 2780
- 资源: 3683
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功