[IMP] odex_benefit: IMP benefit

This commit is contained in:
younes 2026-01-05 09:54:09 +01:00
parent c2a3d4b58f
commit df7d09e99d
2 changed files with 20 additions and 1 deletions

View File

@ -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:

View File

@ -347,7 +347,12 @@
decoration-danger="member_status == 'non_benefit'" string="Is Benefit?"/>
<field name="age"/>
<field name="benefit_id"/>
<field name="state"/>
<field name="branch_custom_id"/>
<field name="state" widget="badge" decoration-success="state in ['first_approve', 'second_approve']"
decoration-muted="state in ['draft','new']"
decoration-danger="state in ['refused','suspended_second_approve']"
decoration-warning="state in ['first_refusal','waiting_approve']"
decoration-info="state not in ('waiting_approve','draft','new','first_approve', 'second_approve','first_refusal','refused','suspended_second_approve')"/>
</tree>
</field>
</record>
@ -696,6 +701,7 @@
<field name="member_second_name"/>
<field name="member_third_name"/>
<field name="member_family_name"/>
<field name="branch_custom_id"/>
<field name="benefit_id"
filter_domain="['|', ('benefit_id.name', 'ilike', self), ('benefit_id.code', 'ilike', self)]"/>
<group string="Group By">
@ -703,6 +709,8 @@
<filter string="Benefit" name="benefit_id" context="{'group_by': 'benefit_id'}"/>
</group>
<separator/>
<filter string="My Branch" name="my_branch"
domain="[('branch_custom_id.manager_id.user_id', '=', uid)]"/>
<searchpanel>
<field name="state" enable_counters="1"/>
</searchpanel>