diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po
index 3bcd9ced2..df9ee30cf 100644
--- a/odex25_benefit/odex_benefit/i18n/ar_001.po
+++ b/odex25_benefit/odex_benefit/i18n/ar_001.po
@@ -18530,3 +18530,14 @@ msgstr "يمكن طلب استثناء مؤقت"
msgid "Exception Family Services Manager Approve"
msgstr "اعتماد مديرة خدمات المستفيدين للاستثناء"
+#. module: odex_benefit
+#: model:ir.model.fields,field_description:odex_benefit.field_services_settings__allowed_country_ids
+msgid "Allowed Countries"
+msgstr "الجنسيات المسموح بها"
+
+#. module: odex_benefit
+#: model:ir.model.fields,help:odex_benefit.field_services_settings__allowed_country_ids
+msgid ""
+"Countries where this service is available. Leave empty to allow all "
+"countries."
+msgstr "الجنسيات التي تتوفر فيها هذه الخدمة. اتركها فارغة للسماح بجميع الجنسيات."
\ No newline at end of file
diff --git a/odex25_benefit/odex_benefit/models/service_request.py b/odex25_benefit/odex_benefit/models/service_request.py
index 2c6c607b5..4831b7a8a 100644
--- a/odex25_benefit/odex_benefit/models/service_request.py
+++ b/odex25_benefit/odex_benefit/models/service_request.py
@@ -1148,6 +1148,22 @@ class ServiceRequest(models.Model):
domain = [('is_seasonal_service', '=', False), ('service_type', '!=', 'main_service'),
('benefit_category_ids', 'in', [rec.family_category.id])]
+ if rec.family_id:
+ mother_country = rec.family_id.mother_country_id
+ father_country = rec.family_id.father_country_id
+
+ country_domain = [
+ '|',
+ ('allowed_country_ids', '=', False),
+ '|',
+ ('allowed_country_ids', 'in', [mother_country.id] if mother_country else []),
+ ('allowed_country_ids', 'in', [father_country.id] if father_country else [])
+ ]
+
+ allowed_services = self.env['services.settings'].search(country_domain)
+
+ domain.append(('id', 'in', allowed_services.ids if allowed_services else []))
+
if rec.family_id.property_type_id:
if rec.family_id.property_type_code != 'ownership':
domain.append(('service_type', '!=', 'home_restoration'))
diff --git a/odex25_benefit/odex_benefit/models/services_settings.py b/odex25_benefit/odex_benefit/models/services_settings.py
index bcf29558e..42ccee3cf 100644
--- a/odex25_benefit/odex_benefit/models/services_settings.py
+++ b/odex25_benefit/odex_benefit/models/services_settings.py
@@ -145,6 +145,14 @@ class ServicesSettings(models.Model):
domain="[('model_id.model', '=', 'family.member')]",
help="Select fields from the Member profile to display only when the service is for a member."
)
+ allowed_country_ids = fields.Many2many(
+ comodel_name='res.country',
+ relation='services_settings_country_rel',
+ column1='service_id',
+ column2='country_id',
+ string='Allowed Countries',
+ help='Countries where this service is available. Leave empty to allow all countries.'
+ )
@api.onchange('benefit_type')
def _onchange_benefit_type(self):
diff --git a/odex25_benefit/odex_benefit/views/services_settings.xml b/odex25_benefit/odex_benefit/views/services_settings.xml
index 39a1dbc1d..745bc7fa6 100644
--- a/odex25_benefit/odex_benefit/views/services_settings.xml
+++ b/odex25_benefit/odex_benefit/views/services_settings.xml
@@ -25,6 +25,7 @@
+