|
|
|
@ -28,19 +28,20 @@ class CreateWatchVideoService < ApplicationService
|
|
|
|
|
|
|
|
|
|
watch_course_video = watch_video_history.watch_course_video
|
|
|
|
|
|
|
|
|
|
if watch_course_video.present?
|
|
|
|
|
watch_course_video.total_duration = watch_course_video.watch_video_histories.sum(:total_duration)
|
|
|
|
|
watch_course_video.end_at = current_time
|
|
|
|
|
watch_course_video.save!
|
|
|
|
|
|
|
|
|
|
if watch_course_video.present? && !watch_course_video.is_finished && watch_course_video.watch_duration < params[:watch_duration].to_f
|
|
|
|
|
if !watch_course_video.is_finished && watch_course_video.watch_duration < params[:watch_duration].to_f
|
|
|
|
|
# 更新课程视频的时长及是否看完状态
|
|
|
|
|
watch_course_video.watch_duration = params[:watch_duration]
|
|
|
|
|
if params[:ed].present?
|
|
|
|
|
watch_course_video.is_finished = watch_course_video.watch_video_histories.sum(:total_duration) >= watch_course_video.duration
|
|
|
|
|
watch_course_video.is_finished = watch_course_video.total_duration >= watch_course_video.duration
|
|
|
|
|
end
|
|
|
|
|
watch_course_video.save!
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
# 开始播放时记录一次
|
|
|
|
|
if params[:course_id].present?
|
|
|
|
|