From 05278c1c933ac6cbaf65e25f195606c69e7865ef Mon Sep 17 00:00:00 2001 From: benjamin <benjamin@le-filament.com> Date: Thu, 3 Apr 2025 17:09:24 +0200 Subject: [PATCH] [UPD] compute last staff --- models/res_partner.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/models/res_partner.py b/models/res_partner.py index b160309..3907a4b 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -1212,11 +1212,11 @@ class ScopPartner(models.Model): ) def _compute_last_effective(self): for partner in self: - lm = partner.staff_ids.sorted(key="effective_date", reverse=True) - if lm: - partner.staff_last = lm[0].staff_count - partner.staff_shareholder_last = lm[0].staff_shareholder_count - partner.staff_last_date = lm[0].effective_date + lines = partner._get_staff_lines() + if lines: + partner.staff_last = lines[0].staff_count + partner.staff_shareholder_last = lines[0].staff_shareholder_count + partner.staff_last_date = lines[0].effective_date def _compute_segment_nb(self): for partner in self: @@ -1256,9 +1256,9 @@ class ScopPartner(models.Model): else: partner.is_administrative = False - @api.depends("revision_next_exercice", - "revision_same_exercice", - ) + @api.depends( + "revision_next_exercice", "revision_same_exercice", + ) def _compute_revision_next_year(self): for partner in self: if partner.revision_same_exercice: @@ -1741,6 +1741,10 @@ class ScopPartner(models.Model): cedex = f" CEDEX {self.postal_cedex}" if self.postal_cedex else "" return f"{street_address}\n{city_address}{cedex}" + def _get_staff_lines(self): + self.ensure_one() + return self.staff_ids.sorted(key="effective_date", reverse=True) + # ------------------------------------------------------ # CRON function # ------------------------------------------------------ -- GitLab