学员真实观看时长计算考虑到网络延迟

This commit is contained in:
none 2023-04-04 09:44:26 +08:00
parent 6b23dfe77b
commit 7f9ca140da

View File

@ -46,14 +46,14 @@ public class UserBus {
} }
return CollectionUtils.intersection(courseDepIds, userDepIds).size() > 0; return CollectionUtils.intersection(courseDepIds, userDepIds).size() > 0;
} }
public void userLearnDurationRecord(User user, Course course, CourseHour hour) { public void userLearnDurationRecord(User user, Course course, CourseHour hour) {
Long curTime = System.currentTimeMillis(); Long curTime = System.currentTimeMillis();
// 最近一次学习时间 // 最近一次学习时间
Long lastTime = userLastLearnTimeCache.get(FCtx.getId()); Long lastTime = userLastLearnTimeCache.get(FCtx.getId());
// 最大周期为10s // 最大周期为10s+0.5s的网络延迟
if (lastTime == null || curTime - lastTime > 10000) { if (lastTime == null || curTime - lastTime > 10500) {
lastTime = curTime - 10000; lastTime = curTime - 10000;
} }