package com.mango.control.user;
import com.mango.pojo.BlackList;
import com.mango.pojo.Classroom;
import com.mango.pojo.Student;
import com.mango.service.Impl.BlackListServiceImpl;
import com.mango.service.Impl.ReservationServiceImpl;
import com.mango.service.Impl.StudentServiceImpl;
import com.mango.utils.CommonUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Controller
public class MakeReservationController {
@Autowired
ReservationServiceImpl reservationService;
@Autowired
BlackListServiceImpl blackListService;
@Autowired
StudentServiceImpl studentService;
@RequestMapping("/make_reservation")
public String make_reservation(HttpServletRequest request, Model model) {
Map<String, Object> map = new HashMap<>();
String selectLocation = request.getParameter("selectLocation");
// System.out.println(selectLocation);
if (!"".equals(selectLocation) && selectLocation != null) {
map.put("selectLocation", selectLocation);
}
String selectBuildingName = request.getParameter("selectBuildingName");
// System.out.println(selectBuildingName);
if (!"".equals(selectBuildingName) && selectBuildingName != null) {
map.put("selectBuildingName", selectBuildingName);
}
String selectRoomName = request.getParameter("selectRoomName");
if (!"".equals(selectRoomName) && selectRoomName != null) {
map.put("selectRoomName", selectRoomName);
}
String selectRoomFloor = request.getParameter("selectRoomFloor");
if (!"".equals(selectRoomFloor) && selectRoomFloor != null) {
map.put("selectRoomFloor", selectRoomFloor);
}
String selectTime = request.getParameter("selectTime");
if (!"".equals(selectTime) && selectTime != null) {
String time_begin = selectTime.substring(0, selectTime.indexOf("-"));
// System.out.println(time_begin);
String time_end = selectTime.substring(selectTime.lastIndexOf("-") + 1);
// System.out.println(time_end);
map.put("time_begin", time_begin);
map.put("time_end", time_end);
// map.put("selectTime",selectTime);
}
String selectDate = request.getParameter("selectDate");
// System.out.println(selectDate);
if (!"".equals(selectDate) && selectDate != null) {
String date_begin = CommonUtil.getDateFormat(selectDate.substring(0, selectDate.indexOf(" ")));
// System.out.println(date_begin);
String date_end = CommonUtil.getDateFormat(selectDate.substring(selectDate.lastIndexOf(" ") + 1));
// System.out.println(date_end);
if (!date_begin.equals(date_end)) {
map.put("date_begin", date_begin);
map.put("date_end", date_end);
}
}
List<Classroom> allAvailableClassrooms = reservationService.getAllAvailableClassroom(map);
// System.out.println(allAvailableClassrooms.size());
String[] selectedCheckbox = request.getParameterValues("selectedCheckbox");
if (selectedCheckbox != null) {
Map<String, Map<String, String>> room_id_and_time_id = new HashMap<>();
for (String checkbox : selectedCheckbox) {
// System.out.println(checkbox);
String time_id = checkbox.substring(0, checkbox.indexOf("-"));
// System.out.println(time_id + "######");
String room_id = checkbox.substring(checkbox.indexOf("-") + 1);
// System.out.println(room_id + "######");
room_id_and_time_id.put(room_id.concat(time_id), new HashMap<>() {{
put(room_id, time_id);
}});
}
reservationService.setRoom_id_and_time_id(room_id_and_time_id);
return "redirect:confirm_reservation";
}
model.addAttribute("allAvailableClassrooms", allAvailableClassrooms);
return "make_reservation";
}
@RequestMapping("/confirm_reservation")
public String confirm_reservation(HttpServletRequest request, Model model) {
Map<String, Object> map = new HashMap<>();
map.put("room_id_and_time_id", reservationService.getRoom_id_and_time_id());
List<Classroom> allSelectClassrooms = reservationService.getAllAvailableClassroom(map);
reservationService.setAllSelectClassrooms(allSelectClassrooms);
model.addAttribute("allSelectClassrooms", allSelectClassrooms);
return "confirm_reservation";
}
@RequestMapping("/reservation_check")
public String reservation_check(HttpServletRequest request, Model model) {
Student loginUser = CommonUtil.getLoginUser(request);
System.out.println("开始预约...");
// 先查询是否在黑名单中
BlackList student = blackListService.getBlackedStudentById(loginUser.getS_id());
System.out.println(student);
if (student != null) {
model.addAttribute("msg","已被列入黑名单中,无法预约!");
return "confirm_reservation";
}else {
// 如果不在进行下一个判断
// 查询是否一星期存在三次取消预约,先通过sql找出所有取消预约的记录
if (studentService.isThreeTimesCanceledOfWeekById(loginUser.getS_id()) == true) {
model.addAttribute("msg","存在一个星期超过三次取消预约行为,无法预约!");
return "confirm_reservation";
}
}
reservationService.updateAddReservationInfo(loginUser.getS_id());
System.out.println("预约成功!");
return "redirect:make_reservation";
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
基于springboot+bootstrap的学生自习室预约管理系统源码+数据库+项目说明(毕设).zip
共342个文件
xml:103个
jpg:40个
class:38个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 52 浏览量
2024-01-06
15:55:07
上传
评论
收藏 6.07MB ZIP 举报
温馨提示
【资源说明】 1、基于springboot+bootstrap的学生自习室预约管理系统源码+数据库+项目说明(毕设).zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 # 学生自习室预约管理系统 前端:thymeleaf+bootstrap模版 后端:springboot+mybatis # 预览截图 管理员界面
资源推荐
资源详情
资源评论
收起资源包目录
基于springboot+bootstrap的学生自习室预约管理系统源码+数据库+项目说明(毕设).zip (342个子文件)
ReservationServiceImpl.class 8KB
Classroom.class 8KB
Student.class 8KB
ReserveDemoApplicationTests.class 7KB
StudentReservation.class 7KB
RoomAvailableTimeInfo.class 7KB
MakeReservationController.class 5KB
TimeTable.class 5KB
T_building.class 4KB
ClassroomController.class 4KB
SettingController.class 4KB
BlackList.class 4KB
StudentServiceImpl.class 4KB
StudentIndexController.class 3KB
BlackListController.class 3KB
ReservationController.class 3KB
CommonUtil.class 3KB
Admin.class 3KB
StudentController.class 2KB
LoginController.class 2KB
ClassroomServiceImpl.class 2KB
IndexController.class 2KB
BaseController.class 1KB
BlackListServiceImpl.class 1KB
StudentDao.class 1KB
TestController.class 1KB
MakeReservationController$1.class 1KB
StudentService.class 1KB
ClassroomDao.class 983B
ReservationService.class 982B
ReservationDao.class 845B
ClassroomService.class 797B
ReserveDemoApplication.class 740B
WebConstant.class 696B
BlackListService.class 604B
BlackListDao.class 590B
BaseDao.class 271B
MakeReservationDao.class 131B
bootstrap.min.css 213KB
bootstrap.min.css 213KB
style.css 87KB
style.css 87KB
all.min.css 73KB
all.min.css 73KB
fullcalendar.min.css 17KB
fullcalendar.min.css 17KB
simple-line-icons.css 10KB
simple-line-icons.css 10KB
daterangepicker.css 8KB
daterangepicker.css 8KB
dataTables.bootstrap.min.css 5KB
dataTables.bootstrap.min.css 5KB
fullcalendar.print.min.css 2KB
fullcalendar.print.min.css 2KB
login.css 2KB
login.css 2KB
fonts.css 905B
fonts.css 905B
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.gitignore 176B
all_classroom.html 26KB
all_classroom.html 26KB
personal_settings.html 19KB
personal_settings.html 19KB
all_student.html 17KB
all_student.html 17KB
make_reservation.html 13KB
make_reservation.html 13KB
blacklist.html 11KB
blacklist.html 11KB
all_classroom_reservation.html 9KB
all_classroom_reservation.html 9KB
user_reservation.html 8KB
user_reservation.html 8KB
all_student_reservation.html 8KB
all_student_reservation.html 8KB
student_index.html 8KB
student_index.html 8KB
index.html 7KB
index.html 7KB
confirm_reservation.html 6KB
confirm_reservation.html 6KB
common.html 5KB
common.html 5KB
login.html 2KB
login.html 2KB
test.html 2KB
test.html 2KB
logout.html 123B
logout.html 123B
reserve_demo.iml 10KB
maven-wrapper.jar 57KB
MakeReservationController.java 6KB
ReserveDemoApplicationTests.java 6KB
ReservationServiceImpl.java 5KB
共 342 条
- 1
- 2
- 3
- 4
资源评论
土豆片片
- 粉丝: 1572
- 资源: 5636
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功