|  | @@ -172,11 +172,17 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		List<CourseSchedule> courseScheduleList = courseScheduleDao.findByCourseScheduleIds(courseScheduleIds);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 | 
	
		
			
				|  |  | +		Date date = new Date();
 | 
	
		
			
				|  |  |  		if (courseScheduleList != null) {
 | 
	
		
			
				|  |  |  			for (CourseSchedule cs : courseScheduleList) {
 | 
	
		
			
				|  |  |  				if (cs.getStatus() == CourseStatusEnum.OVER) {
 | 
	
		
			
				|  |  |  					throw new BizException("删除失败,已结束的课程不能删除");
 | 
	
		
			
				|  |  |  				}
 | 
	
		
			
				|  |  | +				String endDateStr = DateUtil.format(cs.getClassDate(), "yyyy-MM-dd") + " " + DateUtil.format(cs.getEndClassTime(), "HH:mm");
 | 
	
		
			
				|  |  | +				if (DateUtil.stringToDate(endDateStr, sdf).after(date)) {
 | 
	
		
			
				|  |  | +					throw new BizException("删除失败,已结束的课程不能删除");
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  		courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
 | 
	
	
		
			
				|  | @@ -348,6 +354,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  		
 | 
	
		
			
				|  |  |  		Map<Integer, List<CourseTimeDto>> dayOfWeekMap = new HashMap<Integer, List<CourseTimeDto>>();
 | 
	
		
			
				|  |  |  		for(CourseTimeDto dto : teachingArrangementList){
 | 
	
		
			
				|  |  | +			//检查是否有开始时间
 | 
	
		
			
				|  |  | +			if (StringUtils.isBlank(dto.getStartClassTime())) {
 | 
	
		
			
				|  |  | +				throw new BizException("必须设置排课开始时间");
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  |  			List<CourseTimeDto> list = dayOfWeekMap.get(dto.getDayOfWeek());
 | 
	
		
			
				|  |  |  			if(list == null){
 | 
	
		
			
				|  |  |  				list = new ArrayList<CourseTimeDto>();
 | 
	
	
		
			
				|  | @@ -406,12 +416,20 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  					Date courseStartTime = DateUtil.stringToDate(dateYmdStr, "yyyy-MM-dd HH:mm");
 | 
	
		
			
				|  |  |  					courseSchedule.setStartClassTime(courseStartTime);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -					dateYmdStr = dateYmdStr + " " + courseTimeDto.getEndClassTime();
 | 
	
		
			
				|  |  | -					Date courseEndTime = DateUtil.stringToDate(dateYmdStr, "yyyy-MM-dd HH:mm");
 | 
	
		
			
				|  |  | -					courseSchedule.setEndClassTime(courseEndTime);
 | 
	
		
			
				|  |  | +					if (StringUtils.isNotBlank(courseTimeDto.getEndClassTime())) {
 | 
	
		
			
				|  |  | +						dateYmdStr = dateYmdStr + " " + courseTimeDto.getEndClassTime();
 | 
	
		
			
				|  |  | +						Date courseEndTime = DateUtil.stringToDate(dateYmdStr, "yyyy-MM-dd HH:mm");
 | 
	
		
			
				|  |  | +						courseSchedule.setEndClassTime(courseEndTime);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -					if (courseEndTime.before(courseStartTime)) {
 | 
	
		
			
				|  |  | -						throw new BizException("课时上课时间安排错误");
 | 
	
		
			
				|  |  | +						if (courseEndTime.before(courseStartTime)) {
 | 
	
		
			
				|  |  | +							throw new BizException("课时上课时间安排错误");
 | 
	
		
			
				|  |  | +						}
 | 
	
		
			
				|  |  | +					} else {
 | 
	
		
			
				|  |  | +						if (type == CourseScheduleType.PRACTICE) {
 | 
	
		
			
				|  |  | +							courseSchedule.setEndClassTime(DateUtil.addMinutes(courseStartTime, 30));
 | 
	
		
			
				|  |  | +						} else {
 | 
	
		
			
				|  |  | +							throw new BizException("必须设置上课结束时间");
 | 
	
		
			
				|  |  | +						}
 | 
	
		
			
				|  |  |  					}
 | 
	
		
			
				|  |  |  					
 | 
	
		
			
				|  |  |  					courseSchedule.setTeacherId(teacherId);
 | 
	
	
		
			
				|  | @@ -599,7 +617,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  		Integer classGroupId = classGroupList.get(0);
 | 
	
		
			
				|  |  |  		String musicGroupId = courseScheduleList.get(0).getMusicGroupId();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -		// 批量上课
 | 
	
		
			
				|  |  | +		// 批量删课
 | 
	
		
			
				|  |  |  		batchDeleteCourseSchedules(batchInsertCoursesDto.getCourseScheduleIdList());
 | 
	
		
			
				|  |  |  		
 | 
	
		
			
				|  |  |  		Date endDate = null;
 |