查询剧集 部分查询优化

This commit is contained in:
wangw 2025-01-08 11:29:49 +08:00
parent 39bf999b71
commit 06618d798f
1 changed files with 14 additions and 8 deletions

View File

@ -8,6 +8,7 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -149,7 +150,10 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
int courseViewCount = redisServiceImpl.getCourseWeekViewCount(course.getCourseId());
course.setWeekView(courseViewCount);
}
courseDao.updateById(course);
courseDao.update(null, new LambdaUpdateWrapper<Course>()
.eq(Course::getCourseId, course.getCourseId())
.set(Course::getViewCounts, course.getViewCounts())
.set(Course::getWeekView,course.getWeekView()));
}
@Override
@ -157,6 +161,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
try{
//观看记录
CourseCollect courseCollect = courseCollectDao.selectOne(new QueryWrapper<CourseCollect>()
.select("course_id", "course_details_id")
.eq("course_id", courseId).eq("user_id", userId)
.eq("classify", 3).last("limit 1"));
//是否追剧
@ -177,6 +182,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
if (sort == null) {
if (courseCollect != null) {
CourseDetails courseDetails = baseMapper.selectOne(new QueryWrapper<CourseDetails>()
.select("sort")
.eq("course_details_id", courseCollect.getCourseDetailsId()).eq("course_id", courseCollect.getCourseId()).last("limit 1"));
sort = courseDetails.getSort();
}
@ -215,7 +221,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
s.setVideoUrl(null);
}
if (s.getSort() > finalStartSort && s.getSort() < finalEndSort) {
CourseCollect isGood = courseCollectDao.selectOne(new QueryWrapper<CourseCollect>()
Integer isGood = courseCollectDao.selectCount(new QueryWrapper<CourseCollect>()
.eq("user_id", userId).eq("course_details_id", s.getCourseDetailsId()).eq("classify", 2).last("limit 1"));
s.setIsGood(isGood == null ? 0 : 1);
}
@ -244,12 +250,12 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
@Override
public Result selectCourseDetailsById(Long id, String token, String courseDetailsId) {
Course bean = courseDao.selectById(id);
if (bean.getViewCounts() == null) {
bean.setViewCounts(1);
} else {
bean.setViewCounts(bean.getViewCounts() + 1);
}
courseDao.updateById(bean);
// if (bean.getViewCounts() == null) {
// bean.setViewCounts(1);
// } else {
// bean.setViewCounts(bean.getViewCounts() + 1);
// }
// courseDao.updateById(bean);
setCourseView(bean);