Fix user assigning to teams with existing team sharing records [SCI-7720] (#4879)

This commit is contained in:
Alex Kriuchykhin 2023-01-24 15:47:53 +01:00 committed by GitHub
parent 3fdbed382e
commit 00d99ee296
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 1 additions and 2 deletions

View file

@ -3,7 +3,6 @@
class TeamSharedObject < ApplicationRecord
enum permission_level: Extends::SHARED_OBJECTS_PERMISSION_LEVELS.except(:not_shared)
after_create :assign_shared_inventories, if: -> { shared_object.is_a?(Repository) }
before_destroy :unassign_unshared_items, if: -> { shared_object.is_a?(Repository) }
before_destroy :unassign_unshared_inventories, if: -> { shared_object.is_a?(Repository) }

View file

@ -68,7 +68,7 @@ module UserAssignments
end
def create_or_update_user_assignment(object, role = nil)
new_user_assignment = object.user_assignments.find_or_initialize_by(user: @user)
new_user_assignment = object.user_assignments.find_or_initialize_by(user: @user, team: object.team)
return if new_user_assignment.manually_assigned?
new_user_assignment.user_role = role || @user_role