|
|
|
@ -92,8 +92,9 @@ public class LabTimeController {
|
|
|
|
|
@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);
|
|
|
|
|
@RequestParam("time") Integer time,
|
|
|
|
|
@RequestParam("uc_id") Integer uc_id) {
|
|
|
|
|
List<Integer> weeks = labTimeService.findWeeksAble(lab_id, year, semester, day, time, uc_id);
|
|
|
|
|
return ResultVOUtil.success(weeks);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -106,18 +107,18 @@ public class LabTimeController {
|
|
|
|
|
labTime.setCreateTime(new Date());
|
|
|
|
|
labTime.setStatus(0);
|
|
|
|
|
// 用户发起的修改请求
|
|
|
|
|
List<Integer> weeks = (List<Integer>)map.get("weeks");
|
|
|
|
|
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> 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> 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,"已被预约的时间段无法去除");
|
|
|
|
|
if (!weeks.containsAll(weeksDisable)) {
|
|
|
|
|
return ResultVOUtil.error(-1, "已被预约的时间段无法去除");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 2. 数据处理
|
|
|
|
@ -126,18 +127,18 @@ public class LabTimeController {
|
|
|
|
|
weekInsert.removeAll(weeksAll);
|
|
|
|
|
|
|
|
|
|
// 需要delete的weeks
|
|
|
|
|
List<Integer> weekDelete = new ArrayList<>(weeksAll);
|
|
|
|
|
List<Integer> weekDelete = new ArrayList<>(weeksAll);
|
|
|
|
|
weekDelete.removeAll(weeks);
|
|
|
|
|
|
|
|
|
|
// 3.批量删除
|
|
|
|
|
List<LabTimeBean> labTimeBeans = labTimeService.findTimes(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
|
|
|
|
|
List<LabTimeBean> labTimeBeans = labTimeService.findTimes(labTime.getLabId(), labTime.getYear(), labTime.getSemester(), labTime.getDay(), labTime.getTime());
|
|
|
|
|
labTimeBeans.removeIf(labTimeBean -> !weekDelete.contains(labTimeBean.getWeek()));
|
|
|
|
|
for (LabTimeBean labTimeBean : labTimeBeans){
|
|
|
|
|
for (LabTimeBean labTimeBean : labTimeBeans) {
|
|
|
|
|
labTimeService.deleteByLtId(labTimeBean.getLtId());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 4.批量插入
|
|
|
|
|
for (int i : weekInsert){
|
|
|
|
|
for (int i : weekInsert) {
|
|
|
|
|
LabTimeBean temp = LabTimeBean.builder().labId(labTime.getLabId())
|
|
|
|
|
.year(labTime.getYear())
|
|
|
|
|
.semester(labTime.getSemester())
|
|
|
|
@ -151,11 +152,11 @@ public class LabTimeController {
|
|
|
|
|
labTimeService.add(temp);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
System.out.println("用户请求"+weeks);
|
|
|
|
|
System.out.println("原来有的"+weeksAll);
|
|
|
|
|
System.out.println("要插入的"+weekInsert);
|
|
|
|
|
System.out.println("要删除的"+weekDelete);
|
|
|
|
|
return ResultVOUtil.success(labTimeService.findWeeks(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime()));
|
|
|
|
|
System.out.println("用户请求" + weeks);
|
|
|
|
|
System.out.println("原来有的" + weeksAll);
|
|
|
|
|
System.out.println("要插入的" + weekInsert);
|
|
|
|
|
System.out.println("要删除的" + weekDelete);
|
|
|
|
|
return ResultVOUtil.success(labTimeService.findWeeks(labTime.getLabId(), labTime.getYear(), labTime.getSemester(), labTime.getDay(), labTime.getTime()));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|