diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po
index 37743d6c2..f05e4a111 100644
--- a/odex25_benefit/odex_benefit/i18n/ar_001.po
+++ b/odex25_benefit/odex_benefit/i18n/ar_001.po
@@ -11469,12 +11469,6 @@ msgstr ""
"رقم التعريف الضريبي. قم بإكماله إذا كانت جهة الاتصال تخضع للضرائب الحكومية. "
"يُستخدم في بعض المستندات القانونية."
-#. module: odex_benefit
-#: code:addons/odex_benefit/models/benefit.py:0
-#, python-format
-msgid "The account number already exists!"
-msgstr ""
-
#. module: odex_benefit
#: code:addons/odex_benefit/models/death_reason_settings.py:0
#: model:ir.model.constraint,message:odex_benefit.constraint_death_reason_settings_uniq_name
diff --git a/odex25_benefit/odex_benefit/models/benefit.py b/odex25_benefit/odex_benefit/models/benefit.py
index 4a557c9a3..2dd9ee776 100644
--- a/odex25_benefit/odex_benefit/models/benefit.py
+++ b/odex25_benefit/odex_benefit/models/benefit.py
@@ -1664,18 +1664,19 @@ class GrantBenefitProfile(models.Model):
if messages:
raise UserError("\n".join(messages))
- if not rec.user_id:
- self.sudo().create_user()
+ #if not rec.user_id:
+ # self.sudo().create_user()
- rec.user_id.sudo().write({
- 'groups_id': [(3, self.env.ref('base.group_user', False).id)],
- })
- # rec.user_id.sudo().write({
- # 'groups_id': [(4, self.env.ref('odex_benefit.group_benefit_user', False).id)],
- # })
- rec.user_id.sudo().write({
- 'groups_id': [(4, self.env.ref('base.group_portal', False).id)],
- })
+ if rec.user_id:
+ rec.user_id.sudo().write({
+ 'groups_id': [(3, self.env.ref('base.group_user', False).id)],
+ })
+ # rec.user_id.sudo().write({
+ # 'groups_id': [(4, self.env.ref('odex_benefit.group_benefit_user', False).id)],
+ # })
+ rec.user_id.sudo().write({
+ 'groups_id': [(4, self.env.ref('base.group_portal', False).id)],
+ })
if rec.action_type == 'new':
rec.approve_date = datetime.now()
self.sudo().send_approval_benefit_email()
@@ -1795,14 +1796,14 @@ class GrantBenefitProfile(models.Model):
# @api.multi
def action_edit_info(self):
- user = self.user_id
- if not user:
- user = self.env['res.users'].sudo().search(
- [('partner_id', '=', self.partner_id.id), ('active', '=', False)])
- if user:
- user.write({'active': True})
- else:
- user = self.create_user()
+ #user = self.user_id
+ #if not user:
+ # user = self.env['res.users'].sudo().search(
+ # [('partner_id', '=', self.partner_id.id), ('active', '=', False)])
+ # if user:
+ # user.write({'active': True})
+ # else:
+ # user = self.create_user()
#group_e = self.env.ref('odex_benefit.group_benefit_edit', False)
try:
#group_e.sudo().write({'users': [(4, user.id)]})
@@ -2640,11 +2641,11 @@ class GrantBenefitProfile(models.Model):
raise ValidationError(_("The IBAN number must contain exactly 22 digits."))
# Check if the account number already exists in the partner bank or benefit
- partner_exist = self.env['res.partner.bank'].search([('acc_number', '=', self.acc_number)], limit=1)
- benefit_exist = self.search([('acc_number', '=', self.acc_number)], limit=1)
+ #partner_exist = self.env['res.partner.bank'].search([('acc_number', '=', self.acc_number)], limit=1)
+ #benefit_exist = self.search([('acc_number', '=', self.acc_number)], limit=1)
- if partner_exist or benefit_exist:
- raise ValidationError(_("The account number already exists!"))
+ #if partner_exist or benefit_exist:
+ # raise ValidationError(_("The account number already exists!"))
@api.onchange('mother_marital_conf', 'mother_location_conf', 'mother_net_income')
def _onchange_mother_info(self):
diff --git a/odex25_benefit/odex_benefit/models/family_members.py b/odex25_benefit/odex_benefit/models/family_members.py
index e2ecf2073..f3bb20b68 100644
--- a/odex25_benefit/odex_benefit/models/family_members.py
+++ b/odex25_benefit/odex_benefit/models/family_members.py
@@ -422,18 +422,24 @@ class FamilyMemberProfile(models.Model):
"Numbers and special characters are not allowed.") % field_label
)
- @api.depends('age')
+ @api.depends('age', 'relationn')
def _compute_get_age_status(self):
+ validation_setting = self.env["family.validation.setting"].search([], limit=1)
+ female_benefit_age = validation_setting.female_benefit_age or 26
+ male_benefit_age = validation_setting.male_benefit_age or 18
+
for rec in self:
- current_education_status_id = rec.member_education_status_ids.filtered(
- lambda r: r.education_status_type == 'current')
- if rec.relationn.relation_type == 'son' and rec.age <= 18:
- rec.age_status = 'minor'
- elif rec.relationn.relation_type == 'daughter' and rec.age <= 26:
- rec.age_status = 'minor'
- elif rec.relationn.relation_type == 'son' and rec.age <= 22 and (
- current_education_status_id.specialization_ids.is_scientific_specialty or current_education_status_id.specialization_ids.is_medical_specialty):
- rec.age_status = 'minor'
+ if not rec.relationn or not rec.relationn.relation_type:
+ rec.age_status = 'non_minor'
+ continue
+
+ age = rec.age or 0
+ rtype = rec.relationn.relation_type
+
+ if rtype == 'daughter':
+ rec.age_status = 'minor' if age < female_benefit_age else 'non_minor'
+ elif rtype == 'son':
+ rec.age_status = 'minor' if age < male_benefit_age else 'non_minor'
else:
rec.age_status = 'non_minor'
@@ -910,7 +916,7 @@ class FamilyMemberProfile(models.Model):
def action_resume_member(self):
ctx = dict(self.env.context or {})
- #ctx['resume_family'] = True
+ # ctx['resume_family'] = True
ctx.update({
'resume_family': True,
'active_model': 'family.member',
diff --git a/odex25_benefit/odex_benefit/views/benefit_view.xml b/odex25_benefit/odex_benefit/views/benefit_view.xml
index 2733beaa1..2e76c14b3 100644
--- a/odex25_benefit/odex_benefit/views/benefit_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_view.xml
@@ -708,7 +708,7 @@
'invisible':[('father_dead_reason_id_not_defined', '=', False)],
'readonly':[('state','not in',['draft','new','complete_info'])]}
"/>
-
+