From 02427eb7c0d21e66ea914a16a4437a8af95bc35b Mon Sep 17 00:00:00 2001 From: Julien Ortet <julien@le-filament.com> Date: Thu, 22 May 2025 14:22:47 +0200 Subject: [PATCH] [UPD] add first closeout --- models/res_partner.py | 24 ++++++++++++++++++++++++ views/res_partner.xml | 4 ++++ 2 files changed, 28 insertions(+) diff --git a/models/res_partner.py b/models/res_partner.py index 72671d0..a086d8c 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -20,6 +20,11 @@ class ResPartner(models.Model): inverse_name="partner_id", string="Dirigeants", ) + last_inpi_update_date = fields.Datetime( + string="Dernière mise à jours INPI", + tracking=True + ) + first_company_closeout = fields.Date(string="Date de première cloture") # -------------------------------------------------- # Fonctions utiles traiement reponse INPI @@ -476,6 +481,22 @@ class ResPartner(models.Model): else: logger.info(_(f"No siege found for {self.name}: {self.siren}")) + # -------------------------------------------------- + # date de premiere cloture + # -------------------------------------------------- + + def _update_companie_first_closeout(self, inpi_data): + """ + MAJ de la date de premiere cloture des comptes + """ + logger.info(_(f"Update company first closeout date for {self.name}: {self.siren}")) + if inpi_data.formality.content.personneMorale and inpi_data.formality.content.personneMorale.identite: + description = inpi_data.formality.content.personneMorale.identite.description + if description.datePremiereCloture: + self.first_company_closeout = description.datePremiereCloture + else: + logger.info(_(f"No company first closeout date found for {self.name}: {self.siren}")) + # -------------------------------------------------- # UPDATE # -------------------------------------------------- @@ -486,6 +507,7 @@ class ResPartner(models.Model): Une periode est créee à la fin """ logger.info(_(f"Update all for {self.name}: {self.siren}")) + self._update_companie_first_closeout(inpi_data=inpi_data) self._update_denomination_from_inpi(inpi_data=inpi_data, new_period=False) self._update_forme_juridique_from_inpi(inpi_data=inpi_data, new_period=False) self._update_naf_from_inpi(inpi_data=inpi_data, new_period=False) @@ -498,3 +520,5 @@ class ResPartner(models.Model): period.write({"end": datetime.datetime.now().date(), "end_reason": "inpi"}) period_values = self._get_values_from_period(period) self.env["scop.period"].with_context().create(period_values) + + self.last_inpi_update_date = datetime.datetime.now() diff --git a/views/res_partner.xml b/views/res_partner.xml index 4fcfe9c..daa94bf 100644 --- a/views/res_partner.xml +++ b/views/res_partner.xml @@ -17,6 +17,10 @@ <field name="inpi_director_ids" /> </page> </xpath> + <xpath expr="//field[@name='closeout_month']" position="after"> + <field name="first_company_closeout" /> + <field name="last_inpi_update_date" /> + </xpath> </field> </record> </data> -- GitLab