diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po
index 5e4f0eb2e..2759fce39 100644
--- a/odex25_benefit/odex_benefit/i18n/ar_001.po
+++ b/odex25_benefit/odex_benefit/i18n/ar_001.po
@@ -4959,10 +4959,14 @@ msgstr "رفض الاستثناء"
#: model:ir.model.fields.selection,name:odex_benefit.selection__family_member__state__exception_second_approve
#: model:ir.model.fields.selection,name:odex_benefit.selection__family_member__state_a__exception_second_approve
#: model:ir.model.fields.selection,name:odex_benefit.selection__grant_benefit__state__exception_second_approve
-#: model:ir.model.fields.selection,name:odex_benefit.selection__payment_orders__state__waiting_gm
#: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_form
#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form
msgid "Waiting for General Manager"
+msgstr "بانتظار مساعد المدير العام"
+
+#. module: odex_benefit
+#: model:ir.model.fields.selection,name:odex_benefit.selection__payment_orders__state__waiting_gm
+msgid "Waiting for General Manager"
msgstr "بانتظار المدير العام"
#. module: odex_benefit
@@ -15157,7 +15161,7 @@ msgstr "هوية المالك"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_family_member__marriage_certificate
msgid "Marriage Certificate"
-msgstr "شهادة الزواج"
+msgstr "عقد الزواج"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_family_member__death_certificate
@@ -15195,7 +15199,7 @@ msgstr "شهادة الراتب مطلوبة للفرد '%s' عند العمل
msgid ""
"Marriage Certificate is required for member '%s' when marked as married and "
"not a mother."
-msgstr "شهادة الزواج مطلوبة للفرد '%s' عند تحديده كمتزوج وليس أماً."
+msgstr "عقد الزواج مطلوبة للفرد '%s' عند تحديده كمتزوج وليس أماً."
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__family_edit
diff --git a/odex25_benefit/odex_benefit/models/benefit.py b/odex25_benefit/odex_benefit/models/benefit.py
index 94444fbbd..9d77fba9e 100644
--- a/odex25_benefit/odex_benefit/models/benefit.py
+++ b/odex25_benefit/odex_benefit/models/benefit.py
@@ -2344,7 +2344,7 @@ class GrantBenefitProfile(models.Model):
# raise ValidationError(
# _('Enter a valid Saudi mobile number'))
- @api.onchange('phone', 'phone2','sms_phone')
+ @api.constrains('phone', 'phone2','sms_phone')
def _onchange_phone_numbers(self):
phone_numbers = {
'الهاتف': self.phone,
diff --git a/odex25_benefit/odex_benefit/models/family_members.py b/odex25_benefit/odex_benefit/models/family_members.py
index dd26b9196..d73064bb5 100644
--- a/odex25_benefit/odex_benefit/models/family_members.py
+++ b/odex25_benefit/odex_benefit/models/family_members.py
@@ -70,6 +70,7 @@ class FamilyMemberProfile(models.Model):
is_married = fields.Boolean('Is Married?')
marriage_certificate = fields.Many2many('ir.attachment', 'member_marriage_cert_rel', 'member_id', 'attachment_id',
string="Marriage Certificate")
+ marriage_date = fields.Date(string='Marriage Contract Date')
relationn = fields.Many2one('relation.settings',
domain="['|',('relation_type','=','son'),('relation_type','=','daughter')]",
string="Relation")
@@ -1003,7 +1004,7 @@ class FamilyMemberProfile(models.Model):
'state': 'draft'
})
- @api.onchange('member_phone')
+ @api.constrains('member_phone')
def _onchange_member_phone_validation(self):
if self.member_phone:
if self.member_phone.startswith('+966'):
diff --git a/odex25_benefit/odex_benefit/models/ir_attachment_inherit.py b/odex25_benefit/odex_benefit/models/ir_attachment_inherit.py
index 81a5fe460..154b1b5e6 100644
--- a/odex25_benefit/odex_benefit/models/ir_attachment_inherit.py
+++ b/odex25_benefit/odex_benefit/models/ir_attachment_inherit.py
@@ -9,6 +9,7 @@ class BenefitAttachment(models.Model):
education_status_id = fields.Many2one('education.status')
member_id = fields.Many2one('family.member',string="Member")
expiration_date = fields.Date(string='Expiration date')
+ start_date = fields.Date(string='Start Date')
attach_status = fields.Selection(selection=[
('valid', 'Valid'),
('expired', 'Expired'),
@@ -25,6 +26,7 @@ class BenefitAttachment(models.Model):
mother_grant_benefit_id = fields.Many2one('grant.benefit', string='Mother Grant Benefit')
replacement_mother_grant_benefit_id = fields.Many2one('grant.benefit', string='Replacement Mother Grant Benefit')
show_in_portal = fields.Boolean(default=False, string="Show In Portal")
+ supporter_id = fields.Many2one(comodel_name='res.partner',string='Supporter',domain=[('is_supporter', '=', True)],)
def action_preview_attachment(self):
# Custom function to open the preview
diff --git a/odex25_benefit/odex_benefit/models/res_partner.py b/odex25_benefit/odex_benefit/models/res_partner.py
index 0b827a030..da87a71b0 100644
--- a/odex25_benefit/odex_benefit/models/res_partner.py
+++ b/odex25_benefit/odex_benefit/models/res_partner.py
@@ -13,6 +13,7 @@ class ResPartner(models.Model):
education_level_ids = fields.Many2many(
comodel_name='education.level', relation='res_partner_education_level_rel',
column1='partner_id', column2='level_id', string='Education Levels', )
+ is_supporter = fields.Boolean(string='Supporter', default=False, )
def unlink(self):
env = self.env
diff --git a/odex25_benefit/odex_benefit/views/actions_and_menus.xml b/odex25_benefit/odex_benefit/views/actions_and_menus.xml
index fc47762d3..754ea6f6d 100644
--- a/odex25_benefit/odex_benefit/views/actions_and_menus.xml
+++ b/odex25_benefit/odex_benefit/views/actions_and_menus.xml
@@ -753,6 +753,14 @@
{'default_is_company':True,'default_is_education_entity':True}
+
+ Supporter Entities
+ res.partner
+ kanban,form,tree
+ [('is_supporter','=', True)]
+ {'default_is_company':True,'default_is_supporter':True}
+
+
@@ -1043,6 +1051,8 @@
parent="odex_benefit.benefit_tools" sequence="3"/>
+
-
+
@@ -831,13 +831,13 @@
-
-
+
+
@@ -997,13 +997,13 @@
-
-
+
+
@@ -1118,6 +1118,12 @@
readonly="1" force_save="1"/>
+
@@ -1178,7 +1184,8 @@
-
+
+
diff --git a/odex25_benefit/odex_benefit/views/family_members.xml b/odex25_benefit/odex_benefit/views/family_members.xml
index ad4cfdb66..2d176cd6a 100644
--- a/odex25_benefit/odex_benefit/views/family_members.xml
+++ b/odex25_benefit/odex_benefit/views/family_members.xml
@@ -138,6 +138,13 @@
attrs="{'invisible':[('relationn_type','not in',('son','daughter'))]}"/>
+
@@ -193,7 +200,8 @@
-
+
+
@@ -289,6 +297,7 @@
family.member
+
@@ -640,6 +649,7 @@
family.member
+
diff --git a/odex25_benefit/odex_benefit/views/res_partner_view.xml b/odex25_benefit/odex_benefit/views/res_partner_view.xml
index 4ab9d88f6..a538464e5 100644
--- a/odex25_benefit/odex_benefit/views/res_partner_view.xml
+++ b/odex25_benefit/odex_benefit/views/res_partner_view.xml
@@ -12,6 +12,7 @@
widget="many2many_tags"
attrs="{'invisible': [('is_education_entity', '=', False)]}"
/>
+