diff --git a/yuthon_hr_attendance/models/hr_attendance.py b/yuthon_hr_attendance/models/hr_attendance.py index e088a11d9..62fad6ec6 100644 --- a/yuthon_hr_attendance/models/hr_attendance.py +++ b/yuthon_hr_attendance/models/hr_attendance.py @@ -1288,6 +1288,34 @@ class HrAttendance(models.Model): 'is_abnormal': False, 'absenteeism_card': False }) + go_approval_domain = [ + ('users_id', '=', employee.user_id.id), + ('work_end', '=', True), + ('start_date', '<=', current_date_str), + ('end_date', '>=', current_date_str) + ] + go_approval_record = self.env['go.approval'].search(go_approval_domain) + if go_approval_record: + attendance_domain = [ + ('employee_id', '=', employee.id), + ('current_data', '=', current_date_str), + ] + attendance_recs = self.env['hr.attendance'].search(attendance_domain) + if not attendance_recs: + return + workflow = self.env['soong.workflow.record'].search([ + ('code', '=', go_approval_record.code) + ], limit=1) + if workflow: + attendance_recs.write({ + 'workflow_id': workflow.id, + 'is_workflow': True, + 'is_no_card': False, + 'is_early_card': False, + 'is_late_card': False, + 'is_abnormal': False, + 'absenteeism_card': False + }) class card_remind_form(models.Model):