推荐视频 优化
This commit is contained in:
parent
61a4415d5b
commit
47c0d9a93a
|
|
@ -77,8 +77,8 @@ public class AppCourseController extends AbstractController {
|
||||||
|
|
||||||
@GetMapping("/selectCourseDetailsList")
|
@GetMapping("/selectCourseDetailsList")
|
||||||
@ApiOperation("查询推荐视频")
|
@ApiOperation("查询推荐视频")
|
||||||
public Result selectCourseDetailsList(Integer page, Integer limit, String token, String randomNum, Integer wxShow, Integer dyShow) {
|
public Result selectCourseDetailsList(@RequestHeader("token") String token) {
|
||||||
return courseDetailsService.selectCourseDetailsList(page, limit, token, randomNum, wxShow, dyShow);
|
return courseDetailsService.selectCourseDetailsList(token);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Login
|
@Login
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ public interface CourseDetailsService extends IService<CourseDetails> {
|
||||||
|
|
||||||
Result selectCourseDetailsById(Long id,String token,String courseDetailsId);
|
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;
|
Result courseDetailsListExcelIn(MultipartFile file, Long courseId) throws IOException;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -354,7 +354,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result selectCourseDetailsList(Integer page, Integer limit, String token, String randomNum, Integer wxShow, Integer dyShow) {
|
public Result selectCourseDetailsList(String token) {
|
||||||
Long userId = null;
|
Long userId = null;
|
||||||
if (StringUtils.isNotEmpty(token)) {
|
if (StringUtils.isNotEmpty(token)) {
|
||||||
Claims claims = jwtUtils.getClaimByToken(token);
|
Claims claims = jwtUtils.getClaimByToken(token);
|
||||||
|
|
@ -362,33 +362,29 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
|
||||||
userId = Long.parseLong(claims.getSubject());
|
userId = Long.parseLong(claims.getSubject());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!Validator.isNumber(randomNum)) {
|
|
||||||
throw new SqxException("随机码必须是数字");
|
|
||||||
}
|
|
||||||
Integer detailCount = baseMapper.selectCount(new LambdaQueryWrapper<CourseDetails>()
|
Integer detailCount = baseMapper.selectCount(new LambdaQueryWrapper<CourseDetails>()
|
||||||
.eq(CourseDetails::getGood,1)
|
.eq(CourseDetails::getGood, 1)
|
||||||
.eq(CourseDetails::getIsPrice,2));
|
.eq(CourseDetails::getIsPrice, 2));
|
||||||
if (detailCount != null) {
|
if (detailCount == null) {
|
||||||
PageHelper.startPage(RandomUtil.randomInt(1, detailCount / 10), 10);
|
return Result.error("暂无推荐视频。");
|
||||||
}
|
}
|
||||||
|
PageHelper.startPage(RandomUtil.randomInt(1, detailCount / 10), 5);
|
||||||
List<CourseDetails> list = baseMapper.selectList(new LambdaQueryWrapper<CourseDetails>()
|
List<CourseDetails> list = baseMapper.selectList(new LambdaQueryWrapper<CourseDetails>()
|
||||||
.eq(CourseDetails::getGood,1)
|
.eq(CourseDetails::getGood, 1)
|
||||||
.eq(CourseDetails::getIsPrice,2));
|
.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);
|
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));
|
return Result.success().put("data", PageUtils.page(pageInfo));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue