更改作业的截止日期时也应重新判断作品是否迟交、作业id为4198的作品数据迁移
This commit is contained in:
parent
5bbe9e71ba
commit
098d42cbd1
|
@ -82,6 +82,27 @@ class HomeworkCommonController < ApplicationController
|
||||||
@homework.publish_time = params[:homework_common][:publish_time]
|
@homework.publish_time = params[:homework_common][:publish_time]
|
||||||
end
|
end
|
||||||
homework_detail_manual = @homework.homework_detail_manual || HomeworkDetailManual.new
|
homework_detail_manual = @homework.homework_detail_manual || HomeworkDetailManual.new
|
||||||
|
param_end_time = Time.parse(params[:homework_common][:end_time]).strftime("%Y-%m-%d")
|
||||||
|
homework_end_time = Time.parse(@homework.end_time.to_s).strftime("%Y-%m-%d")
|
||||||
|
if homework_end_time != param_end_time
|
||||||
|
if homework_end_time > param_end_time
|
||||||
|
@homework.student_works.where("work_status = 1").each do |st|
|
||||||
|
if param_end_time < Time.parse(st.commit_time.to_s).strftime("%Y-%m-%d")
|
||||||
|
st.late_penalty = @homework.late_penalty
|
||||||
|
st.work_status = 2
|
||||||
|
st.save
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
@homework.student_works.where("work_status = 2").each do |st|
|
||||||
|
if param_end_time >= Time.parse(st.commit_time.to_s).strftime("%Y-%m-%d")
|
||||||
|
st.late_penalty = 0
|
||||||
|
st.work_status = 1
|
||||||
|
st.save
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@homework.end_time = params[:homework_common][:end_time] || Time.now
|
@homework.end_time = params[:homework_common][:end_time] || Time.now
|
||||||
@homework.course_id = params[:course_id]
|
@homework.course_id = params[:course_id]
|
||||||
if params[:homework_type] && params[:homework_type].to_i != @homework.homework_type
|
if params[:homework_type] && params[:homework_type].to_i != @homework.homework_type
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
class UpdateStudentWorkScore < ActiveRecord::Migration
|
||||||
|
def up
|
||||||
|
homework = HomeworkCommon.where("id = 4198").first
|
||||||
|
unless homework.nil?
|
||||||
|
homework.student_works.each do |st|
|
||||||
|
if st.late_penalty != 0 && Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") > Time.parse(st.commit_time.to_s).strftime("%Y-%m-%d")
|
||||||
|
if st.work_status == 2
|
||||||
|
st.work_status = 1
|
||||||
|
end
|
||||||
|
st.late_penalty = 0
|
||||||
|
st.save
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def down
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue