From ee32a7369495b7532bb1f474bcf9aa8c3eddd28c Mon Sep 17 00:00:00 2001 From: Oleksii Kriuchykhin Date: Tue, 19 Aug 2025 16:28:55 +0200 Subject: [PATCH] Fix migration of protocol template assignments [SCI-12283] --- app/models/protocol.rb | 6 +++--- ...48_move_every_one_else_assignment_to_team_assignments.rb | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/models/protocol.rb b/app/models/protocol.rb index 0e2715aea..a97bd55c3 100644 --- a/app/models/protocol.rb +++ b/app/models/protocol.rb @@ -720,19 +720,19 @@ class Protocol < ApplicationRecord private def after_user_assignment_changed(user_assignment) - return unless in_repository_published_original? + return if skip_user_assignments || !in_repository_published_original? sync_child_protocol_assignment(user_assignment) end def after_user_group_assignment_changed(user_group_assignment) - return unless in_repository_published_original? + return if skip_user_assignments || !in_repository_published_original? sync_child_protocol_assignment(user_group_assignment) end def after_team_assignment_changed(user_group_assignment) - return unless in_repository_published_original? + return if skip_user_assignments || !in_repository_published_original? sync_child_protocol_assignment(user_group_assignment) end diff --git a/db/migrate/20250707080048_move_every_one_else_assignment_to_team_assignments.rb b/db/migrate/20250707080048_move_every_one_else_assignment_to_team_assignments.rb index 2f9bf367d..098d0bcdb 100644 --- a/db/migrate/20250707080048_move_every_one_else_assignment_to_team_assignments.rb +++ b/db/migrate/20250707080048_move_every_one_else_assignment_to_team_assignments.rb @@ -1,5 +1,8 @@ # frozen_string_literal: true +require 'activerecord-import/base' +require 'activerecord-import/active_record/adapters/postgresql_adapter' + class MoveEveryOneElseAssignmentToTeamAssignments < ActiveRecord::Migration[7.2] def up # rubocop:disable Metrics/BlockLength @@ -141,6 +144,7 @@ class MoveEveryOneElseAssignmentToTeamAssignments < ActiveRecord::Migration[7.2] return if scope.blank? + record.skip_user_assignments = true record.team_assignments.create!(team_id: team_id, user_role: scope.first.user_role) scope.delete_all end