private async Task LoadAllTracesAsync() { var tracesResult = await TracesCollectorService.GetAllTracesForReservationAsync(_currentReservationId); if (tracesResult.Success) { var traces = tracesResult.Result.ValueOr(new List <TraceItemModel>()); AllTracesDictionary.AddTracesRange(traces); } else { var errorMessage = tracesResult.ErrorMessage.ValueOrException(new NotImplementedException()); await ApaleoOneNotificationService.ShowErrorAsync(errorMessage); } }
private void UpdateCompletedTracesText() { var elementCount = AllTracesDictionary .SelectMany(dict => dict.Value) .Where(trace => trace.State == TraceState.Completed) .ToList() .Count; HasCompletedTraces = elementCount > 0; if (!HasCompletedTraces) { IsCompletedTracesVisible = false; } CompletedTracesCheckBoxText = string.Format(TextConstants.TracesShowCompletedCheckboxTextFormat, elementCount); }
protected override async Task LoadTracesAsync() { await LoadAllTracesAsync(); ActiveTracesDictionary.AddTracesRange( AllTracesDictionary .SelectMany(dict => dict.Value) .Where(trace => trace.State == TraceState.Active && trace.DueDate >= DateTime.Today) .ToList()); OverdueTraces = AllTracesDictionary .SelectMany(dict => dict.Value) .Where(trace => trace.State == TraceState.Active && trace.DueDate < DateTime.Today) .ToList(); AllTracesDictionary.SortValues(new TraceStateComparer()); UpdateCompletedTracesText(); }