|
@@ -857,7 +857,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
}
|
|
|
Date courseCreateStartTime = vipGroupCourseAdjustInfo.getCourseCreateStartTime();
|
|
|
Date now = new Date();
|
|
|
- if(courseCreateStartTime.before(now)){
|
|
|
+ Date today = DateUtil.stringToDate(DateUtil.dateToString(now, DateUtil.ISO_EXPANDED_DATE_FORMAT),
|
|
|
+ DateUtil.ISO_EXPANDED_DATE_FORMAT);
|
|
|
+ if(courseCreateStartTime.before(today)){
|
|
|
throw new BizException("排课起始时间不能小于当前时间");
|
|
|
}
|
|
|
|
|
@@ -877,15 +879,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
//所有的课程
|
|
|
List<CourseSchedule> courseSchedules = courseScheduleDao.findByCourseScheduleIds(courseScheduleIds);
|
|
|
|
|
|
+ courseSchedules.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
|
|
|
+
|
|
|
if(courseScheduleIds.size()!=courseScheduleIds.size()){
|
|
|
throw new BizException("部分课程不存在");
|
|
|
}
|
|
|
|
|
|
- //课程对应的签到列表
|
|
|
- List<TeacherAttendance> teacherAttendances = teacherAttendanceDao.findTeacherIdByCourseSchedule(courseScheduleIds);
|
|
|
- Map<Long, List<TeacherAttendance>> teacherAttendanceCourseMap = teacherAttendances.stream()
|
|
|
- .collect(Collectors.groupingBy(TeacherAttendance::getCourseScheduleId));
|
|
|
-
|
|
|
Calendar calendar = Calendar.getInstance();
|
|
|
calendar.setTime(courseCreateStartTime);
|
|
|
List<Date> courseStartDates = new ArrayList<>();
|
|
@@ -929,13 +928,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
courseSchedules.get(courseStartDates.size()-1).setClassDate(courseStartTime);
|
|
|
courseSchedules.get(courseStartDates.size()-1).setStartClassTime(courseStartTime);
|
|
|
courseSchedules.get(courseStartDates.size()-1).setEndClassTime(courseEndTime);
|
|
|
- List<TeacherAttendance> tempTeacherAttendances=teacherAttendanceCourseMap.get(courseSchedules.get(courseStartDates.size()-1).getId());
|
|
|
- if(!CollectionUtils.isEmpty(tempTeacherAttendances)){
|
|
|
- TeacherAttendance teacherAttendance=tempTeacherAttendances.get(0);
|
|
|
- if(Objects.nonNull(teacherAttendance.getSignInTime())
|
|
|
- ||Objects.nonNull(teacherAttendance.getSignOutTime())){
|
|
|
- throw new BizException("选择的课程中存在已经签到的课程");
|
|
|
- }
|
|
|
+ int num=studentAttendanceDao.countStudentAttendenceNum(courseSchedules.get(courseStartDates.size()-1).getId().intValue());
|
|
|
+ if(num>0){
|
|
|
+ throw new BizException("选择的课程中存在已经点名的课程");
|
|
|
}
|
|
|
}
|
|
|
if(courseStartDates.size()==courseScheduleIds.size()){
|