diff --git a/__pycache__/__manifest__.cpython-312.pyc b/__pycache__/__manifest__.cpython-312.pyc
new file mode 100644
index 0000000..495a637
Binary files /dev/null and b/__pycache__/__manifest__.cpython-312.pyc differ
diff --git a/models/__pycache__/hr_employee.cpython-312.pyc b/models/__pycache__/hr_employee.cpython-312.pyc
index 6b3bdc3..e63e21c 100644
Binary files a/models/__pycache__/hr_employee.cpython-312.pyc and b/models/__pycache__/hr_employee.cpython-312.pyc differ
diff --git a/models/hr_employee.py b/models/hr_employee.py
index 6fd8b4a..2bcc722 100644
--- a/models/hr_employee.py
+++ b/models/hr_employee.py
@@ -67,6 +67,16 @@ class HrEmployee(models.Model):
domain = replace_company_leaf(domain)
return super()._search(domain, offset=offset, limit=limit, order=order, **kwargs)
+ @api.model
+ def _register_hook(self):
+ super()._register_hook()
+ rule = self.env.ref('base.res_partner_rule', raise_if_not_found=False)
+ if rule:
+ new_domain = "['|', '|', '|', ('partner_share', '=', False), ('company_id', 'parent_of', company_ids), ('company_id', '=', False), ('employee_ids.company_ids', 'in', company_ids)]"
+ if rule.domain_force != new_domain:
+ rule.sudo().write({'domain_force': new_domain})
+
+
class HrEmployeePublic(models.Model):
_inherit = 'hr.employee.public'
diff --git a/security/hr_security.xml b/security/hr_security.xml
index 886a635..d48f2d0 100644
--- a/security/hr_security.xml
+++ b/security/hr_security.xml
@@ -7,5 +7,9 @@
['|', ('company_ids', 'in', company_ids), '&', ('company_ids', '=', False), ('company_id', 'in', company_ids)]
+
+
+ ['|', '|', '|', ('partner_share', '=', False), ('company_id', 'parent_of', company_ids), ('company_id', '=', False), ('employee_ids.company_ids', 'in', company_ids)]
+