Regenerate user assignments when moving task workflow [SCI-6262] (#3668)

This commit is contained in:
artoscinote 2021-11-16 11:10:15 +01:00 committed by GitHub
parent 22623c821d
commit 0749fbdf7b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -327,6 +327,7 @@ class Experiment < ApplicationRecord
# it's obviously not updated. Position for entire module group is updated
# to bottom left corner.
def move_module_groups(to_move, current_user)
ActiveRecord::Base.transaction do
to_move.each do |ids, experiment_id|
modules = my_modules.find(ids)
groups = Set.new(modules.map(&:my_module_group))
@ -357,6 +358,10 @@ class Experiment < ApplicationRecord
m.experiment = experiment
m.save!
# regenerate user assignments
m.user_assignments.destroy_all
UserAssignments::GenerateUserAssignmentsJob.new(m, current_user).perform_now
# Add activity
Activities::CreateActivityService.call(
activity_type: :move_task,
@ -377,6 +382,7 @@ class Experiment < ApplicationRecord
end
end
end
end
# Update connections for all modules in this project.
# Input is an array of arrays, where first element represents