summaryrefslogtreecommitdiff
path: root/addons/hr_skills_slides/models/slide_channel.py
diff options
context:
space:
mode:
Diffstat (limited to 'addons/hr_skills_slides/models/slide_channel.py')
-rw-r--r--addons/hr_skills_slides/models/slide_channel.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/addons/hr_skills_slides/models/slide_channel.py b/addons/hr_skills_slides/models/slide_channel.py
new file mode 100644
index 00000000..5729f02c
--- /dev/null
+++ b/addons/hr_skills_slides/models/slide_channel.py
@@ -0,0 +1,27 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import fields, models
+
+
+class SlideChannelPartner(models.Model):
+ _inherit = 'slide.channel.partner'
+
+ def _recompute_completion(self):
+ res = super(SlideChannelPartner, self)._recompute_completion()
+ partner_has_completed = {channel_partner.partner_id.id: channel_partner.channel_id for channel_partner in self}
+ employees = self.env['hr.employee'].sudo().search([('user_id.partner_id', 'in', list(partner_has_completed.keys()))])
+ for employee in employees:
+ line_type = self.env.ref('hr_skills_slides.resume_type_training', raise_if_not_found=False)
+ channel = partner_has_completed[employee.user_id.partner_id.id]
+ self.env['hr.resume.line'].create({
+ 'employee_id': employee.id,
+ 'name': channel.name,
+ 'date_start': fields.Date.today(),
+ 'date_end': fields.Date.today(),
+ 'description': channel.description,
+ 'line_type_id': line_type and line_type.id,
+ 'display_type': 'course',
+ 'channel_id': channel.id
+ })
+ return res