diff --git a/addons/hr/models/res_partner.py b/addons/hr/models/res_partner.py index b0329927416..6b3ef53787d 100644 --- a/addons/hr/models/res_partner.py +++ b/addons/hr/models/res_partner.py @@ -32,10 +32,18 @@ class Partner(models.Model): def action_open_employees(self): self.ensure_one() + if len(self.employee_ids) > 1: + return { + 'name': _('Related Employees'), + 'type': 'ir.actions.act_window', + 'res_model': 'hr.employee', + 'view_mode': 'form', + 'domain': [('id', 'in', self.employee_ids.ids)], + } return { - 'name': _('Related Employees'), + 'name': _('Employee'), 'type': 'ir.actions.act_window', 'res_model': 'hr.employee', - 'view_mode': 'kanban,tree,form', - 'domain': [('id', 'in', self.employee_ids.ids)], + 'res_id': self.employee_ids.id, + 'view_mode': 'form', } diff --git a/addons/hr/models/res_users.py b/addons/hr/models/res_users.py index 962c8d85efc..d25dbb3c1e9 100644 --- a/addons/hr/models/res_users.py +++ b/addons/hr/models/res_users.py @@ -311,3 +311,22 @@ class User(models.Model): company_id=self.env.company.id, **self.env['hr.employee']._sync_user(self) )) + + def action_open_employees(self): + self.ensure_one() + employees = self.employee_ids + if len(employees) > 1: + return { + 'name': _('Related Employees'), + 'type': 'ir.actions.act_window', + 'res_model': 'hr.employee', + 'view_mode': 'kanban,tree,form', + 'domain': [('id', 'in', employees.ids)], + } + return { + 'name': _('Employee'), + 'type': 'ir.actions.act_window', + 'res_model': 'hr.employee', + 'res_id': employees.id, + 'view_mode': 'form', + } diff --git a/addons/hr/views/res_partner_views.xml b/addons/hr/views/res_partner_views.xml index cf8062b32c2..f379caa8425 100644 --- a/addons/hr/views/res_partner_views.xml +++ b/addons/hr/views/res_partner_views.xml @@ -9,7 +9,7 @@ diff --git a/addons/hr/views/res_users.xml b/addons/hr/views/res_users.xml index 842c3760959..d829907634b 100644 --- a/addons/hr/views/res_users.xml +++ b/addons/hr/views/res_users.xml @@ -234,13 +234,6 @@ - - Employees - hr.employee - kanban,tree,form - [('user_id', '=', active_id)] - - res.users.form.inherit res.users @@ -257,13 +250,13 @@ -