推荐视频 优化

This commit is contained in:
wangw 2025-01-09 10:04:21 +08:00
parent 61a4415d5b
commit 47c0d9a93a
3 changed files with 23 additions and 27 deletions

View File

@ -77,8 +77,8 @@ public class AppCourseController extends AbstractController {
@GetMapping("/selectCourseDetailsList")
@ApiOperation("查询推荐视频")
public Result selectCourseDetailsList(Integer page, Integer limit, String token, String randomNum, Integer wxShow, Integer dyShow) {
return courseDetailsService.selectCourseDetailsList(page, limit, token, randomNum, wxShow, dyShow);
public Result selectCourseDetailsList(@RequestHeader("token") String token) {
return courseDetailsService.selectCourseDetailsList(token);
}
@Login

View File

@ -25,7 +25,7 @@ public interface CourseDetailsService extends IService<CourseDetails> {
Result selectCourseDetailsById(Long id,String token,String courseDetailsId);
Result selectCourseDetailsList(Integer page,Integer limit,String token,String randomNum,Integer wxShow,Integer dyShow);
Result selectCourseDetailsList(String token);
Result courseDetailsListExcelIn(MultipartFile file, Long courseId) throws IOException;

View File

@ -354,7 +354,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
}
@Override
public Result selectCourseDetailsList(Integer page, Integer limit, String token, String randomNum, Integer wxShow, Integer dyShow) {
public Result selectCourseDetailsList(String token) {
Long userId = null;
if (StringUtils.isNotEmpty(token)) {
Claims claims = jwtUtils.getClaimByToken(token);
@ -362,33 +362,29 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
userId = Long.parseLong(claims.getSubject());
}
}
if (!Validator.isNumber(randomNum)) {
throw new SqxException("随机码必须是数字");
}
Integer detailCount = baseMapper.selectCount(new LambdaQueryWrapper<CourseDetails>()
.eq(CourseDetails::getGood,1)
.eq(CourseDetails::getIsPrice,2));
if (detailCount != null) {
PageHelper.startPage(RandomUtil.randomInt(1, detailCount / 10), 10);
.eq(CourseDetails::getGood, 1)
.eq(CourseDetails::getIsPrice, 2));
if (detailCount == null) {
return Result.error("暂无推荐视频。");
}
PageHelper.startPage(RandomUtil.randomInt(1, detailCount / 10), 5);
List<CourseDetails> list = baseMapper.selectList(new LambdaQueryWrapper<CourseDetails>()
.eq(CourseDetails::getGood,1)
.eq(CourseDetails::getIsPrice,2));
.eq(CourseDetails::getGood, 1)
.eq(CourseDetails::getIsPrice, 2));
if (userId != null) {
Long finalUserId = userId;
list.stream().forEach(s -> {
s.setIsCollect(courseCollectDao.selectCount(new LambdaQueryWrapper<CourseCollect>()
.eq(CourseCollect::getUserId, finalUserId).eq(CourseCollect::getCourseId, s.getCourseId())
.eq(CourseCollect::getClassify, 1).last("limit 1")));
s.setIsGood(courseCollectDao.selectCount(new LambdaQueryWrapper<CourseCollect>()
.eq(CourseCollect::getUserId, finalUserId).eq(CourseCollect::getCourseId, s.getCourseId())
.eq(CourseCollect::getCourseDetailsId, s.getCourseDetailsId())
.eq(CourseCollect::getClassify, 2).last("limit 1")));
});
}
PageInfo<CourseDetails> pageInfo = new PageInfo<>(list);
// if (userId != null) {
// List<CourseDetails> records = pageInfo.getList();
// for (CourseDetails courseDetails : records) {
// courseDetails.setIsCollect(courseCollectDao.selectCount(new QueryWrapper<CourseCollect>()
// .eq("user_id", userId).eq("course_details_id", courseDetails.getCourseDetailsId()).eq("classify", 1)));
// courseDetails.setIsGood(courseCollectDao.selectCount(new QueryWrapper<CourseCollect>()
// .eq("user_id", userId).eq("course_details_id", courseDetails.getCourseDetailsId()).eq("classify", 2)));
// courseDetails.setCourse(courseDao.selectById(courseDetails.getCourseId()));
// courseDetails.setTitle(courseDetails.getCourse().getTitle());
// courseDetails.setCourseDetailsCount(baseMapper.selectCount(new QueryWrapper<CourseDetails>().eq("course_id", courseDetails.getCourseId())));
// }
// }
return Result.success().put("data", PageUtils.page(pageInfo));
}