当前集 提出

This commit is contained in:
wangw 2025-01-06 11:03:39 +08:00
parent 24b94a8ec7
commit 58be937d06
1 changed files with 5 additions and 2 deletions

View File

@ -34,7 +34,6 @@ import com.sqx.modules.course.entity.CourseUser;
import com.sqx.modules.course.service.CourseDetailsService;
import com.sqx.modules.course.vo.CourseDetailsIn;
import com.sqx.modules.course.vo.CourseDetailsSetVo;
import com.sqx.modules.course.vo.CourseDetailsVo;
import com.sqx.modules.orders.dao.OrdersDao;
import com.sqx.modules.orders.service.OrdersService;
import com.sqx.modules.redisService.impl.RedisServiceImpl;
@ -53,7 +52,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
import java.util.concurrent.atomic.AtomicReference;
@Service
@Slf4j
@ -196,6 +195,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
if ((!freeWatch)) {
detailsId = courseUserDao.selectUserCourseDetailsId(courseId, userId);
}
AtomicReference<CourseDetailsSetVo> current = new AtomicReference<>(new CourseDetailsSetVo());
Set<Long> finalDetailsId = detailsId;
int finalStartSort = startSort;
int finalEndSort = endSort;
@ -203,6 +203,7 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
//当前
if (courseCollect != null && s.getCourseDetailsId().equals(courseCollect.getCourseDetailsId())) {
s.setCurrent(1);
current.set(s);
}
// 不免费 3集以后 (已买的不为空 并不在已买的包含)
if (!freeWatch && s.getSort() > 3 && (CollectionUtil.isEmpty(finalDetailsId) || !finalDetailsId.contains(s.getCourseDetailsId()))) {
@ -216,11 +217,13 @@ public class CourseDetailsServiceImpl extends ServiceImpl<CourseDetailsDao, Cour
});
if (courseCollect == null) {
courseDetailsSetVos.get(0).setCurrent(1);
current.set(courseDetailsSetVos.get(0));
}
ThreadUtil.execAsync(() -> {
setCourseView(bean);
});
Map<String, Object> map = new HashMap<>();
map.put("current", current.get());
map.put("title", bean.getTitle());
map.put("list", courseDetailsSetVos);
return new Result().put("data", map);