|  | @@ -168,12 +168,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Override
 | 
	
		
			
				|  |  | -	public List<Date> getCourseScheduleDateByTeacher(Date month) {
 | 
	
		
			
				|  |  | +	public List<Date> getCourseScheduleDateByTeacher(Date month,String type) {
 | 
	
		
			
				|  |  |  		SysUser user = sysUserFeignService.queryUserInfo();
 | 
	
		
			
				|  |  |  		if(null==user){
 | 
	
		
			
				|  |  |  			throw new BizException("获取用户信息失败");
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | -		return courseScheduleDao.getTeacherCourseScheduleDate(user.getId().longValue(),month);
 | 
	
		
			
				|  |  | +		return courseScheduleDao.getTeacherCourseScheduleDate(user.getId().longValue(),month,type);
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Override
 | 
	
	
		
			
				|  | @@ -233,11 +233,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Override
 | 
	
		
			
				|  |  | -	public List<CourseScheduleDto> getTeacherCourseSchedulesWithDate(Integer userId,Date classDate) {
 | 
	
		
			
				|  |  | +	public List<CourseScheduleDto> getTeacherCourseSchedulesWithDate(Integer userId,Date classDate,String type) {
 | 
	
		
			
				|  |  |  		if(Objects.isNull(classDate)){
 | 
	
		
			
				|  |  |  			throw new BizException("请选择上课日期!");
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | -		List<CourseScheduleDto> teacherCourseSchedulesWithDate = courseScheduleDao.getTeacherCourseSchedulesWithDate(classDate, userId.longValue());
 | 
	
		
			
				|  |  | +		List<CourseScheduleDto> teacherCourseSchedulesWithDate = courseScheduleDao.getTeacherCourseSchedulesWithDate(classDate, userId.longValue(),type);
 | 
	
		
			
				|  |  |  		teacherCourseSchedulesWithDate.forEach(courseScheduleDto -> {
 | 
	
		
			
				|  |  |  			if(Objects.nonNull(courseScheduleDto.getClassGroupId())){
 | 
	
		
			
				|  |  |  				String[] studentNums = classGroupStudentMapperDao.findStudentNumByClassGroupId(courseScheduleDto.getClassGroupId().longValue());
 | 
	
	
		
			
				|  | @@ -331,6 +331,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  			throw new BizException("课程信息错误");
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +		Date now=new Date();
 | 
	
		
			
				|  |  | +		//明天日期
 | 
	
		
			
				|  |  | +		Date tommorow = DateUtil.addDays1(now, 1);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  		//需要生成课程课酬的课程计划
 | 
	
		
			
				|  |  |  		List<CourseSchedule> needCreateCourseScheduleTeacherSalaryCourse=new ArrayList<>();
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -340,6 +344,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		Map<Long, CourseSchedule> oldCourseSchedules = oldCourseScheduleList.stream().collect(Collectors.toMap(CourseSchedule::getId,courseSchedule -> courseSchedule));
 | 
	
		
			
				|  |  |  		newCourseSchedules.forEach(newCourseSchedule -> {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +//			if(newCourseSchedule.getStartClassTime())
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  			CourseSchedule oldCourseSchedule = oldCourseSchedules.get(newCourseSchedule.getId());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  			ArrayList<Date> dates = new ArrayList<>();
 | 
	
	
		
			
				|  | @@ -350,7 +357,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  				courseScheduleDao.update(newCourseSchedule);
 | 
	
		
			
				|  |  |  			}else{
 | 
	
		
			
				|  |  |  				coursesByDates.forEach(courseSchedule -> {
 | 
	
		
			
				|  |  | -					if(courseSchedule.getTeacherId().equals(newCourseSchedule.getTeacherId())){
 | 
	
		
			
				|  |  | +					if(courseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId())){
 | 
	
		
			
				|  |  |  						//存在时间重叠,需要前端重新调整
 | 
	
		
			
				|  |  |  						throw new BizException("所选教师在当天课程安排上存在重叠!");
 | 
	
		
			
				|  |  |  					}
 | 
	
	
		
			
				|  | @@ -367,7 +374,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  			List<Integer> beReplaceTeacherIds=new ArrayList<>();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  			if(oldCourseSchedule.getType()== CourseSchedule.CourseScheduleType.VIP){
 | 
	
		
			
				|  |  | -				if(Objects.isNull(oldCourseSchedule.getActualTeacherId())||!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId())){
 | 
	
		
			
				|  |  | +				if(Objects.isNull(oldCourseSchedule.getActualTeacherId())
 | 
	
		
			
				|  |  | +						||(!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId())
 | 
	
		
			
				|  |  | +						&&Objects.nonNull(newCourseSchedule.getActualTeacherId()))){
 | 
	
		
			
				|  |  |  					VipGroup byCourseSchedule = vipGroupDao.findByCourseSchedule(newCourseSchedule.getId().intValue());
 | 
	
		
			
				|  |  |  					TeacherDefaultVipGroupSalary byTeacherAndCategory = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(newCourseSchedule.getActualTeacherId(), byCourseSchedule.getVipGroupCategoryId());
 | 
	
		
			
				|  |  |  					List<CourseSchedule> courseSchedules=new ArrayList<>();
 | 
	
	
		
			
				|  | @@ -381,7 +390,8 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  					}
 | 
	
		
			
				|  |  |  				}
 | 
	
		
			
				|  |  |  			}else{
 | 
	
		
			
				|  |  | -				if(Objects.isNull(oldCourseSchedule.getActualTeacherId())||!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId())){
 | 
	
		
			
				|  |  | +				if(Objects.isNull(oldCourseSchedule.getActualTeacherId())
 | 
	
		
			
				|  |  | +						||!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId())){
 | 
	
		
			
				|  |  |  					if(Objects.nonNull(oldCourseSchedule.getActualTeacherId())){
 | 
	
		
			
				|  |  |  						beReplaceTeacherIds.add(oldCourseSchedule.getActualTeacherId().intValue());
 | 
	
		
			
				|  |  |  					}
 | 
	
	
		
			
				|  | @@ -426,7 +436,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  		});
 | 
	
		
			
				|  |  |  		//生成修改后的教师课酬
 | 
	
		
			
				|  |  | -		classGroupTeacherMapperService.createCourseScheduleTeacherSalary(needCreateCourseScheduleTeacherSalaryCourse);
 | 
	
		
			
				|  |  | +		if(!CollectionUtils.isEmpty(needCreateCourseScheduleTeacherSalaryCourse)){
 | 
	
		
			
				|  |  | +			classGroupTeacherMapperService.createCourseScheduleTeacherSalary(needCreateCourseScheduleTeacherSalaryCourse);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Transactional(rollbackFor = Exception.class)
 |