From 3751379f1e9a4c215fb6eb898b4ccc67659b9ace Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 10 May 2022 21:51:50 +0700 Subject: initial commit 2 --- .../hr_recruitment_survey/models/hr_applicant.py | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 addons/hr_recruitment_survey/models/hr_applicant.py (limited to 'addons/hr_recruitment_survey/models/hr_applicant.py') diff --git a/addons/hr_recruitment_survey/models/hr_applicant.py b/addons/hr_recruitment_survey/models/hr_applicant.py new file mode 100644 index 00000000..969253c7 --- /dev/null +++ b/addons/hr_recruitment_survey/models/hr_applicant.py @@ -0,0 +1,26 @@ +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import api, fields, models + + +class Applicant(models.Model): + _inherit = "hr.applicant" + + survey_id = fields.Many2one('survey.survey', related='job_id.survey_id', string="Survey", readonly=True) + response_id = fields.Many2one('survey.user_input', "Response", ondelete="set null") + + def action_start_survey(self): + self.ensure_one() + # create a response and link it to this applicant + if not self.response_id: + response = self.survey_id._create_answer(partner=self.partner_id) + self.response_id = response.id + else: + response = self.response_id + # grab the token of the response and start surveying + return self.survey_id.action_start_survey(answer=response) + + def action_print_survey(self): + """ If response is available then print this response otherwise print survey form (print template of the survey) """ + self.ensure_one() + return self.survey_id.action_print_survey(answer=self.response_id) -- cgit v1.2.3