public void NavigateToPage(int pageIndex) { CurrentPageIndex = pageIndex; if (FaiCollectionBuffers == null || FaiCollectionBuffers.Count == 0) { CollectionsToShow = new List <IFaiCollection>(); return; } // If it is the first page ... if (pageIndex == 0) { CollectionsToShow = FaiCollectionBuffers .Take(RowsPerPage > FaiCollectionBuffers.Count ? FaiCollectionBuffers.Count : RowsPerPage) .ToList(); } // If it is the last page ... else if (pageIndex == TotalPages - 1) { var numRowsToShow = FaiCollectionBuffers.Count % RowsPerPage == 0 ? RowsPerPage : FaiCollectionBuffers.Count % RowsPerPage; CollectionsToShow = FaiCollectionBuffers.Skip(pageIndex * RowsPerPage).Take(numRowsToShow).ToList(); } else { CollectionsToShow = FaiCollectionBuffers.Skip(pageIndex * RowsPerPage).Take(RowsPerPage).ToList(); } }
/// <summary> /// Remove a list of collection from FaiCollectionBuffers /// </summary> /// <param name="selectedCollections"></param> public void Remove(IList <IFaiCollection> selectedCollections) { foreach (var collection in selectedCollections) { FaiCollectionBuffers.Remove(collection); } OnPropertyChanged(nameof(CollectionCount)); GenerateTotalYield(); GenerateTotalDayAndTotalHours(); CalculateTotalPages(); }
private void GenerateTotalDayAndTotalHours() { if (FaiCollectionBuffers == null || FaiCollectionBuffers.Count == 0) { TotalDays = 0; TotalHours = 0; return; } var dates = FaiCollectionBuffers.Select(c => c.InspectionTime).ToArray(); MaxDate = dates.Max(); MinDate = dates.Min(); var timeSpan = MaxDate - MinDate; TotalDays = timeSpan.TotalDays; TotalHours = timeSpan.TotalHours; }
private void GenerateTotalYield() { var yield = FaiCollectionBuffers.Count(collection => collection.Result == "OK") / (double)CollectionCount; TotalYield = $"{yield * 100 :F1}%"; }