diff --git a/models/res_partner.py b/models/res_partner.py index f871676f7bdf76cb7c242eacc8f47da30f510ba5..c093442455a35ba7b914bc4a273ae105df5fef83 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -58,10 +58,9 @@ class ScopPartner(models.Model): compute='_compute_membership', store=True) member_number = fields.Char( "No adhérent (texte)", - compute='_compute_membership', store=True) + compute='_compute_membership_number', store=True) member_number_int = fields.Integer( - "No adhérent", - compute='_compute_membership_int', store=True, group_operator="") + "No adhérent", group_operator="") member_start_stat = fields.Date( "Date d'adhésion statistique", compute='_compute_membership', store=True) @@ -847,7 +846,6 @@ class ScopPartner(models.Model): @api.depends('membership_period_ids', 'membership_period_ids.end_reason_id', - 'membership_period_ids.number', 'membership_period_ids.end') @api.multi def _compute_membership(self): @@ -857,26 +855,24 @@ class ScopPartner(models.Model): [('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') + @api.depends('member_number_int') @api.multi - def _compute_membership_int(self): + 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) @api.depends('membership_period_ids', 'membership_period_ids.end')