From d96d216be84c7eef7f46801fba3300556b5b47a8 Mon Sep 17 00:00:00 2001 From: jordan <jordan@le-filament.com> Date: Wed, 30 Mar 2022 11:45:55 +0200 Subject: [PATCH] [fix] use current membership_number if exists for new membership --- models/res_partner.py | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/models/res_partner.py b/models/res_partner.py index 3e1edca..15305ee 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -91,12 +91,10 @@ class ScopPartner(models.Model): store=True, ) member_number = fields.Char( - "No adhérent (texte)", compute="_compute_membership", store=True + "No adhérent (texte)", compute="_compute_membership_number", store=True ) member_number_int = fields.Integer( "No adhérent", - compute="_compute_membership_int", - store=True, group_operator="", ) member_start_stat = fields.Date( @@ -974,11 +972,9 @@ class ScopPartner(models.Model): if len(partner.action_rse_ids) != 0: partner.is_rse = True - # TODO: déplacer dans adhésions ? cotisations? @api.depends( "membership_period_ids", "membership_period_ids.end_reason_id", - "membership_period_ids.number", "membership_period_ids.end", ) def _compute_membership(self): @@ -988,24 +984,24 @@ class ScopPartner(models.Model): last_membership_period = self.env["scop.membership.period"].search( [("partner_id", "=", partner.id), ("type_id", "=", type_cg)], limit=1, - order="start desc", + order="start,id desc", ) if last_membership_period and not last_membership_period.end: partner.membership_status = "member" - partner.member_number = last_membership_period.number partner.member_start_stat = last_membership_period.start_stat partner.member_start = last_membership_period.start elif last_membership_period and last_membership_period.end_reason_id: partner.membership_status = "out" - partner.member_number = last_membership_period.number else: partner.membership_status = "not_member" - @api.depends("member_number") - def _compute_membership_int(self): + @api.depends("member_number_int") + def _compute_membership_number(self): for partner in self: - if partner.member_number: - partner.member_number_int = int(partner.member_number) + if partner.member_number_int: + partner.member_number = str(partner.member_number_int) + else: + partner.member_number = False @api.depends("membership_period_ids", "membership_period_ids.end") def _compute_federation(self): -- GitLab