Files
Odoo-Modules/graphify-out/cache/0fb3c1e2e12930d499d7652710bb39905b0bfc42613f1b1f24ce2fb61346a0a2.json
gsinghpal 41d0908ade changes
2026-04-24 21:04:38 -04:00

1 line
43 KiB
JSON

{"nodes": [{"id": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "label": "hr_attendance.py", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L1"}, {"id": "hr_attendance_fclk_utc_to_local_str", "label": "_fclk_utc_to_local_str()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L15"}, {"id": "hr_attendance_fclk_email_section", "label": "_fclk_email_section()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L33"}, {"id": "hr_attendance_fclk_email_wrap", "label": "_fclk_email_wrap()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L58"}, {"id": "hr_attendance_hrattendance", "label": "HrAttendance", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L118"}, {"id": "hr_attendance_compute_net_hours", "label": "_compute_net_hours()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L200"}, {"id": "hr_attendance_compute_overtime_hours", "label": "_compute_overtime_hours()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L207"}, {"id": "hr_attendance_cron_fusion_auto_clock_out", "label": "_cron_fusion_auto_clock_out()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L230"}, {"id": "hr_attendance_cron_fusion_check_absences", "label": "_cron_fusion_check_absences()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L320"}, {"id": "hr_attendance_cron_fusion_employee_reminders", "label": "_cron_fusion_employee_reminders()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L395"}, {"id": "hr_attendance_cron_fusion_weekly_summary", "label": "_cron_fusion_weekly_summary()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L451"}, {"id": "hr_attendance_fclk_notify_office", "label": "_fclk_notify_office()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L539"}, {"id": "hr_attendance_fclk_send_employee_reminder", "label": "_fclk_send_employee_reminder()", "file_type": "code", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L560"}, {"id": "hr_attendance_rationale_16", "label": "Convert a naive UTC datetime to a formatted string in the employee's timezone.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L16"}, {"id": "hr_attendance_rationale_34", "label": "Build a details table matching the Fusion email design system.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L34"}, {"id": "hr_attendance_rationale_67", "label": "Build a complete Fusion Clock email matching the Fusion design system. No u", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L67"}, {"id": "hr_attendance_rationale_231", "label": "Cron job: auto clock-out employees after shift + grace period.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L231"}, {"id": "hr_attendance_rationale_321", "label": "Cron job: check for absent employees (no attendance on workday).", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L321"}, {"id": "hr_attendance_rationale_396", "label": "Cron job: send clock-in/out reminders to employees.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L396"}, {"id": "hr_attendance_rationale_452", "label": "Cron job: send weekly summary email to employees (Monday 8 AM).", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L452"}, {"id": "hr_attendance_rationale_540", "label": "Create a mail.activity for the office user.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L540"}, {"id": "hr_attendance_rationale_561", "label": "Send a notification to an employee via internal note.", "file_type": "rationale", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L561"}], "edges": [{"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "logging", "relation": "imports", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L5", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "pytz", "relation": "imports", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L6", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "datetime", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L7", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "odoo", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L8", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "odoo_tools", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L9", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "users_gurpreet_github_odoo_modules_fusion_clock_models_tz_utils_py", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L10", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_fclk_utc_to_local_str", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L15", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_fclk_email_section", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L33", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_fclk_email_wrap", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L58", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_hrattendance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L118", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_compute_net_hours", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L200", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_compute_overtime_hours", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L207", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_cron_fusion_auto_clock_out", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L230", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_cron_fusion_check_absences", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L320", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_cron_fusion_employee_reminders", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L395", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_cron_fusion_weekly_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L451", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_fclk_notify_office", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L539", "weight": 1.0}, {"source": "users_gurpreet_github_odoo_modules_fusion_clock_models_hr_attendance_py", "target": "hr_attendance_fclk_send_employee_reminder", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L560", "weight": 1.0}, {"source": "hr_attendance_fclk_email_wrap", "target": "hr_attendance_fclk_email_section", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L86", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_auto_clock_out", "target": "hr_attendance_fclk_utc_to_local_str", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L279", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_auto_clock_out", "target": "hr_attendance_fclk_notify_office", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L300", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_check_absences", "target": "hr_attendance_fclk_notify_office", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L383", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_employee_reminders", "target": "hr_attendance_fclk_send_employee_reminder", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L431", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_employee_reminders", "target": "hr_attendance_fclk_utc_to_local_str", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L435", "weight": 1.0}, {"source": "hr_attendance_cron_fusion_weekly_summary", "target": "hr_attendance_fclk_email_wrap", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L507", "weight": 1.0}, {"source": "hr_attendance_fclk_send_employee_reminder", "target": "hr_attendance_fclk_email_wrap", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L576", "weight": 1.0}, {"source": "hr_attendance_rationale_16", "target": "hr_attendance_fclk_utc_to_local_str", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L16", "weight": 1.0}, {"source": "hr_attendance_rationale_34", "target": "hr_attendance_fclk_email_section", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L34", "weight": 1.0}, {"source": "hr_attendance_rationale_67", "target": "hr_attendance_fclk_email_wrap", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L67", "weight": 1.0}, {"source": "hr_attendance_rationale_231", "target": "hr_attendance_hrattendance_cron_fusion_auto_clock_out", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L231", "weight": 1.0}, {"source": "hr_attendance_rationale_321", "target": "hr_attendance_hrattendance_cron_fusion_check_absences", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L321", "weight": 1.0}, {"source": "hr_attendance_rationale_396", "target": "hr_attendance_hrattendance_cron_fusion_employee_reminders", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L396", "weight": 1.0}, {"source": "hr_attendance_rationale_452", "target": "hr_attendance_hrattendance_cron_fusion_weekly_summary", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L452", "weight": 1.0}, {"source": "hr_attendance_rationale_540", "target": "hr_attendance_hrattendance_fclk_notify_office", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L540", "weight": 1.0}, {"source": "hr_attendance_rationale_561", "target": "hr_attendance_hrattendance_fclk_send_employee_reminder", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L561", "weight": 1.0}], "raw_calls": [{"caller_nid": "hr_attendance_fclk_utc_to_local_str", "callee": "localize", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L24"}, {"caller_nid": "hr_attendance_fclk_utc_to_local_str", "callee": "astimezone", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L25"}, {"caller_nid": "hr_attendance_fclk_utc_to_local_str", "callee": "timezone", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L25"}, {"caller_nid": "hr_attendance_fclk_utc_to_local_str", "callee": "strftime", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L26"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L86"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L89"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L96"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L99"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L106"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L107"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "append", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L113"}, {"caller_nid": "hr_attendance_fclk_email_wrap", "callee": "join", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L115"}, {"caller_nid": "hr_attendance_compute_net_hours", "callee": "max", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L204"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L208"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L209"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L210"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L210"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "_get_fclk_scheduled_hours", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L219"}, {"caller_nid": "hr_attendance_compute_overtime_hours", "callee": "round", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L223"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L232"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L233"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L236"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L236"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L237"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L237"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "int", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L238"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L238"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "now", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L240"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L242"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L242"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L246"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "timezone", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L254"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "date", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L255"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "astimezone", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L255"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "localize", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L255"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "_get_fclk_scheduled_times", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L256"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L258"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L259"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "min", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L260"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "min", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L263"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L265"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L265"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L273"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L273"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "_get_fclk_break_minutes", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L275"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L276"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L276"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "message_post", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L278"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L278"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "create", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L286"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L297"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L297"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "info", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L309"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "error", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L314"}, {"caller_nid": "hr_attendance_cron_fusion_auto_clock_out", "callee": "str", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L316"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L322"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "int", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L323"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L323"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "int", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L324"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L324"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L326"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L326"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L330"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L331"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "get_local_today", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L334"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L334"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "weekday", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L336"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "get_local_day_boundaries", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L339"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L341"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L341"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "search_count", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L349"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L349"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L357"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "create", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L364"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L372"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L372"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "replace", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L374"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "get_local_day_boundaries", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L375"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "search_count", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L376"}, {"caller_nid": "hr_attendance_cron_fusion_check_absences", "callee": "info", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L392"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L397"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L398"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L401"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L401"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "float", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L402"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L402"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "now", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L404"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L406"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L406"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "get_local_today", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L411"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "weekday", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L413"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "_get_fclk_scheduled_times", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L419"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L423"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "get_local_day_boundaries", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L425"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "search_count", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L426"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L426"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L437"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L437"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L440"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "write", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L448"}, {"caller_nid": "hr_attendance_cron_fusion_employee_reminders", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L448"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L453"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "get_param", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L454"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L457"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L457"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "get_local_today", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L469"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "weekday", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L470"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L473"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "timedelta", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L474"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "strftime", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L475"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "strftime", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L476"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "get_local_day_boundaries", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L478"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "get_local_day_boundaries", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L479"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "search", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L481"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L481"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "round", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L488"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sum", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L488"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "round", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L489"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sum", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L489"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "search_count", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L490"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L490"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L496"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "search_count", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L497"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "str", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L517"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "str", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L518"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "create", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L527"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L527"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "send", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L534"}, {"caller_nid": "hr_attendance_cron_fusion_weekly_summary", "callee": "error", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L536"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "browse", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L543"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L543"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "exists", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L544"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "create", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L547"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L547"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "ref", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L548"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "_get_id", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L552"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "get_local_today", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L554"}, {"caller_nid": "hr_attendance_fclk_notify_office", "callee": "error", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L557"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "notify_info", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L564"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L564"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "send", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L590"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "create", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L590"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "sudo", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L590"}, {"caller_nid": "hr_attendance_fclk_send_employee_reminder", "callee": "error", "source_file": "/Users/gurpreet/Github/Odoo-Modules/fusion_clock/models/hr_attendance.py", "source_location": "L592"}]}