Browse Source

乐教通

zouxuan 1 year ago
parent
commit
20ed1c41e9

+ 2 - 2
mec-application/src/main/java/com/ym/mec/teacher/controller/TeacherCourseScheduleController.java

@@ -98,8 +98,8 @@ public class TeacherCourseScheduleController extends BaseController {
 
     @ApiOperation(value = "获取最近的一节课")
     @PostMapping("/getRecentCourseSchedule")
-    public HttpResponseResult<CourseScheduleDto> getRecentCourseSchedule(){
-        return succeed(scheduleService.getRecentCourseSchedule(sysUserService.getUserId()));
+    public HttpResponseResult<CourseScheduleDto> getRecentCourseSchedule(Long courseId){
+        return succeed(scheduleService.getRecentCourseSchedule(sysUserService.getUserId(),courseId));
     }
 
     @ApiOperation(value = "根据月份获取该月历史有课的日期")

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -2093,5 +2093,5 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     void configCourseware(@Param("courseId") Long courseId, @Param("coursewareDetailId") String coursewareDetailId);
 
     //获取最近的一节线下课
-    CourseScheduleDto getRecentCourseSchedule(@Param("userId") Integer userId);
+    CourseScheduleDto getRecentCourseSchedule(@Param("userId") Integer userId, @Param("courseId") Long courseId);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java

@@ -171,7 +171,7 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	/**
 	 * 获取最近的一节课
 	 */
-	CourseScheduleDto getRecentCourseSchedule(Integer userId);
+	CourseScheduleDto getRecentCourseSchedule(Integer userId,Long courseId);
 
 	/**
 	 * @describe 根据日期获取

+ 9 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1346,8 +1346,8 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
     }
 
 	@Override
-	public CourseScheduleDto getRecentCourseSchedule(Integer userId) {
-		CourseScheduleDto courseSchedule = courseScheduleDao.getRecentCourseSchedule(userId);
+	public CourseScheduleDto getRecentCourseSchedule(Integer userId,Long courseId) {
+		CourseScheduleDto courseSchedule = courseScheduleDao.getRecentCourseSchedule(userId,courseId);
 		if(Objects.nonNull(courseSchedule)){
 			if (Objects.nonNull(courseSchedule.getClassGroupId())) {
 				List<StudentNameAndPhoneDto> courseStudentNameAndPhone = classGroupStudentMapperDao.findCourseStudentNameAndPhone(courseSchedule.getId().intValue());
@@ -1357,6 +1357,13 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 //					courseSchedule.setStudents(courseStudentNameAndPhone);
 				}
 			}
+			Map<Integer, Long> studentNumCourseMap = MapUtil.convertIntegerMap(studentAttendanceDao.countStudentAttendancesByCourses(Collections.singletonList(courseSchedule.getId())));
+			Long studentNum = studentNumCourseMap.get(courseSchedule.getId());
+			if (Objects.nonNull(studentNum)) {
+				courseSchedule.setIsCallNames(studentNum > 0 ? YesOrNoEnum.YES : YesOrNoEnum.NO);
+			} else {
+				courseSchedule.setIsCallNames(YesOrNoEnum.NO);
+			}
 		}
 		return courseSchedule;
 	}

+ 5 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -779,7 +779,11 @@
         WHERE cs.del_flag_ = 0 AND cs.is_lock_ = 0 AND cs.merge_flag_ = 0
         AND cs.class_date_ >= DATE_FORMAT(NOW(),'%Y%m%d')
         AND cs.status_ IN ('NOT_START','UNDERWAY')
-        AND csts.user_id_ = #{userId} AND cs.pre_course_flag_ != 1 ORDER BY cs.class_date_,cs.start_class_time_ LIMIT 1
+        AND csts.user_id_ = #{userId} AND cs.pre_course_flag_ != 1
+        <if test="courseId != null">
+            AND cs.id_ = #{courseId}
+        </if>
+        ORDER BY cs.class_date_,cs.start_class_time_ LIMIT 1
     </select>
 
     <select id="getTeacherCourseSchedulesWithDate" resultMap="courseScheduleDto">