diff --git a/yuthon_hr_attendance/models/overtime_approval.py b/yuthon_hr_attendance/models/overtime_approval.py index 94beebc68..c51f7b59a 100644 --- a/yuthon_hr_attendance/models/overtime_approval.py +++ b/yuthon_hr_attendance/models/overtime_approval.py @@ -167,13 +167,13 @@ class OvertimeApprovals(models.Model): corrected_end_time = max_allowed_end_time - timedelta(hours=8) rec.end_time = corrected_end_time - @api.depends('users_id', 'duration') + @api.depends('users_id', 'duration', 'start_time') def _compute_overtime_hours(self): for rec in self: rec.overtime_hours = 0.0 - if not rec.users_id: + if not rec.users_id or not rec.start_time: continue - now = datetime.now() # 获取当前时间(datetime类型) + now = rec.start_time # 获取当前时间(datetime类型) first_datetime = datetime(now.year, now.month, 1, 0, 0, 0) if now.month == 12: next_month_datetime = datetime(now.year + 1, 1, 1, 0, 0, 0) diff --git a/yuthon_hr_employee/models/yuthon_hr_employee.py b/yuthon_hr_employee/models/yuthon_hr_employee.py index 39ed1cb5f..a998e85a7 100644 --- a/yuthon_hr_employee/models/yuthon_hr_employee.py +++ b/yuthon_hr_employee/models/yuthon_hr_employee.py @@ -965,7 +965,14 @@ class YuthonHrEmployee(models.Model): ('text','=', '育儿假分配') ], limit=1) if not parenting_line_ids: - reports_id.sudo().write({'parenting_line_ids': parenting_line_ids}) + reports_id.parenting_line_ids.sudo().create({ + 'vacation_id': reports_id.id, + 'employee_id': employee.id, + 'update_date': date_from, + 'lines': total_days, + 'end_date': date_to, + 'text': '育儿假分配' + }) self.env['hr.leave.allocation'].create({ 'name': '育儿假分配',