public void Execute(IJobExecutionContext context) { _logger.Info("ResendAttendancesJob Execute starts..."); var logs = _db.GetUnsyncAttendanceLogs(); _logger.InfoFormat("Failed attendance logs count:{count}", logs.Count); foreach (var log in logs) { var workerId = EnsureCurrentWorker(log); switch (log.LogStatus) { case AttendanceStatus.CheckIn: EnsureCheckIn(log, workerId); break; case AttendanceStatus.CheckOut: EnsureCheckOut(log, workerId); break; default: _logger.ErrorFormat("Not support device type:{@attendance}", log); break; } } _logger.Info("ResendAttendancesJob Execute ends."); }