From 13af28f9ba12fedd6b7d7dadf14913344d6c3d6d Mon Sep 17 00:00:00 2001 From: SylorHuang Date: Mon, 24 Jun 2019 17:15:58 +0800 Subject: [PATCH] fix but --- app/controllers/exercises_controller.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/controllers/exercises_controller.rb b/app/controllers/exercises_controller.rb index 555da8e54..bab1170de 100644 --- a/app/controllers/exercises_controller.rb +++ b/app/controllers/exercises_controller.rb @@ -1016,10 +1016,15 @@ class ExercisesController < ApplicationController @exercise_user_current.update_attribute("start_at",Time.now) end end - if @exercise.time > 0 + ex_time = @exercise.time + if ex_time > 0 + time_mill = ex_time * 60 #转为秒 + exercise_end_time = @exercise.end_time.present? ? @exercise.end_time.to_i : 0 exercise_user_start = @exercise_user_current.present? ? @exercise_user_current.start_at.to_i : 0 - exercise_user_left_time = Time.now.to_i - exercise_user_start - time_mill = @exercise.time * 60 #转为毫秒 + if (exercise_user_start + time_mill) > exercise_end_time + time_mill = exercise_end_time - exercise_user_start #如果开始答题时间加试卷的限时长大于试卷的截止时间,则以试卷的截止时间到开始答题时间为试卷的限时 + end + exercise_user_left_time = Time.now.to_i - exercise_user_start #用户已回答的时间 @user_left_time = (time_mill < exercise_user_left_time) ? nil : (time_mill - exercise_user_left_time) #当前用户对试卷的回答剩余时间 end