private async Task <bool> HandleAsync(MaintenanceJobFinished e) { Log.Information("Finish Maintenance job: {JobId}, {ActualStartTime}, {EndTime}", e.JobId, e.StartTime, e.EndTime); try { using (var transaction = await _dbContext.Database.BeginTransactionAsync()) { // insert maintetancejob var job = await _dbContext.MaintenanceJobs.FirstOrDefaultAsync(j => j.Id == e.JobId); job.ActualStartTime = e.StartTime; job.ActualEndTime = e.EndTime; job.Notes = e.Notes; await _dbContext.SaveChangesAsync(); await transaction.CommitAsync(); } } catch (DbUpdateException) { Log.Warning("Skipped adding maintenance job with id {JobId}.", e.JobId); } return(true); }
private async Task HandleAsync(MaintenanceJobFinished mjf) { Log.Information("Finish Maintenance Job: {Id}, {StartTime}, {EndTime}", mjf.JobId, mjf.StartTime, mjf.EndTime); await _repo.MarkMaintenanceJobAsFinished(mjf.JobId, mjf.StartTime, mjf.EndTime); }
private async Task <bool> HandleCommand(string calendarId, MaintenanceJobFinished newEvent) { WorkshopCalendarEvent calendarEvent = new WorkshopCalendarEvent() { EventDate = calendarId, PlannedEndDateTime = newEvent.StartTime, PlannedStartDateTime = newEvent.EndTime, MessageType = newEvent.MessageType }; try { ReplaceOneResult actionResult = await _context.WorkshopCalendarEvents.ReplaceOneAsync(e => e.Id == newEvent.JobId && e.EventDate == calendarId, calendarEvent , new ReplaceOptions { IsUpsert = true }); return(actionResult.IsAcknowledged && actionResult.ModifiedCount > 0); } catch (Exception ex) { throw ex; } }
private async Task HandleAsync(MaintenanceJobFinished mjf) { await _repo.MarkMaintenanceJobAsFinished(mjf.JobId, mjf.StartTime, mjf.EndTime); }
private async Task HandleAsync(MaintenanceJobFinished mjf) { Log.Information("Remove finished Maintenance Job: {Id}", mjf.JobId); await _repo.RemoveMaintenanceJobsAsync(new string[] { mjf.JobId.ToString() }); }