Files
gzth/yuthon_hr_employee_approval/wizard/interview_approval_wizard.py
T
2024-11-20 21:10:58 +08:00

41 lines
2.0 KiB
Python

# -*- coding: utf-8 -*-
from odoo import models, api, fields, _
from odoo.exceptions import UserError
class InterviewApprovalWizard(models.Model):
_name = 'interview.approval.wizard'
_description = '面试结果弹窗'
interview_approval_line_ids = fields.One2many('interview.approval.wizard.line', 'interview_approval_wizard_id', string='面试审批')
def confirm(self):
interview_approval_list = []
for interview_approval in self.interview_approval_line_ids:
interview_id = self.env['interview.approval.line'].search([('name', '=', interview_approval.name)])
interview_id.write({'interview_stage_id': interview_approval.interview_stage_id.id,
'evaluation': interview_approval.evaluation})
applicant_id = self.env['hr.applicant'].search([('partner_name', '=', interview_approval.name)])
interview_approval_list.append([0, 0, {
'applicant_id': applicant_id.id,
'appraise': interview_approval.evaluation,
'applicant_time': interview_approval.applicant_time,
'employee_ids': interview_approval.employee_ids,
'interview_stage_id': interview_approval.interview_stage_id.id,
}])
applicant_id.write({'stage_id': interview_approval.interview_stage_id.id,
'interview_approval_ids': interview_approval_list})
class InterviewApprovalWizardLine(models.Model):
_name = 'interview.approval.wizard.line'
_description = '面试结果弹窗明细'
interview_approval_wizard_id = fields.Many2one('interview.approval.wizard', string='面试结果弹窗')
name = fields.Char(string='姓名')
applicant_time = fields.Datetime(string="面试时间")
employee_ids = fields.Many2many('hr.employee', string='面试官')
stage_id = fields.Many2one('hr.recruitment.stage', string='阶段')
interview_stage_id = fields.Many2one('hr.recruitment.stage', string='面试结果')
evaluation = fields.Text(string='评价')