From fa172f2e4d36e3fa21878430f2480bdb932eada9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lucas=20Lef=C3=A8vre?= Date: Thu, 19 Sep 2019 13:01:44 +0000 Subject: [PATCH] [FIX] hr_holidays: Set leave manager if empty Currently, when an employee's manager (parent_id) changes, the leave manager (leave_manager_id) is set to the new manager if it was not manually changed (leave_manager_id != parent_id.user_id). Please, note that `parent_id` is an `hr.employee` while `leave_manager_id` is a `res.users`. Hence if `leave_manager_id` is not set, we have `leave_manager_id == False`. Next time we change `parent_id` (employee with a user) we have `False != parent_id.user_id` and the leave_manager_id is not set. --- addons/hr_holidays/models/hr_employee.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hr_holidays/models/hr_employee.py b/addons/hr_holidays/models/hr_employee.py index 155fc472ad3..d869c42ce36 100644 --- a/addons/hr_holidays/models/hr_employee.py +++ b/addons/hr_holidays/models/hr_employee.py @@ -124,7 +124,7 @@ class HrEmployeeBase(models.AbstractModel): super(HrEmployeeBase, self)._onchange_parent_id() previous_manager = self._origin.parent_id.user_id manager = self.parent_id.user_id - if manager and self.leave_manager_id == previous_manager: + if manager and self.leave_manager_id == previous_manager or not self.leave_manager_id: self.leave_manager_id = manager def _compute_show_leaves(self):