diff --git a/yuthon_hr_attendance/models/overtime_approval.py b/yuthon_hr_attendance/models/overtime_approval.py index bf5e849b2..ade3f6ccc 100644 --- a/yuthon_hr_attendance/models/overtime_approval.py +++ b/yuthon_hr_attendance/models/overtime_approval.py @@ -31,7 +31,6 @@ class OvertimeApprovals(models.Model): overtime_hours = fields.Float(string="本月加班时长") start_time = fields.Datetime(string="开始时间") end_time = fields.Datetime(string="结束时间") - last_attendance = fields.Boolean(string="上月全勤", compute='_compute_last_attendance', store=True) type_overtime = fields.Selection([('work', '工作日加班'), ('weekend', '周末加班'), ('holiday', '节假日加班')], string="加班类型", compute="_compute_overtime_type") urgency_level = fields.Selection([('normal', '普件'), ('urgent', '急件'), ('emergency', '特急件')], string='紧急度', diff --git a/yuthon_hr_attendance/views/inherit_hr_employee.xml b/yuthon_hr_attendance/views/inherit_hr_employee.xml index 49ed95c37..6b10b84e8 100644 --- a/yuthon_hr_attendance/views/inherit_hr_employee.xml +++ b/yuthon_hr_attendance/views/inherit_hr_employee.xml @@ -6,7 +6,7 @@ - + diff --git a/yuthon_hr_employee/wizard/hr_employee_wizard.py b/yuthon_hr_employee/wizard/hr_employee_wizard.py index 4bdc6018d..69f3667f8 100644 --- a/yuthon_hr_employee/wizard/hr_employee_wizard.py +++ b/yuthon_hr_employee/wizard/hr_employee_wizard.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- from odoo import models, fields, api, _, SUPERUSER_ID from odoo.exceptions import ValidationError, UserError +from datetime import datetime, timedelta import xlrd import base64 import datetime @@ -35,6 +36,14 @@ class YuthonHrEmployeeWizard(models.Model): def employee_user_data(self, row): employee_name = self.env['hr.employee'].search([('name', '=', row[0].value)]) + base_date = datetime(1900, 1, 1) + user_number_start_time = base_date + timedelta(days=row[2].value - 2) if row[2].value > 0 else base_date + user_number_end_time = base_date + timedelta(days=row[3].value - 2) if row[3].value > 0 else base_date + dang_data = base_date + timedelta(days=row[6].value - 2) if row[6].value > 0 else base_date + political_aspects_dict = {'中共党员': 'cpc_dang', '民盟': 'nld', '共青团员': 'league_member', '群众': 'people', '': ''} + political_aspects = political_aspects_dict[row[5].value] + card = row[1].value if row[1].value else None + last_attendance = row[7].value # if row[2].value: # date1 = pd.to_datetime(row[2].value, unit='d', origin='1899-12-30') # else: @@ -42,10 +51,12 @@ class YuthonHrEmployeeWizard(models.Model): # interrupt_work_month = row[3].value # number = row[0].value employee_date = { - 'last_year_salary': row[1].value - # 'number':number, - # 'entry_date': date1, - # 'interrupt_work_month': interrupt_work_month, + 'user_number_start_time': user_number_start_time, + 'user_number_end_time': user_number_end_time, + 'dang_data':dang_data, + 'identification_id':card, + 'political_aspects': political_aspects, + 'last_attendance': last_attendance, } if employee_name: employee_name.write(employee_date) @@ -63,8 +74,6 @@ class YuthonHrEmployeeWizard(models.Model): # job_lv_id = self.env['yuthon.job.lv'].search([('name', '=', row[9].value)]) # marital_dict = {'单身': 'single', '已婚': 'married', '合法同居者': 'cohabitant', '丧偶': 'widower', '离异': 'divorced', '': ''} # marital = marital_dict[row[19].value] - # political_aspects_dict = {'中共党员': 'cpc_dang', '民盟': 'nld', '共青团员': 'league_member', '群众': 'people', '': ''} - # political_aspects = political_aspects_dict[row[26].value] # role = row[4].value.split(',') # role_list =[] # user_role_id = self.env['soong.user.role'] @@ -85,7 +94,6 @@ class YuthonHrEmployeeWizard(models.Model): # entry_date = datetime.fromtimestamp(open_start_time) # else: # entry_date = datetime.strptime(open_start_time, '%Y-%m-%d') - # card = row[20].value if row[20].value else None # phone = row[21].value if row[21].value else None # employee_date = { # 'identification_id':card,