|  | @@ -242,7 +242,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
 | 
	
		
			
				|  |  |          //根据firstDay计算出该月的最后一天
 | 
	
		
			
				|  |  |          LocalDate lastDay = firstDay.with(TemporalAdjusters.lastDayOfMonth());
 | 
	
		
			
				|  |  |          //获取老师的课程  key:日期-年月日 value:课程时间-开始时间,结束时间
 | 
	
		
			
				|  |  | -        Map<String, List<CourseTimeEntity>> nowCourseMap = getTeacherCourseTime(teacherId, firstDay.toString(), lastDay.toString());
 | 
	
		
			
				|  |  | +        Map<String, List<CourseTimeEntity>> nowCourseMap = getCourseListMap(getTeacherCourseTime(teacherId, firstDay.toString(), lastDay.toString()));
 | 
	
		
			
				|  |  |          //生成日历数据
 | 
	
		
			
				|  |  |          List<CourseCalendarEntity> courseCalendarEntities = generateCourseData(firstDay, lastDay, singleCourseMinutes, freeCourseMinutes);
 | 
	
		
			
				|  |  |          //对比课程数据,筛选出空余的课程时间
 | 
	
	
		
			
				|  | @@ -310,14 +310,16 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
 | 
	
		
			
				|  |  |       * @param endDate   结束时间
 | 
	
		
			
				|  |  |       * @return key:日期-年月日 value:课程时间-开始时间,结束时间
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    private Map<String, List<CourseTimeEntity>> getTeacherCourseTime(Long teacherId, String startDate, String endDate) {
 | 
	
		
			
				|  |  | +    private List<CourseSchedule> getTeacherCourseTime(Long teacherId, String startDate, String endDate) {
 | 
	
		
			
				|  |  | +        //未开始、进行中的课程
 | 
	
		
			
				|  |  | +        List<String> statusList = Lists.newArrayList(CourseScheduleEnum.NOT_START.getCode(), CourseScheduleEnum.ING.getCode());
 | 
	
		
			
				|  |  |          //查询该老师指定时间段的课程
 | 
	
		
			
				|  |  | -        List<CourseSchedule> courseList = this.list(Wrappers.<CourseSchedule>lambdaQuery()
 | 
	
		
			
				|  |  | +        return this.list(Wrappers.<CourseSchedule>lambdaQuery()
 | 
	
		
			
				|  |  |                  .eq(CourseSchedule::getTeacherId, teacherId)
 | 
	
		
			
				|  |  | +                .in(CourseSchedule::getStatus, statusList)
 | 
	
		
			
				|  |  |                  .ge(CourseSchedule::getClassDate, startDate)
 | 
	
		
			
				|  |  |                  .le(CourseSchedule::getClassDate, endDate)
 | 
	
		
			
				|  |  |          );
 | 
	
		
			
				|  |  | -        return getCourseListMap(courseList);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
	
		
			
				|  | @@ -533,24 +535,17 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
 | 
	
		
			
				|  |  |       * @param studentId 学员id
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      private Map<String, List<CourseTimeEntity>> getAllPracticeCourseTime(Long teacherId, Long studentId, String startDate, String endDate) {
 | 
	
		
			
				|  |  | -        //未开始、进行中的课程
 | 
	
		
			
				|  |  | -        List<String> statusList = Lists.newArrayList(CourseScheduleEnum.NOT_START.getCode(), CourseScheduleEnum.ING.getCode());
 | 
	
		
			
				|  |  | -        //查询该老师指定时间段的课程
 | 
	
		
			
				|  |  | -        List<CourseSchedule> courseList = this.list(Wrappers.<CourseSchedule>lambdaQuery()
 | 
	
		
			
				|  |  | -                .eq(CourseSchedule::getTeacherId, teacherId)
 | 
	
		
			
				|  |  | -                .in(CourseSchedule::getStatus, statusList)
 | 
	
		
			
				|  |  | -                .ge(CourseSchedule::getClassDate, startDate)
 | 
	
		
			
				|  |  | -                .le(CourseSchedule::getClassDate, endDate)
 | 
	
		
			
				|  |  | -        );
 | 
	
		
			
				|  |  | +        //获取老师的课程时间数据
 | 
	
		
			
				|  |  | +        List<CourseSchedule> courseList = getTeacherCourseTime(teacherId, startDate, endDate);
 | 
	
		
			
				|  |  |          if (CollectionUtils.isEmpty(courseList)) {
 | 
	
		
			
				|  |  |              courseList = new ArrayList<>();
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        //查询学生的课程
 | 
	
		
			
				|  |  | +        //查询学生的课程;
 | 
	
		
			
				|  |  |          Map<String, Object> param = new HashMap<>();
 | 
	
		
			
				|  |  |          param.put("studentId", studentId);
 | 
	
		
			
				|  |  |          param.put("startClassDate", startDate);
 | 
	
		
			
				|  |  |          param.put("endClassDate", endDate);
 | 
	
		
			
				|  |  | -        param.put("statusList", statusList);
 | 
	
		
			
				|  |  | +        param.put("statusList", Lists.newArrayList(CourseScheduleEnum.NOT_START.getCode(), CourseScheduleEnum.ING.getCode()));
 | 
	
		
			
				|  |  |          List<CourseSchedule> studentCourse = baseMapper.queryStudentCourse(param);
 | 
	
		
			
				|  |  |          //将数据合并
 | 
	
		
			
				|  |  |          if (CollectionUtils.isNotEmpty(studentCourse)) {
 | 
	
	
		
			
				|  | @@ -1116,15 +1111,15 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
 | 
	
		
			
				|  |  |                  Map<Long, String> teacherSms = new HashMap<>();
 | 
	
		
			
				|  |  |                  teacherSms.put(sysUser.getId(), sysUser.getPhone());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                Integer liveCount=0;
 | 
	
		
			
				|  |  | -                Integer practiceCount=0;
 | 
	
		
			
				|  |  | -                List<CountVo> typeCount=baseMapper.selectTypeCount(sysUser.getId(),tomorrow);
 | 
	
		
			
				|  |  | +                Integer liveCount = 0;
 | 
	
		
			
				|  |  | +                Integer practiceCount = 0;
 | 
	
		
			
				|  |  | +                List<CountVo> typeCount = baseMapper.selectTypeCount(sysUser.getId(), tomorrow);
 | 
	
		
			
				|  |  |                  for (CountVo countVo : typeCount) {
 | 
	
		
			
				|  |  |                      if (countVo.getType().equals(CourseScheduleEnum.LIVE.getCode())) {
 | 
	
		
			
				|  |  | -                        liveCount=countVo.getCount();
 | 
	
		
			
				|  |  | +                        liveCount = countVo.getCount();
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      if (countVo.getType().equals(CourseScheduleEnum.PRACTICE.getCode())) {
 | 
	
		
			
				|  |  | -                        practiceCount=countVo.getCount();
 | 
	
		
			
				|  |  | +                        practiceCount = countVo.getCount();
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1132,14 +1127,14 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
 | 
	
		
			
				|  |  |                  String teacherUrl = sysMessageService.selectConfigUrl(MessageTypeEnum.TOMORROW_COURSE_REMINDER.getCode());
 | 
	
		
			
				|  |  |                  sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TOMORROW_COURSE_REMINDER,
 | 
	
		
			
				|  |  |                          teacherReceivers, null, 0, null, ClientEnum.TEACHER.getCode(),
 | 
	
		
			
				|  |  | -                        practiceCount.toString(),liveCount.toString(),teacherUrl);
 | 
	
		
			
				|  |  | -                log.info("send success {}",MessageTypeEnum.TOMORROW_COURSE_REMINDER);
 | 
	
		
			
				|  |  | +                        practiceCount.toString(), liveCount.toString(), teacherUrl);
 | 
	
		
			
				|  |  | +                log.info("send success {}", MessageTypeEnum.TOMORROW_COURSE_REMINDER);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  //老师端-明日课程提醒(短信)
 | 
	
		
			
				|  |  |                  sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.SMS_TOMORROW_COURSE_REMINDER,
 | 
	
		
			
				|  |  |                          teacherSms, null, 0, null, null,
 | 
	
		
			
				|  |  |                          practiceCount, liveCount);
 | 
	
		
			
				|  |  | -                log.info("send success {}",MessageTypeEnum.SMS_STUDENT_BUY_PRACTICE);
 | 
	
		
			
				|  |  | +                log.info("send success {}", MessageTypeEnum.SMS_STUDENT_BUY_PRACTICE);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 |