diff --git a/odex25_benefit/odex_benefit/data/server_actions.xml b/odex25_benefit/odex_benefit/data/server_actions.xml
index 69142eccf..25c735b5f 100644
--- a/odex25_benefit/odex_benefit/data/server_actions.xml
+++ b/odex25_benefit/odex_benefit/data/server_actions.xml
@@ -33,16 +33,6 @@
action
-
- Re-Assign Benefit Sequence
-
-
- code
-
- action = records.assign_sequence_to_all()
-
-
-
Assign Specialist (Mass)
diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po
index c81fc1143..145280b9c 100644
--- a/odex25_benefit/odex_benefit/i18n/ar_001.po
+++ b/odex25_benefit/odex_benefit/i18n/ar_001.po
@@ -2260,6 +2260,7 @@ msgstr "فئات الاسرة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_category_amount_line__benefit_category_id
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__benefit_category_id
+#: model:ir.model.fields,field_description:odex_benefit.field_family_member__benefit_category_id
#: model:ir.model.fields,field_description:odex_benefit.field_rent_lines__benefit_category_id
msgid "Benefit Category"
msgstr "فئة الأسرة"
@@ -5361,13 +5362,18 @@ msgstr "سيارات الأسرة"
#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_search
#: model:ir.model.fields,field_description:odex_benefit.field_benefit_expense_line__family_category_id
#: model:ir.model.fields,field_description:odex_benefit.field_seasonal_service__family_category_ids
+#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search
msgid "Family Category"
msgstr "فئة الأسرة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_account_move_line__family_code
+#: model:ir.model.fields,field_description:odex_benefit.field_family_member__benefit_code
+#: model:ir.model.fields,field_description:odex_benefit.field_service_request__family_code
+#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_search
+#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_tree
msgid "Family Code"
-msgstr ""
+msgstr "رقم الأسرة"
#. module: odex_benefit
#: model_terms:ir.ui.view,arch_db:odex_benefit.visits_form
@@ -7891,7 +7897,6 @@ msgstr "المرفقات الرئيسية"
#. module: odex_benefit
#: model_terms:ir.ui.view,arch_db:odex_benefit.main_service_form
-#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search
msgid "Main Service"
msgstr "نوع الخدمة الرئيسية"
@@ -9873,7 +9878,6 @@ msgstr ""
#: model:ir.model.fields,field_description:odex_benefit.field_benefits_representative__ref
#: model:ir.model.fields,field_description:odex_benefit.field_external_benefits__ref
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__ref
-#: model:ir.model.fields,field_description:odex_benefit.field_service_request__name
#: model:ir.model.fields,field_description:odex_benefit.field_visit_location__name
#: model:ir.model.fields,field_description:odex_benefit.field_seasonal_service__name
#, fuzzy
@@ -9886,6 +9890,11 @@ msgstr ""
"#-#-#-#-# catalog.po (Odoo Server 14.0) #-#-#-#-#\n"
"الرقم التسلسلي"
+#. module: odex_benefit
+#: model:ir.model.fields,field_description:odex_benefit.field_service_request__name
+msgid "Reference"
+msgstr "رقم الخدمة"
+
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_entity_refuse_reason__date
msgid "Refuse Date"
@@ -10291,6 +10300,12 @@ msgstr ""
"#-#-#-#-# catalog.po (Odoo Server 14.0) #-#-#-#-#\n"
"بانتظار الأخصائي"
+#. module: odex_benefit
+#: model:ir.model.fields,field_description:odex_benefit.field_family_member__researcher_id
+#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search
+msgid "Researcher"
+msgstr "اخصائي اجتماعي"
+
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_changes_requests__gender_researcher_id
#: model:ir.model.fields,field_description:odex_benefit.field_changes_requests__researcher_id
@@ -11117,7 +11132,6 @@ msgstr "يدرس خارج السعودية"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__sub_service_category
-#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search
msgid "Sub Service Category"
msgstr "الخدمة الفرعية"
@@ -12558,12 +12572,6 @@ msgstr ""
msgid "You cannot benefit from this service (property type not ownership)"
msgstr "لا يمكنك الاستفادة من هذه الخدمة (نوع العقار ايجار وليس ملك)"
-#. module: odex_benefit
-#: code:addons/odex_benefit/models/service_request.py:0
-#, python-format
-msgid "You cannot benefit from this service (property type not rent)"
-msgstr ""
-
#. module: odex_benefit
#: code:addons/odex_benefit/models/benefit.py:0
#: code:addons/odex_benefit/models/family_members.py:0
@@ -12687,11 +12695,6 @@ msgstr ""
msgid "bad"
msgstr "سيء"
-#. module: odex_benefit
-#: model_terms:ir.ui.view,arch_db:odex_benefit.banks_view_tree
-msgid "banks_tree"
-msgstr ""
-
#. module: odex_benefit
#: model:ir.model.fields.selection,name:odex_benefit.selection__generate_reports__qualification_type__behavior
msgid "behavior"
@@ -17095,6 +17098,7 @@ msgstr "الترحيل المالي"
#: model:ir.model.fields,field_description:odex_benefit.field_payment_orders__accountant_id
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__accountant_id
#: model:ir.model.fields,field_description:odex_benefit.field_services_settings__accountant_id
+#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search
msgid "Accountant"
msgstr "المحاسب"
diff --git a/odex25_benefit/odex_benefit/models/benefit.py b/odex25_benefit/odex_benefit/models/benefit.py
index 867567871..9ccc26cb7 100644
--- a/odex25_benefit/odex_benefit/models/benefit.py
+++ b/odex25_benefit/odex_benefit/models/benefit.py
@@ -27,15 +27,15 @@ class GrantBenefitProfile(models.Model):
def get_url(self):
return "wwww"
- def name_get(self):
- result = []
- for rec in self:
- if rec.name and rec.code:
- display_name = f"{rec.code} - {rec.name}"
- result.append((rec.id, display_name))
- else:
- result.append((rec.id, rec.name or rec.code or ""))
- return result
+ #def name_get(self):
+ # result = []
+ # for rec in self:
+ # if rec.name and rec.code:
+ # display_name = f"{rec.code} - {rec.name}"
+ # result.append((rec.id, display_name))
+ # else:
+ # result.append((rec.id, rec.name or rec.code or ""))
+ # return result
@api.model
def _name_search(self, name, args=None, operator='ilike', limit=100, name_get_uid=None):
diff --git a/odex25_benefit/odex_benefit/models/family_members.py b/odex25_benefit/odex_benefit/models/family_members.py
index 016688d45..b658a0545 100644
--- a/odex25_benefit/odex_benefit/models/family_members.py
+++ b/odex25_benefit/odex_benefit/models/family_members.py
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import logging
from datetime import datetime, date
+
from dateutil.relativedelta import relativedelta as rd
from odoo import models, fields, api, _
from odoo.exceptions import UserError, ValidationError
@@ -38,8 +39,11 @@ 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)
+ benefit_code = fields.Char(string='Family Code', related='benefit_id.code', store=True)
branch_custom_id = fields.Many2one('branch.settings', string="Branch", related="benefit_id.branch_custom_id",
search="_search_branch_custom_id")
+ researcher_id = fields.Many2one("committees.line", string="Researcher", related="benefit_id.researcher_id", search="_search_researcher_id")
+ benefit_category_id = fields.Many2one('benefit.category', string='Benefit Category',related="benefit_id.benefit_category_id",search="_search_benefit_category_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'),
@@ -307,6 +311,12 @@ class FamilyMemberProfile(models.Model):
def _search_branch_custom_id(self, operator, value):
return [('benefit_id.branch_custom_id', operator, value)]
+ def _search_researcher_id(self, operator, value):
+ return [('benefit_id.researcher_id', operator, value)]
+
+ def _search_benefit_category_id(self, operator, value):
+ return [('benefit_id.benefit_category_id', operator, value)]
+
@api.model
def name_search(self, name='', args=None, operator='ilike', limit=100):
if self._context.get('members_domain_force_all'):
diff --git a/odex25_benefit/odex_benefit/models/service_request.py b/odex25_benefit/odex_benefit/models/service_request.py
index f6ba2683e..afc5390b6 100644
--- a/odex25_benefit/odex_benefit/models/service_request.py
+++ b/odex25_benefit/odex_benefit/models/service_request.py
@@ -20,7 +20,8 @@ class ServiceRequest(models.Model):
researcher_id = fields.Many2one("committees.line", string="Researcher", related="family_id.researcher_id",
store=True)
family_category = fields.Many2one('benefit.category', string='Family Category',
- related='family_id.benefit_category_id')
+ related='family_id.benefit_category_id', search="_search_benefit_category_id")
+ family_code = fields.Char(string='Family Code', related='family_id.code', store=True)
benefit_member_count = fields.Integer(string="Benefit Member count", related='family_id.benefit_member_count')
branch_custom_id = fields.Many2one('branch.settings', string="Branch", related='family_id.branch_custom_id',
store=True)
@@ -58,7 +59,7 @@ class ServiceRequest(models.Model):
rent_start_date = fields.Date(string='Rent Start Date', compute='_compute_rent_details', store=True)
rent_end_date = fields.Date(string='Rent End Date', compute='_compute_rent_details', store=True)
rent_amount = fields.Float(string='Rent Amount', compute='_compute_rent_details', store=True)
- rent_amount_payment = fields.Float(string='Rent Amount Payment', compute='_get_rent_amount_payment',store=True)
+ rent_amount_payment = fields.Float(string='Rent Amount Payment', compute='_get_rent_amount_payment', store=True)
payment_type = fields.Selection(
[
('1', 'Yearly'),
@@ -204,6 +205,9 @@ class ServiceRequest(models.Model):
compute='_compute_related_information_html', store=True, )
researcher_opinion = fields.Html(string='Specialist Opinion', tracking=True)
+ def _search_benefit_category_id(self, operator, value):
+ return [('family_id.benefit_category_id', operator, value)]
+
def action_create_project(self):
pass
@@ -758,11 +762,6 @@ class ServiceRequest(models.Model):
rec.service_cat = False
rec.available_service_cats = False
- @api.onchange('service_cat', 'family_id')
- def _onchange_service_cat(self):
- if self.service_cat.service_type == 'rent' and self.family_id.property_type_code != 'rent' and self.benefit_type == 'family':
- raise UserError(_("You cannot benefit from this service (property type not rent)"))
-
@api.onchange('start', 'end', 'rent_start_date', 'rent_end_date', 'payment_type')
def _check_date_range(self):
for rec in self:
@@ -979,7 +978,7 @@ class ServiceRequest(models.Model):
else:
if service_type in special_services:
if service_type == 'electrical_devices':
- #rec.service_max_amount = rec.device_id.price_unit if rec.device_id else 0.0
+ # rec.service_max_amount = rec.device_id.price_unit if rec.device_id else 0.0
if rec.device_id:
rec.service_max_amount = rec.device_id.price_unit * rec.requested_quantity
rec.requested_service_amount = rec.service_max_amount
diff --git a/odex25_benefit/odex_benefit/views/actions_and_menus.xml b/odex25_benefit/odex_benefit/views/actions_and_menus.xml
index 31e9ac5a3..7ac943335 100644
--- a/odex25_benefit/odex_benefit/views/actions_and_menus.xml
+++ b/odex25_benefit/odex_benefit/views/actions_and_menus.xml
@@ -207,7 +207,6 @@
res.bank
tree,form
-
Create the first Bank
diff --git a/odex25_benefit/odex_benefit/views/benefit_config_view.xml b/odex25_benefit/odex_benefit/views/benefit_config_view.xml
index 3553bf92c..43bdbe8ac 100644
--- a/odex25_benefit/odex_benefit/views/benefit_config_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_config_view.xml
@@ -544,38 +544,6 @@
-
-
- Odex - Banks form
- res.bank
- primary
-
-
-
-
-
- banks_view_tree
- res.bank
-
-
-
-
-
-
-
-
diff --git a/odex25_benefit/odex_benefit/views/benefit_view.xml b/odex25_benefit/odex_benefit/views/benefit_view.xml
index b34126bf7..4456a28a1 100644
--- a/odex25_benefit/odex_benefit/views/benefit_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_view.xml
@@ -2083,7 +2083,7 @@
grant.benefit
-
+
@@ -2125,12 +2125,12 @@
grant.benefit
+
-
@@ -2351,16 +2351,5 @@
-
-
- Update Lines State
- ir.actions.server
-
-
- code
-
- action = records.action_set_waiting_if_needed()
-
-
\ No newline at end of file
diff --git a/odex25_benefit/odex_benefit/views/family_members.xml b/odex25_benefit/odex_benefit/views/family_members.xml
index 5e469331e..193088428 100644
--- a/odex25_benefit/odex_benefit/views/family_members.xml
+++ b/odex25_benefit/odex_benefit/views/family_members.xml
@@ -180,6 +180,9 @@
+
+
+
@@ -337,6 +340,7 @@
family.member
+
diff --git a/odex25_benefit/odex_benefit/views/service_request.xml b/odex25_benefit/odex_benefit/views/service_request.xml
index 7bfdbcec6..a83a6857a 100644
--- a/odex25_benefit/odex_benefit/views/service_request.xml
+++ b/odex25_benefit/odex_benefit/views/service_request.xml
@@ -196,12 +196,13 @@
+
@@ -210,7 +211,7 @@
+ attrs="{'invisible':[('benefit_type','!=','member')],'readonly':[('state','not in',['draft','researcher'])],'required':[('benefit_type','=','member')]}"/>
@@ -233,10 +234,10 @@
+ attrs="{'readonly':[('state','not in',['draft','researcher'])]}"/>
+ attrs="{'readonly':[('state','not in',['draft','researcher'])]}"/>
+ attrs="{'invisible':[('service_type', '!=', 'electrical_devices')],'readonly':[('state','not in',['draft','researcher'])]}">
@@ -438,6 +440,7 @@
@@ -461,18 +464,22 @@
service.request.tree
service.request
-
+
+
+
-
+
-
+
-
+
+
@@ -495,12 +502,19 @@
service.request
+
+
+
+
+
-
-
+
+
+
diff --git a/odex25_benefit/odex_benefit/wizards/family_bank_report_wizard.py b/odex25_benefit/odex_benefit/wizards/family_bank_report_wizard.py
index 37ee85c71..432206121 100644
--- a/odex25_benefit/odex_benefit/wizards/family_bank_report_wizard.py
+++ b/odex25_benefit/odex_benefit/wizards/family_bank_report_wizard.py
@@ -40,7 +40,7 @@ class FamilyBankReportWizard(models.TransientModel):
beneficiary_name = family.acc_holder_name or ''
beneficiary_id = family.acc_holder_id_number or ''
grouped[key] = {
- 'bank_name': (family.bank_id.code or ''),
+ 'bank_name': (family.bank_id.bic or ''),
'account_number': 'SA' + (family.acc_number or ''),
'beneficiary_name': beneficiary_name,
'beneficiary_id': beneficiary_id,