From 11169367e4a999b19cc9140be38bdb5a1f3bb144 Mon Sep 17 00:00:00 2001 From: Takeshi Umeda Date: Tue, 31 Mar 2020 03:32:34 +0900 Subject: [PATCH] Fix incorrect deletion of local accounts imported by overwriting (#13350) --- app/services/import_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/services/import_service.rb b/app/services/import_service.rb index 4ee431ea3..c0d741d57 100644 --- a/app/services/import_service.rb +++ b/app/services/import_service.rb @@ -64,7 +64,8 @@ class ImportService < BaseService end def import_relationships!(action, undo_action, overwrite_scope, limit, extra_fields = {}) - items = @data.take(limit).map { |row| [row['Account address']&.strip, Hash[extra_fields.map { |key, header| [key, row[header]&.strip] }]] }.reject { |(id, _)| id.blank? } + local_domain_suffix = "@#{Rails.configuration.x.local_domain}" + items = @data.take(limit).map { |row| [row['Account address']&.strip&.delete_suffix(local_domain_suffix), Hash[extra_fields.map { |key, header| [key, row[header]&.strip] }]] }.reject { |(id, _)| id.blank? } if @import.overwrite? presence_hash = items.each_with_object({}) { |(id, extra), mapping| mapping[id] = [true, extra] }