Odoo-Tutorial/employee_management/wizard/add_employee_wizard.py
2025-06-21 10:11:54 +07:00

45 lines
1.4 KiB
Python

from odoo import models, fields
class AddEmployeeWizard(models.TransientModel):
_name = 'add.employee.wizard'
_description = 'Add Employee Wizard'
# Thông tin từ res.partner
name = fields.Char(string='Name', required=True)
email = fields.Char(string='Email')
phone = fields.Char(string='Phone')
image_1920 = fields.Image(string="Avatar")
# Thông tin riêng của employee
employee_code = fields.Char(string='Employee Code', required=True)
department = fields.Char(string='Department')
position = fields.Char(string='Position')
def action_add_employee(self):
self.ensure_one()
# Tạo partner
partner = self.env['res.partner'].create({
'name': self.name,
'email': self.email,
'phone': self.phone,
'image_1920': self.image_1920,
})
# Tạo employee.profile gắn với partner_id
employee = self.env['employee.profile'].create({
'partner_id': partner.id,
'employee_code': self.employee_code,
'department': self.department,
'position': self.position,
})
return {
'type': 'ir.actions.act_window',
'res_model': 'employee.profile',
'res_id': employee.id,
'view_mode': 'form',
'target': 'current',
}