[FIX] hr_skills: Allow deleting skill, skill levels and skill types

PURPOSE
=======

Starting from 16.0 we introduced some reports to log skills history, skills evolution.

It means that the skill model is linked to another model, preventing us to delete it.

Usually, we use the message "link to x, archive it instead", but archiving a skill will only be possible from v17 (new task)

So, we need to be able to delete a skill on v16

closes odoo/odoo#131300

Taskid: 3456843
X-original-commit: d9672b55e7a596778fd542541f39e5216c06cb40
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit is contained in:
Yannick Tivisse
2023-08-09 19:27:15 +02:00
parent 630178359d
commit 9aced74696
2 changed files with 6 additions and 6 deletions
+3 -3
View File
@@ -13,9 +13,9 @@ class EmployeeSkill(models.Model):
_order = "skill_type_id, skill_level_id"
employee_id = fields.Many2one('hr.employee', required=True, ondelete='cascade')
skill_id = fields.Many2one('hr.skill', compute='_compute_skill_id', store=True, domain="[('skill_type_id', '=', skill_type_id)]", readonly=False, required=True)
skill_level_id = fields.Many2one('hr.skill.level', compute='_compute_skill_level_id', domain="[('skill_type_id', '=', skill_type_id)]", store=True, readonly=False, required=True)
skill_type_id = fields.Many2one('hr.skill.type', required=True)
skill_id = fields.Many2one('hr.skill', compute='_compute_skill_id', store=True, domain="[('skill_type_id', '=', skill_type_id)]", readonly=False, required=True, ondelete='cascade')
skill_level_id = fields.Many2one('hr.skill.level', compute='_compute_skill_level_id', domain="[('skill_type_id', '=', skill_type_id)]", store=True, readonly=False, required=True, ondelete='cascade')
skill_type_id = fields.Many2one('hr.skill.type', required=True, ondelete='cascade')
level_progress = fields.Integer(related='skill_level_id.level_progress')
_sql_constraints = [
@@ -12,9 +12,9 @@ class HrEmployeeSkillLog(models.Model):
employee_id = fields.Many2one('hr.employee', required=True, ondelete='cascade')
department_id = fields.Many2one('hr.department')
skill_id = fields.Many2one('hr.skill', compute='_compute_skill_id', store=True, domain="[('skill_type_id', '=', skill_type_id)]", readonly=False, required=True)
skill_level_id = fields.Many2one('hr.skill.level', compute='_compute_skill_level_id', domain="[('skill_type_id', '=', skill_type_id)]", store=True, readonly=False, required=True)
skill_type_id = fields.Many2one('hr.skill.type', required=True)
skill_id = fields.Many2one('hr.skill', compute='_compute_skill_id', store=True, domain="[('skill_type_id', '=', skill_type_id)]", readonly=False, required=True, ondelete='cascade')
skill_level_id = fields.Many2one('hr.skill.level', compute='_compute_skill_level_id', domain="[('skill_type_id', '=', skill_type_id)]", store=True, readonly=False, required=True, ondelete='cascade')
skill_type_id = fields.Many2one('hr.skill.type', required=True, ondelete='cascade')
level_progress = fields.Integer(related='skill_level_id.level_progress', store=True, group_operator="avg")
date = fields.Date(default=fields.Date.context_today)