|
|
@ -10,6 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
@ -27,8 +28,7 @@ public class LabTimeController {
|
|
|
|
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
|
|
|
|
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
|
|
|
|
System.out.println(labTime1);
|
|
|
|
System.out.println(labTime1);
|
|
|
|
//查重
|
|
|
|
//查重
|
|
|
|
if(labTimeService.findByTime(labTime1.getTime()) != null)
|
|
|
|
if (labTimeService.findByTime(labTime1.getTime()) != null) {
|
|
|
|
{
|
|
|
|
|
|
|
|
return ResultVOUtil.error(-1, "该时间段已存在");
|
|
|
|
return ResultVOUtil.error(-1, "该时间段已存在");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
labTimeService.add(labTime1);
|
|
|
|
labTimeService.add(labTime1);
|
|
|
@ -49,8 +49,8 @@ public class LabTimeController {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//修改实验室可预约时间段
|
|
|
|
//修改实验室可预约时间段
|
|
|
|
@PostMapping(value = "/updateLabTime" , consumes = "application/json")
|
|
|
|
@PostMapping(value = "/updateLabTimeOld", consumes = "application/json")
|
|
|
|
public ResultVO updateLabTime(@RequestBody Map<String,Object> map , HttpServletRequest request){
|
|
|
|
public ResultVO updateLabTimeOld(@RequestBody Map<String, Object> map, HttpServletRequest request) {
|
|
|
|
//转换对象
|
|
|
|
//转换对象
|
|
|
|
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
|
|
|
|
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
|
|
|
|
if (labTime1.getLtId() == null) {
|
|
|
|
if (labTime1.getLtId() == null) {
|
|
|
@ -69,35 +69,62 @@ public class LabTimeController {
|
|
|
|
return ResultVOUtil.success(labTime1);
|
|
|
|
return ResultVOUtil.success(labTime1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//查找实验室可预约时间段
|
|
|
|
//查找实验室预约周次(包含已预约)
|
|
|
|
@GetMapping(value = "/findlabtimebylabidandyearandsemester")
|
|
|
|
// author 吴志岳
|
|
|
|
public ResultVO<Map<String,Object>> findLabTimeByLabIdAndYearAndSemester(@RequestParam("labId") Integer lab_id , @RequestParam("year") String year , @RequestParam("semester") Integer semester , @RequestParam("status") Integer status){
|
|
|
|
@GetMapping(value = "/getWeeks")
|
|
|
|
List<LabTimeBean> labTimeList1 = labTimeService.findByLabIdAndYearAndSemester(lab_id , year , semester);
|
|
|
|
public ResultVO findLabTimeByLabIdAndYearAndSemester(@RequestParam("labId") Integer lab_id,
|
|
|
|
System.out.println(labTimeList1);
|
|
|
|
@RequestParam("year") String year,
|
|
|
|
LabTimeBean array[] = new LabTimeBean[labTimeList1.size()];
|
|
|
|
@RequestParam("semester") Integer semester,
|
|
|
|
int i = 0;
|
|
|
|
@RequestParam("day") Integer day,
|
|
|
|
for(LabTimeBean labtime : labTimeList1){
|
|
|
|
@RequestParam("time") Integer time) {
|
|
|
|
if (labtime.getStatus().equals(status)) {
|
|
|
|
List<Integer> weeks = labTimeService.findWeeks(lab_id, year, semester, day, time);
|
|
|
|
System.out.println(labtime.getTime());
|
|
|
|
return ResultVOUtil.success(weeks);
|
|
|
|
array[i] = labtime;
|
|
|
|
|
|
|
|
i++;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return ResultVOUtil.success(array);
|
|
|
|
|
|
|
|
|
|
|
|
//查找实验室可预约周次(不包含已预约)
|
|
|
|
|
|
|
|
// author 吴志岳
|
|
|
|
|
|
|
|
@GetMapping(value = "/getWeeksAbleBook")
|
|
|
|
|
|
|
|
public ResultVO findLabTimeByLabIdAndYearAndSemesterAbleBook(@RequestParam("labId") Integer lab_id,
|
|
|
|
|
|
|
|
@RequestParam("year") String year,
|
|
|
|
|
|
|
|
@RequestParam("semester") Integer semester,
|
|
|
|
|
|
|
|
@RequestParam("day") Integer day,
|
|
|
|
|
|
|
|
@RequestParam("time") Integer time) {
|
|
|
|
|
|
|
|
List<Integer> weeks = labTimeService.findWeeksAble(lab_id, year, semester, day, time);
|
|
|
|
|
|
|
|
return ResultVOUtil.success(weeks);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//查找所有实验室列表
|
|
|
|
//修改实验室可预约时间段
|
|
|
|
@GetMapping(value = "/getLabListTime")
|
|
|
|
@PostMapping(value = "/updateLabTime", consumes = "application/json")
|
|
|
|
public ResultVO getLabTimeList(){
|
|
|
|
public ResultVO updateLabTime(@RequestBody Map<String, Object> map, HttpServletRequest request) {
|
|
|
|
List<LabTimeDTO> labTimeList = labTimeService.findAllLabInfo();
|
|
|
|
//转换对象
|
|
|
|
return ResultVOUtil.success(labTimeList);
|
|
|
|
LabTimeBean labTime = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
|
|
|
|
|
|
|
|
// 用户发起的修改请求
|
|
|
|
|
|
|
|
List<Integer> weeks = (List<Integer>)map.get("weeks");
|
|
|
|
|
|
|
|
// 实验室预约时间段
|
|
|
|
|
|
|
|
List<Integer> weeksAll = labTimeService.findWeeks(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
|
|
|
|
|
|
|
|
// 实验室可预约时间段
|
|
|
|
|
|
|
|
List<Integer> weeksAble = labTimeService.findWeeksAble(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
|
|
|
|
|
|
|
|
// 实验室不可变换或不可选取的时间段
|
|
|
|
|
|
|
|
List<Integer> weeksDisable = new ArrayList<>(weeksAll);
|
|
|
|
|
|
|
|
weeksDisable.removeAll(weeksAble);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 如果请求weeks中不包含不可选取的时间段,报错
|
|
|
|
|
|
|
|
if (!weeks.containsAll(weeksDisable)){
|
|
|
|
|
|
|
|
return ResultVOUtil.error(-1,"已被预约的时间段无法去除");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 查找所有课程列表
|
|
|
|
// 需要insert的weeks
|
|
|
|
@GetMapping(value = "/getLabTimelist")
|
|
|
|
List<Integer> weekInsert = new ArrayList<>(weeks);
|
|
|
|
public ResultVO getUserCourseList(){
|
|
|
|
weekInsert.removeAll(weeksAll);
|
|
|
|
List<LabTimeBean> labTimelist = labTimeService.findAll();
|
|
|
|
|
|
|
|
return ResultVOUtil.success(labTimelist);
|
|
|
|
// 需要delete的weeks
|
|
|
|
|
|
|
|
List<Integer> weekDelete = new ArrayList<>(weeksAll);
|
|
|
|
|
|
|
|
weekDelete.removeAll(weeks);
|
|
|
|
|
|
|
|
System.out.println("用户请求"+weeks);
|
|
|
|
|
|
|
|
System.out.println("原来有的"+weeksAll);
|
|
|
|
|
|
|
|
System.out.println("要插入的"+weekInsert);
|
|
|
|
|
|
|
|
System.out.println("要删除的"+weekDelete);
|
|
|
|
|
|
|
|
return ResultVOUtil.success();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|