|  | @@ -415,6 +415,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 | 
	
		
			
				|  |  |                      .collect(Collectors.toList());
 | 
	
		
			
				|  |  |              //根据教学点将当前老师的课程分组
 | 
	
		
			
				|  |  |              Map<Integer, List<CourseSchedule>> schoolCourseSchedules = currentTeacherCourseSchedules.stream()
 | 
	
		
			
				|  |  | +                    .filter(courseSchedule -> Objects.nonNull(courseSchedule.getSchoolId()))
 | 
	
		
			
				|  |  |                      .collect(Collectors.groupingBy(CourseSchedule::getSchoolId));
 | 
	
		
			
				|  |  |              Map<Integer, Map<Date,Integer>> schoolClassMinutesMap = new HashMap<>();
 | 
	
		
			
				|  |  |              for (Integer schoolId : schoolCourseSchedules.keySet()) {
 | 
	
	
		
			
				|  | @@ -453,7 +454,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 | 
	
		
			
				|  |  |              CourseSchedule courseSchedule = courseScheduleIdMap.get(courseScheduleTeacherSalary.getCourseScheduleId());
 | 
	
		
			
				|  |  |              Map<Integer, Map<Date,Integer>> schoolClassMinutesMap = teacherClassMinutesMap.get(courseScheduleTeacherSalary.getUserId());
 | 
	
		
			
				|  |  |              Map<Date,Integer> classDateMinutes = schoolClassMinutesMap.get(courseSchedule.getSchoolId());
 | 
	
		
			
				|  |  | -            Integer schoolClassMinutes = classDateMinutes.get(courseSchedule.getClassDate());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              //结算方式
 | 
	
		
			
				|  |  |              String settlementType = musicGroupSettlementsMap.get(courseScheduleTeacherSalary.getCourseScheduleId());
 | 
	
		
			
				|  |  |              if(StringUtils.isEmpty(settlementType)){
 | 
	
	
		
			
				|  | @@ -469,9 +470,10 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 | 
	
		
			
				|  |  |              //当前课程的时长
 | 
	
		
			
				|  |  |              int duration = DateUtil.minutesBetween(courseSchedule.getStartClassTime(), courseSchedule.getEndClassTime());
 | 
	
		
			
				|  |  |              //如果是单技课或者合奏课并且结算方式为3.0
 | 
	
		
			
				|  |  | -            if (settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY.getCode())
 | 
	
		
			
				|  |  | +            if (Objects.nonNull(classDateMinutes)&&settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY.getCode())
 | 
	
		
			
				|  |  |                      &&(courseSchedule.getType().equals(CourseSchedule.CourseScheduleType.SINGLE)
 | 
	
		
			
				|  |  |                      || courseSchedule.getType().equals(CourseSchedule.CourseScheduleType.MIX))) {
 | 
	
		
			
				|  |  | +                Integer schoolClassMinutes = classDateMinutes.get(courseSchedule.getClassDate());
 | 
	
		
			
				|  |  |                  if (schoolClassMinutes >= settlementClassMinutes && duration < singleClassTime) {
 | 
	
		
			
				|  |  |                      duration = singleClassTime;
 | 
	
		
			
				|  |  |                      durationIsChange = true;
 |