Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
3346 Widoki

Hi, I wanna link the job application form in Odoo 14, with the job's survey questions so that the applicant can fill out the survey questions during the job application.

I have tried to add the survey question to the job application form but it cannot work because the applicant must submit the job application in the db first so that I can associate the survey with the applicant.

My goal: I want the applicant to fill out the job application and then redirect them to the survey questions on the website and send the acknowledgment email to the applicant.

Any help will be greatly appreciated.


from odoo import http, _
from odoo.addons.http_routing.models.ir_http import slug
from odoo.http import request
from werkzeug.exceptions import NotFound
from odoo.addons.website_hr_recruitment.controllers.main import WebsiteHrRecruitment


class WebsiteHrRecruitmentInherit(WebsiteHrRecruitment):
@http.route([
'/jobs',
'/jobs/country/',
'/jobs/department/',
'/jobs/country//department/',
'/jobs/office/',
'/jobs/country//office/',
'/jobs/department//office/',
'/jobs/country//department//office/',
], type='http', auth="public", website=True, sitemap=sitemap_jobs)


def jobs(self, country=None, department=None, office_id=None, **kwargs):
survey_id = request.env['hr.applicant'].sudo().search([])
res = super(WebsiteHrRecruitmentInherit, self).jobs(self, country=None, department=None, office_id=None, **kwargs)
# print("Inherited ....", res)
return res()
# return http.request.render('hr_recruitment.survey', {'survey_id: survey_id'})

@http.route('''/jobs/apply/''', type='http', auth="public", website=True, sitemap=True)
def jobs_apply(self, job, **kwargs):
# survey_id = request.env['hr.job'].sudo().search([])
if not job.can_access_from_current_website():
raise NotFound()

for rec in self:
ctx = {}
ctx['email_to'] = rec.partner_id.email
ctx['email_from'] = self.env.user.user_id.email
ctx['send_email'] = True
ctx['partner_id'] = rec.partner_id.id
template = self.env.ref('hr_recruitment_custom.acknowledgment_email_template')
template.with_context(ctx).send_mail(
rec.id, force_send=True, raise_exception=False)

error = {}
default = {}
if 'website_hr_recruitment_error' in request.session:
error = request.session.pop('website_hr_recruitment_error')
default = request.session.pop('website_hr_recruitment_default')

return request.render("website_hr_recruitment.apply", {
'job': job,
'error': error,
'default': default,
# 'survey_id': survey_id,
})


Awatar
Odrzuć
Powiązane posty Odpowiedzi Widoki Czynność
2
maj 21
2584
1
cze 22
2410
0
lip 23
2084
1
sie 22
4187
2
cze 22
4649