From 7911a9c63043e51e1fad53aba5241802a4e9fb50 Mon Sep 17 00:00:00 2001 From: youssef Date: Mon, 29 Oct 2018 22:53:09 +0000 Subject: [PATCH] Add family members to membership invoice --- .../wizard/golem_membership_invoice.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/golem_member_minor/wizard/golem_membership_invoice.py b/golem_member_minor/wizard/golem_membership_invoice.py index e7c74d1..c2e0c72 100644 --- a/golem_member_minor/wizard/golem_membership_invoice.py +++ b/golem_member_minor/wizard/golem_membership_invoice.py @@ -33,11 +33,15 @@ class GolemMembershipInvoice(models.TransientModel): def onchange_member(self): """ Set partner domain if src_member_id is filled """ self.ensure_one() - record = self[0] - domain = ([('id', 'in', - record.src_member_id.mapped('legal_guardian_ids.legal_guardian_id').ids)] - if record.src_member_id.is_minor else []) - return {'domain': {'partner_id': domain}} + record = self[0] + if record.src_member_id.is_minor: + partner_ids = record.src_member_id.mapped('legal_guardian_ids.legal_guardian_id').ids + else: + partner_ids = [] + if hasattr(record.src_member_id, 'family_member_ids'): + partner_ids += record.src_member_id.family_member_ids.filtered( + lambda r: r.id != self.src_member_id.partner_id.id).ids + return {'domain': {'partner_id': [('id', 'in', partner_ids)]}} @api.multi def membership_invoice(self):