diff --git a/models/res_partner.py b/models/res_partner.py index 2afba025125c37b6491e0b162e73a990da65113b..53f8e46ec96fcd54d80df9e8d2962104f88f8cd2 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -400,10 +400,26 @@ class ResPartner(models.Model): inpi_data.formality.content.personneMorale.composition.pouvoirs ) + # create new director for pouvoir in inpi_pouvoirs: self.env["cgscop.inpi.director"].maj_from_inpi( scop_id=self, inpi_pouvoir=pouvoir ) + + # remove old + directors = self.env["cgscop.inpi.director"].search( + [ + ("partner_id", "=", self.id), + ] + ) + for director in directors: + director_found = False + for pouvoir in inpi_pouvoirs: + if pouvoir.individu.descriptionPersonne.nom == director.name: + director_found = True + break + if not director_found: + director.unlink() else: logger.info(_(f"No dirigeants found for {self.name}: {self.siren}"))