From 25271eec6e9cc662ecc94ad3f3877ed30751d5aa Mon Sep 17 00:00:00 2001
From: thibaud <thibaud@le-filament.com>
Date: Mon, 6 Nov 2023 11:41:49 +0100
Subject: [PATCH] [IMP] Added geolocalisation with gouv_api dependancy

- Added handle in the overriding create() method
- Added onchange_geoloc() method to handle the update of an existing record
---
 models/res_partner.py | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/models/res_partner.py b/models/res_partner.py
index 3d40ef9..8659cd9 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -744,6 +744,10 @@ class ScopPartner(models.Model):
             self.date_1st_sign = None
             self.first_closeout = None
 
+    @api.onchange("street", "street2", "street3", "zip", "country_id", "city")
+    def onchange_geoloc(self):
+        self.geo_localize()
+
     # ------------------------------------------------------
     # Common functions
     # ------------------------------------------------------
@@ -860,10 +864,14 @@ class ScopPartner(models.Model):
 
         for vals in vals_list:
             # Création d'une période si la coop est en statut en Suivi
-            if vals.get("is_cooperative") and vals.get("project_status") == "4_suivi":
-                for partner in partners:
+            for partner in partners:
+                if (
+                    vals.get("is_cooperative")
+                    and vals.get("project_status") == "4_suivi"
+                ):
                     if not partner.scop_period_ids:
                         partner.sudo()._create_period(partner)
+                partner.geo_localize()
 
         return partners
 
-- 
GitLab