Browse Source

fix(app): 修复首页课程展示逻辑

- 为精品课程和免费课程查询添加结束时间过滤条件,确保只显示未结束的课程
- 为教练课程查询添加结束时间过滤条件,同样只显示未结束的课程
SheepHy 1 week ago
parent
commit
4d2d1df6d5

+ 3 - 3
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/service/impl/AppHomeServiceImpl.java

@@ -61,11 +61,11 @@ public class AppHomeServiceImpl implements IAppHomeService {
 
         // 精品课程(最多3个)
         List<AppCourses> appCoursesFine = appCoursesMapper.selectList(Wrappers.<AppCourses>lambdaQuery()
-                .eq(AppCourses::getPriceType, 0).eq(AppCourses::getRackingStatus,0).last("LIMIT 3"));
+                .eq(AppCourses::getPriceType, 0).eq(AppCourses::getRackingStatus,0).gt(AppCourses::getEndTime, new Date()).last("LIMIT 3"));
 
         // 免费课程(最多3个)
         List<AppCourses> appCoursesFree = appCoursesMapper.selectList(Wrappers.<AppCourses>lambdaQuery()
-                .eq(AppCourses::getPriceType, 1).eq(AppCourses::getRackingStatus,0).last("LIMIT 3"));
+                .eq(AppCourses::getPriceType, 1).eq(AppCourses::getRackingStatus,0).gt(AppCourses::getEndTime, new Date()).last("LIMIT 3"));
 
         // 合并课程信息
         List<CourseVO> courseVO = new ArrayList<>();
@@ -112,7 +112,7 @@ public class AppHomeServiceImpl implements IAppHomeService {
             }
             // 获取该教练的课程(最多取2个)
             List<AppCourses> courses = appCoursesMapper.selectList(
-                    Wrappers.<AppCourses>lambdaQuery().eq(AppCourses::getUserId, userId).eq(AppCourses::getRackingStatus,0).last("LIMIT 2"));
+                    Wrappers.<AppCourses>lambdaQuery().eq(AppCourses::getUserId, userId).eq(AppCourses::getRackingStatus,0).gt(AppCourses::getEndTime, new Date()).last("LIMIT 2"));
             List<InstructorVO.CourseInfoVO> courseInfoVOS = courses.stream()
                     .map(course -> {
                         InstructorVO.CourseInfoVO vo = new InstructorVO.CourseInfoVO();