|  | @@ -2125,6 +2125,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          TeacherFreeTime teacherFreeTime = teacherFreeTimeDao.findTeacherFreeTime(teacherId);
 | 
	
		
			
				|  |  | +        JSONObject teacherFreeTimes=new JSONObject();
 | 
	
		
			
				|  |  |          Integer maxTeacherCourses = null;
 | 
	
		
			
				|  |  |          int holiday = 0;
 | 
	
		
			
				|  |  |          if (Objects.nonNull(teacherFreeTime)) {
 | 
	
	
		
			
				|  | @@ -2134,6 +2135,30 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 | 
	
		
			
				|  |  |              if (Objects.nonNull(teacherFreeTime.getHoliday())) {
 | 
	
		
			
				|  |  |                  holiday = teacherFreeTime.getHoliday();
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +            if (Objects.nonNull(teacherFreeTime.getHoliday())) {
 | 
	
		
			
				|  |  | +                holiday = DateUtil.normalWeekNumCalendarWeekNumMap.get(teacherFreeTime.getHoliday());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.MONDAY), JSON.parseArray(teacherFreeTime.getMonday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.TUESDAY), JSON.parseArray(teacherFreeTime.getTuesday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.WEDNESDAY), JSON.parseArray(teacherFreeTime.getWednesday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.THURSDAY), JSON.parseArray(teacherFreeTime.getThursday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.FRIDAY), JSON.parseArray(teacherFreeTime.getFriday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.SATURDAY), JSON.parseArray(teacherFreeTime.getSaturday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherFreeTime.getMonday())){
 | 
	
		
			
				|  |  | +                teacherFreeTimes.put(String.valueOf(Calendar.SUNDAY), JSON.parseArray(teacherFreeTime.getSunday()));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          DateTimeFormatter ddtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 | 
	
	
		
			
				|  | @@ -2214,6 +2239,33 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +        for (Integer weekNum : weekNumApplyTimesMap.keySet()) {
 | 
	
		
			
				|  |  | +            JSONArray teacherWeekDayFreeTimes = teacherFreeTimes.getJSONArray(String.valueOf(weekNum));
 | 
	
		
			
				|  |  | +            if(Objects.nonNull(teacherWeekDayFreeTimes)){
 | 
	
		
			
				|  |  | +                List<String> applyTimeStrs = weekNumApplyTimesMap.get(weekNum);
 | 
	
		
			
				|  |  | +                Iterator<String> iterator = applyTimeStrs.iterator();
 | 
	
		
			
				|  |  | +                while (iterator.hasNext()) {
 | 
	
		
			
				|  |  | +                    LocalTime enableApplyStartTime=LocalTime.parse(iterator.next(), dtf);
 | 
	
		
			
				|  |  | +                    LocalTime enableApplyEndTime=enableApplyStartTime.plusMinutes(practiceCourseMinutes);
 | 
	
		
			
				|  |  | +                    boolean isInclude=false;
 | 
	
		
			
				|  |  | +                    for (Object teacherWeekDayFreeTimeObject : teacherWeekDayFreeTimes) {
 | 
	
		
			
				|  |  | +                        JSONObject teacherWeekDayFreeTime=JSONObject.parseObject(teacherWeekDayFreeTimeObject.toString());
 | 
	
		
			
				|  |  | +                        LocalTime teacherFreeStartTime=LocalTime.parse(teacherWeekDayFreeTime.getString("startTime"),DateUtil.timeFormatter);
 | 
	
		
			
				|  |  | +                        LocalTime teacherFreeEndTime=LocalTime.parse(teacherWeekDayFreeTime.getString("endTime"),DateUtil.timeFormatter);
 | 
	
		
			
				|  |  | +                        if(enableApplyStartTime.isBefore(teacherFreeEndTime)
 | 
	
		
			
				|  |  | +                                &&enableApplyEndTime.isAfter(teacherFreeStartTime)){
 | 
	
		
			
				|  |  | +                            isInclude=true;
 | 
	
		
			
				|  |  | +                            break;
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                    if(!isInclude){
 | 
	
		
			
				|  |  | +                        iterator.remove();
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                weekNumApplyTimesMap.put(weekNum,applyTimeStrs);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          if (CollectionUtils.isEmpty(allTeacherCourses)) {
 | 
	
		
			
				|  |  |              result.put("teacherFreeDays", weekNumApplyTimesMap);
 | 
	
		
			
				|  |  |              return result;
 |