diff --git a/odex25_benefit/odex_benefit/models/family_members.py b/odex25_benefit/odex_benefit/models/family_members.py
index 807b90246..3bc65e967 100644
--- a/odex25_benefit/odex_benefit/models/family_members.py
+++ b/odex25_benefit/odex_benefit/models/family_members.py
@@ -38,6 +38,8 @@ class FamilyMemberProfile(models.Model):
name = fields.Char(string="Name", compute='get_partner_name', store=True, readonly=False)
member_id_number = fields.Char(string="Member Id Number")
benefit_id = fields.Many2one("grant.benefit", string="Responsable", default=_default_benefit)
+ branch_custom_id = fields.Many2one('branch.settings', string="Branch", related="benefit_id.branch_custom_id",
+ search="_search_branch_custom_id")
gender = fields.Selection(selection=[('male', 'Male'), ('female', 'Female')], string="Gender")
member_phone = fields.Char(string="Member Phone")
member_location = fields.Selection(selection=[('with_family', 'With Family'), ('with_relative', 'with a relative'),
@@ -302,6 +304,15 @@ class FamilyMemberProfile(models.Model):
def _expand_states(self, states, domain, order):
return [key for key, val in type(self).state.selection]
+ def _search_branch_custom_id(self, operator, value):
+ return [('benefit_id.branch_custom_id', operator, value)]
+
+ @api.model
+ def name_search(self, name='', args=None, operator='ilike', limit=100):
+ if self._context.get('members_domain_force_all'):
+ self = self.sudo()
+ return super(FamilyMemberProfile, self).name_search(name, args, operator, limit)
+
@api.model
def _name_search(self, name, args=None, operator='ilike', limit=100, name_get_uid=None):
if not args:
diff --git a/odex25_benefit/odex_benefit/views/family_members.xml b/odex25_benefit/odex_benefit/views/family_members.xml
index d00379880..4da778f18 100644
--- a/odex25_benefit/odex_benefit/views/family_members.xml
+++ b/odex25_benefit/odex_benefit/views/family_members.xml
@@ -347,7 +347,12 @@
decoration-danger="member_status == 'non_benefit'" string="Is Benefit?"/>
-
+
+
@@ -696,6 +701,7 @@
+
@@ -703,6 +709,8 @@
+