From a1165c730f9099e66f2949718fc9487d1524de31 Mon Sep 17 00:00:00 2001 From: jordan <jordan@le-filament.com> Date: Mon, 10 Jan 2022 12:04:59 +0100 Subject: [PATCH] [fix] error on choosing lm adhesion --- models/res_partner.py | 45 +++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/models/res_partner.py b/models/res_partner.py index 7c6ad2e..12faa86 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -174,33 +174,36 @@ class ScopPartner(models.Model): - Pas de LM connue → on créée une LM inscription """ self.ensure_one() - last_lm_ids = self.get_last_lm() - lm_adhesion = None - year = fields.Date.today().year if not year else year - - if last_lm_ids: - lm_adhesion = last_lm_ids.filtered( - lambda lm: lm.year == year) + lm_adhesion = self.lm_adhesion_id if not lm_adhesion: - if not last_lm_ids: - dossier_type_inscription_id = self.env.ref( - 'cgscop_liste_ministere.liste_ministere_type_1').id - type_lm = dossier_type_inscription_id - else: - dossier_type_renouvellement_id = self.env.ref( - 'cgscop_liste_ministere.liste_ministere_type_2').id - type_lm = dossier_type_renouvellement_id - lm_adhesion = self.env['liste.ministere'].sudo().create({ - 'partner_id': self.id, - 'year': year, - 'type_id': type_lm - }) - lm_adhesion.action_publish_without_extranet() + last_lm_ids = self.get_last_lm() + if last_lm_ids: + year = fields.Date.today().year if not year else year + lm_adhesion = last_lm_ids.filtered( + lambda lm: lm.year == year) + + if not lm_adhesion: + if not last_lm_ids: + dossier_type_inscription_id = self.env.ref( + 'cgscop_liste_ministere.liste_ministere_type_1').id + type_lm = dossier_type_inscription_id + else: + dossier_type_renouvellement_id = self.env.ref( + 'cgscop_liste_ministere.liste_ministere_type_2').id + type_lm = dossier_type_renouvellement_id + lm_adhesion = self.env['liste.ministere'].sudo().create({ + 'partner_id': self.id, + 'year': year, + 'type_id': type_lm + }) + lm_adhesion.action_publish_without_extranet() + self.lm_adhesion_id = lm_adhesion.id else: if not lm_adhesion.active: lm_adhesion.write({'active': True}) + return lm_adhesion def get_last_lm(self): -- GitLab