From 2ce2c4d5b0f3f6634fcdb8ec4a6a8f52586cd110 Mon Sep 17 00:00:00 2001 From: benjamin <benjamin@le-filament.com> Date: Thu, 29 Feb 2024 12:28:51 +0100 Subject: [PATCH] [FIX] remove adhesion amount calculation --- models/res_partner.py | 30 ------------------------------ models/scop_instance_partner.py | 15 --------------- 2 files changed, 45 deletions(-) diff --git a/models/res_partner.py b/models/res_partner.py index 94534ae..fecc749 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -31,33 +31,3 @@ class ScopPartner(models.Model): # ------------------------------------------------------ # Business method # ------------------------------------------------------ - def get_theorical_amount_adhesion(self, effectif): - """ - Trick to use super method to get amount adhesion in compute field - in model scop_instance_partner - """ - self.ensure_one() - return super(ScopPartner, self).get_amount_adhesion(effectif) - - def get_amount_adhesion(self, effectif): - """ - Override function to get custom amount set in instance if exists - """ - self.ensure_one() - adhesion_from_instance = self.env["scop.instance.partner"].search( - [ - ( - "instance_id", - "=", - self.env.context.get("origin_instance_id"), - ), - ("partner_id", "=", self.id), - ] - ) - if len(adhesion_from_instance) == 1 and self.env.context.get( - "origin_instance_id" - ): - amount_adhesion = adhesion_from_instance.amount_adhesion - else: - amount_adhesion = super(ScopPartner, self).get_amount_adhesion(effectif) - return amount_adhesion diff --git a/models/scop_instance_partner.py b/models/scop_instance_partner.py index 142dfd2..beaeecf 100644 --- a/models/scop_instance_partner.py +++ b/models/scop_instance_partner.py @@ -52,8 +52,6 @@ class ScopInstancePartner(models.Model): ) amount_adhesion = fields.Float( string="Montant Adhésion", - compute="_compute_amount_adhesion", - store=True, ) comments = fields.Text("Commentaires") statistic_membership_date = fields.Date( @@ -81,19 +79,6 @@ class ScopInstancePartner(models.Model): # ------------------------------------------------------ # Compute # ------------------------------------------------------ - @api.depends("partner_id", "state") - def _compute_amount_adhesion(self): - for r in self: - if r.state == "positive": - staff_line = r.partner_id.staff_ids.filtered( - lambda s: s.type_entry == "membership" - ).sorted(key="effective_date", reverse=True) - staff_number = staff_line[0].staff_count if staff_line else 0 - r.amount_adhesion = r.partner_id.get_theorical_amount_adhesion( - staff_number - ) - else: - r.amount_adhesion = 0 # ------------------------------------------------------ # Actions -- GitLab