From f89ac984e7bfd204fdf83668302008586ca0550a Mon Sep 17 00:00:00 2001 From: Yannick Tivisse Date: Wed, 26 Apr 2017 11:19:43 +0200 Subject: [PATCH] [IMP,FIX] hr_recruitment: Add field 'HR Responsible' field + 2 small fixes - Add a field HR Responsible, who's the job responsible, not the recruitment responsible - Fix the read_group in `_compute_application_count` method - Only track subtypes for active employees --- addons/hr_recruitment/models/hr_job.py | 3 ++- addons/hr_recruitment/models/hr_recruitment.py | 2 +- .../views/hr_recruitment_config_settings_views.xml | 2 +- addons/hr_recruitment/views/hr_recruitment_views.xml | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/addons/hr_recruitment/models/hr_job.py b/addons/hr_recruitment/models/hr_job.py index 989b83ee6c0..e7648bcfe75 100644 --- a/addons/hr_recruitment/models/hr_job.py +++ b/addons/hr_recruitment/models/hr_job.py @@ -20,6 +20,7 @@ class Job(models.Model): 'hr.employee', related='department_id.manager_id', string="Department Manager", readonly=True, store=True) user_id = fields.Many2one('res.users', "Recruitment Responsible", track_visibility='onchange') + hr_responsible_id = fields.Many2one('res.users', "HR Responsible", track_visibility='onchange') document_ids = fields.One2many('ir.attachment', compute='_compute_document_ids', string="Applications") documents_count = fields.Integer(compute='_compute_document_ids', string="Documents") alias_id = fields.Many2one( @@ -47,7 +48,7 @@ class Job(models.Model): @api.multi def _compute_application_count(self): - read_group_result = self.env['hr.applicant'].read_group([('job_id', '=', self.id)], ['job_id'], ['job_id']) + read_group_result = self.env['hr.applicant'].read_group([('job_id', 'in', self.ids)], ['job_id'], ['job_id']) result = dict((data['job_id'][0], data['job_id_count']) for data in read_group_result) for job in self: job.application_count = result.get(job.id, 0) diff --git a/addons/hr_recruitment/models/hr_recruitment.py b/addons/hr_recruitment/models/hr_recruitment.py index 766fc4ccae9..f5e164a4aff 100644 --- a/addons/hr_recruitment/models/hr_recruitment.py +++ b/addons/hr_recruitment/models/hr_recruitment.py @@ -327,7 +327,7 @@ class Applicant(models.Model): @api.multi def _track_subtype(self, init_values): record = self[0] - if 'emp_id' in init_values and record.emp_id: + if 'emp_id' in init_values and record.emp_id and record.emp_id.active: return 'hr_recruitment.mt_applicant_hired' elif 'stage_id' in init_values and record.stage_id and record.stage_id.sequence <= 1: return 'hr_recruitment.mt_applicant_new' diff --git a/addons/hr_recruitment/views/hr_recruitment_config_settings_views.xml b/addons/hr_recruitment/views/hr_recruitment_config_settings_views.xml index 6890b520e97..54499005565 100644 --- a/addons/hr_recruitment/views/hr_recruitment_config_settings_views.xml +++ b/addons/hr_recruitment/views/hr_recruitment_config_settings_views.xml @@ -26,7 +26,7 @@

Recruitment Process

-
+
diff --git a/addons/hr_recruitment/views/hr_recruitment_views.xml b/addons/hr_recruitment/views/hr_recruitment_views.xml index 0173d691441..70b539e60a5 100644 --- a/addons/hr_recruitment/views/hr_recruitment_views.xml +++ b/addons/hr_recruitment/views/hr_recruitment_views.xml @@ -448,6 +448,7 @@ +