diff --git a/yuthon_hr_employee_approval/controllers/employee_login.py b/yuthon_hr_employee_approval/controllers/employee_login.py index eee4f7d9a..1efeb87a5 100644 --- a/yuthon_hr_employee_approval/controllers/employee_login.py +++ b/yuthon_hr_employee_approval/controllers/employee_login.py @@ -1,3 +1,5 @@ +import base64 + from odoo.http import Controller, request, route from odoo import models, fields, api, http, SUPERUSER_ID, _ from datetime import date, datetime, time @@ -17,6 +19,18 @@ class EmployeeLogin(Controller): record = request.env['yuthon.message.login'].sudo().browse(values['employee_id']) values['staff_name'] = record.staff_name if request.httprequest.method == 'POST': + attachment = kw.get('attachment') + if attachment: + attachment_data = attachment.read() + attachment_name = attachment.filename + attachment_id = request.env['ir.attachment'].sudo().create({ + 'name': attachment_name, + 'datas': base64.b64encode(attachment_data), + 'mimetype': attachment.content_type, + 'res_model': 'yuthon.message.login', + 'res_id': record.id, + }) + record.write({'login_document_id': attachment_id.id}) if "staff_name" in values and values.get("staff_name", ""): record.staff_name = values.get("staff_name", "") if "political" in values and values.get("political", ""): diff --git a/yuthon_hr_employee_approval/views/website_employee_views.xml b/yuthon_hr_employee_approval/views/website_employee_views.xml index 999a71710..0d2463ce6 100644 --- a/yuthon_hr_employee_approval/views/website_employee_views.xml +++ b/yuthon_hr_employee_approval/views/website_employee_views.xml @@ -46,7 +46,7 @@
+ onsubmit="this.action = '/hr/employee/create' + location.hash" enctype="multipart/form-data">
@@ -59,6 +59,10 @@ +
+
+ +