From 2761a341e0a7b1d9a6e9dbfdecb0a74aaba5a1b7 Mon Sep 17 00:00:00 2001 From: Antoine LAURENT Date: Thu, 3 Oct 2024 15:18:14 +0200 Subject: [PATCH] gps: Don't update advisor with same data --- .../management/commands/import_advisor_information.py | 9 +++++---- itou/gps/utils.py | 4 ++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/itou/gps/management/commands/import_advisor_information.py b/itou/gps/management/commands/import_advisor_information.py index 17316e6180..e7e44be6aa 100644 --- a/itou/gps/management/commands/import_advisor_information.py +++ b/itou/gps/management/commands/import_advisor_information.py @@ -61,10 +61,11 @@ def handle(self, import_excel_file, wet_run=False, **options): for profile in implicated_profiles: advisor, created = create_or_update_advisor(profile, nir_to_contact, commit=False) - if created: - contacts_to_create.append(advisor) - else: - contacts_to_update.append(advisor) + if advisor: + if created: + contacts_to_create.append(advisor) + else: + contacts_to_update.append(advisor) if wet_run: FranceTravailContact.objects.bulk_create(contacts_to_create) diff --git a/itou/gps/utils.py b/itou/gps/utils.py index ffd3fce5c2..3b91910803 100644 --- a/itou/gps/utils.py +++ b/itou/gps/utils.py @@ -73,6 +73,10 @@ def create_or_update_advisor(jobseeker_profile, nir_to_contact, commit=True): # prepare to create or update FranceTravailContact try: advisor = jobseeker_profile.advisor_information + + if (advisor.name, advisor.email) == (contact_name, contact_email): + return None, False + advisor.name = contact_name advisor.email = contact_email except FranceTravailContact.DoesNotExist: