Parcourir la source

feat: 课程批量调整

Joburgess il y a 4 ans
Parent
commit
467cf7d7a2

+ 5 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -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());