|
@@ -1387,7 +1387,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
public boolean courseTimeRevise(CourseSchedule courseSchedule, List<CourseSchedule> sameDayCourses) {
|
|
|
int singleClassMinutes = DateUtil.minutesBetween(courseSchedule.getStartClassTime(), courseSchedule.getEndClassTime());
|
|
|
sameDayCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
|
|
|
- Date lastEndClassTime = courseSchedule.getEndClassTime();
|
|
|
+ Date lastEndClassTime = courseSchedule.getStartClassTime();
|
|
|
|
|
|
for (int i=0;i<sameDayCourses.size();i++){
|
|
|
CourseSchedule cs1 = sameDayCourses.get(i);
|
|
@@ -1419,10 +1419,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
if(null == allCourseSchedules){
|
|
|
allCourseSchedules = new ArrayList<>();
|
|
|
}
|
|
|
- Set<Long> adjustCourseIds = adjustCourses.stream().map(CourseSchedule::getId).collect(Collectors.toSet());
|
|
|
+ List<CourseSchedule> adjustCourseTemp = adjustCourses.stream().filter(c -> DateUtil.isSameDay(c.getClassDate(), courseSchedule.getClassDate())).collect(Collectors.toList());
|
|
|
+ Set<Long> adjustCourseIds = adjustCourseTemp.stream().map(CourseSchedule::getId).collect(Collectors.toSet());
|
|
|
allCourseSchedules= (List<CourseSchedule>) org.apache.commons.collections.CollectionUtils.union(allCourseSchedules.stream()
|
|
|
- .filter(c->!adjustCourseIds.contains(c.getId())&&DateUtil.isSameDay(c.getClassDate(), courseSchedule.getClassDate())).collect(Collectors.toList()),
|
|
|
- adjustCourses);
|
|
|
+ .filter(c->!adjustCourseIds.contains(c.getId())).collect(Collectors.toList()),
|
|
|
+ adjustCourseTemp);
|
|
|
|
|
|
Map<Long, CourseSchedule> idCourseMap = allCourseSchedules.stream().collect(Collectors.toMap(CourseSchedule::getId, c -> c));
|
|
|
Set<Long> courseScheduleIds = allCourseSchedules.stream().map(CourseSchedule::getId).collect(Collectors.toSet());
|