From da3d4ed4866f8ce6b0dd913da906c33403acad45 Mon Sep 17 00:00:00 2001 From: braisab Date: Tue, 5 Jul 2022 18:24:42 +0200 Subject: [PATCH] [IMP]pms_l10n_es: added compute for document support_number --- pms_l10n_es/models/res_partner_id_number.py | 28 +++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/pms_l10n_es/models/res_partner_id_number.py b/pms_l10n_es/models/res_partner_id_number.py index 787ae9cdb..ef9cc5c8e 100644 --- a/pms_l10n_es/models/res_partner_id_number.py +++ b/pms_l10n_es/models/res_partner_id_number.py @@ -1,8 +1,32 @@ -from odoo import fields, models +from odoo import api, fields, models class ResPartnerIdNumber(models.Model): _inherit = "res.partner.id_number" _description = "Partner ID Number" - support_number = fields.Char(string="Support number", help="DNI support number") + support_number = fields.Char( + string="Support number", + help="DNI support number", + compute="_compute_support_number", + ) + + @api.depends("partner_id", "partner_id.pms_checkin_partner_ids.support_number") + def _compute_support_number(self): + if hasattr(super(), "_compute_support_number"): + super()._compute_support_number() + for record in self: + if not record.support_number and record.partner_id.pms_checkin_partner_ids: + support_number = list( + set( + record.partner_id.pms_checkin_partner_ids.mapped( + "support_number" + ) + ) + ) + if len(support_number) == 1: + record.support_number = support_number[0] + else: + record.support_number = False + elif not record.support_number: + record.support_number = False