void ITimeSliceRepository.PublishTimeSlice(DateTime startTime, int duration, TimeSliceType type, string description) { _context.TimeSlices.Add(new TimeSlice { StartTime = startTime, Duration = duration, Type = type, Description = description }); _context.SaveChanges(); }
private void StopClockAndAccumulateTotals() { var elapsedTime = _clock.Stop(); TimeSliceType type = TimeSliceType.Unknown; if (IsInProductiveState) { type = TimeSliceType.Productive; _timeInFocus.Add(elapsedTime); } else { type = TimeSliceType.OnBreak; _timeOnBreak.Add(elapsedTime); } _repository.PublishTimeSlice(_clock.StartTime, (int)Math.Round(elapsedTime.TotalMinutes), type, PomodoroDescription); PomodoroDescription = string.Empty; }
/// <summary> /// Initializes a new instance of the <see cref="StatisticsByTimeSliceQuery"/> class. /// </summary> /// <param name="timeRange">The time range.</param> /// <param name="timeSliceTypeFilter">The slice type which should be used to filter.</param> public StatisticsByTimeSliceQuery(ITimeSlice timeRange, TimeSliceType timeSliceTypeFilter) { TimeRange = timeRange; TimeSliceFilter = timeSliceTypeFilter; }