From 5ae1aea4df83fef39fae5de8982ff8631895d47d Mon Sep 17 00:00:00 2001 From: benjamin <benjamin@le-filament.com> Date: Thu, 3 Apr 2025 17:09:45 +0200 Subject: [PATCH] [UPD] compute last staff --- models/res_partner.py | 16 ++++++++++++++++ models/scop_partner_staff.py | 9 ++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/models/res_partner.py b/models/res_partner.py index e369b82..a94e425 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -87,6 +87,22 @@ class ScopPartner(models.Model): "target": "new", } + # ------------------------------------------------------ + # Override parent + # ------------------------------------------------------ + def _get_staff_lines(self): + """ + Retourne la liste des lignes qui ne sont pas liées à une LM en statut ouvert ou + publié pour ne pas prendre en compte les lignes d'effectif à 0 (encore non + renseignées) + """ + self.ensure_one() + all_staff_ids = super(ScopPartner, self)._get_staff_lines() + staff_lm_new_ids = self.staff_ids.filtered( + lambda s: s.liste_ministere_id and s.liste_ministere_id.status not in ["1_ouvert", "2_publie"] + ) + return (all_staff_ids - staff_lm_new_ids).sorted(key="effective_date", reverse=True) + # ------------------------------------------------------ # Business method # ------------------------------------------------------ diff --git a/models/scop_partner_staff.py b/models/scop_partner_staff.py index a0b2be1..393d7b5 100644 --- a/models/scop_partner_staff.py +++ b/models/scop_partner_staff.py @@ -1,7 +1,7 @@ # © 2020 Le Filament (<http://www.le-filament.com>) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from odoo import fields, models +from odoo import api, fields, models class ScopPartnerStaff(models.Model): @@ -16,6 +16,13 @@ class ScopPartnerStaff(models.Model): string="Est une coopérative", related="partner_id.is_cooperative", store=True ) + # ------------------------------------------------------ + # Actions + # ------------------------------------------------------ def archive_facility(self): self.partner_id.active = False self.liste_ministere_id.lm_maj_effectifs_secondaires() + + # ------------------------------------------------------ + # Inherit parent + # ------------------------------------------------------ -- GitLab