diff --git a/yuthon_hr_attendance/models/hr_attendance.py b/yuthon_hr_attendance/models/hr_attendance.py index 87fb2b8f2..ef0584d94 100644 --- a/yuthon_hr_attendance/models/hr_attendance.py +++ b/yuthon_hr_attendance/models/hr_attendance.py @@ -115,10 +115,14 @@ class HrAttendance(models.Model): # 仅在修改check_out字段时执行逻辑 if 'check_out' in vals: for record in self: + target_date = record.current_data + next_day = target_date + timedelta(days=1) detail_records = self.env['hr.attendance.detail'].search([ ('employee_id', '=', record.employee_id.id), - ('checkin_time', '>=', fields.Datetime.to_string(record.current_data)), - ('checkin_time', '<', fields.Datetime.to_string(record.current_data + fields.Date(days=1))) + ('checkin_time', '>=', + fields.Datetime.to_string(fields.Datetime.combine(target_date, fields.Datetime.min.time()))), + ('checkin_time', '<', + fields.Datetime.to_string(fields.Datetime.combine(next_day, fields.Datetime.min.time()))) ]) if detail_records: