update submissions with null submission type
when creating submissions during cleanup, if a submission with null submission type (indicating the assignment was graded or commented on for that student, despite lack of submission) exists, update it instead of trying to create a new conflicting submission. Change-Id: I3fc7a4a1eba4341d8ad6f0551754a92c93082a61 test-plan: * create graded discussion * have student post in discussion, creating a submission * in script/console, remove the submission's submission_type * run migration * note no new submission, but submission_type on existing submission is restored Reviewed-on: https://gerrit.instructure.com/6978 Reviewed-by: Brian Palmer <brianp@instructure.com> Tested-by: Hudson <hudson@instructure.com>
This commit is contained in:
parent
a7f5a9ea1a
commit
a88081100b
|
@ -64,15 +64,16 @@ class EnsureSubmissionsForDiscussions < ActiveRecord::Migration
|
|||
SQL
|
||||
group_id = group && group.id
|
||||
|
||||
homework = Submission.new(
|
||||
:assignment_id => assignment.id,
|
||||
:user_id => entry.user_id,
|
||||
:group_id => group_id,
|
||||
:submission_type => 'discussion_topic',
|
||||
homework = Submission.find_or_initialize_by_assignment_id_and_user_id(assignment.id, entry.user_id)
|
||||
homework.grade_matches_current_submission = homework.score ? false : true
|
||||
homework.attributes = {
|
||||
:attachment => nil,
|
||||
:processed => false,
|
||||
:process_attempts => 0,
|
||||
:workflow_state => "submitted")
|
||||
:workflow_state => "submitted",
|
||||
:group_id => group_id,
|
||||
:submission_type => 'discussion_topic'
|
||||
}
|
||||
|
||||
# don't broadcast due to these fixes, period.
|
||||
homework.with_versioning(:explicit => true) do
|
||||
|
|
Loading…
Reference in New Issue