diff --git a/addons/hr/models/hr_departure_reason.py b/addons/hr/models/hr_departure_reason.py index e84db0f2761..f30f792266c 100644 --- a/addons/hr/models/hr_departure_reason.py +++ b/addons/hr/models/hr_departure_reason.py @@ -12,6 +12,8 @@ class DepartureReason(models.Model): sequence = fields.Integer("Sequence", default=10) name = fields.Char(string="Reason", required=True, translate=True) + # YTI TODO: Move reason_code to hr + adapt _unlink_except_default_departure_reasons + # to use the codes instead of refs def _get_default_departure_reasons(self): return { @@ -22,4 +24,6 @@ class DepartureReason(models.Model): @api.ondelete(at_uninstall=False) def _unlink_except_default_departure_reasons(self): - raise UserError(_('Default departure reasons cannot be deleted.')) + master_reasons = [self.env.ref('hr.departure_fired', False), self.env.ref('hr.departure_resigned', False), self.env.ref('hr.departure_retired', False)] + if any(reason in master_reasons for reason in self): + raise UserError(_('Default departure reasons cannot be deleted.'))