diff --git a/LivreLand/View/FiltrageNoteView.xaml b/LivreLand/View/FiltrageNoteView.xaml index 2d19f6b..03b5971 100644 --- a/LivreLand/View/FiltrageNoteView.xaml +++ b/LivreLand/View/FiltrageNoteView.xaml @@ -39,6 +39,7 @@ diff --git a/LivreLand/ViewModel/DetailsLivreVM.cs b/LivreLand/ViewModel/DetailsLivreVM.cs index f5204f3..26f4851 100644 --- a/LivreLand/ViewModel/DetailsLivreVM.cs +++ b/LivreLand/ViewModel/DetailsLivreVM.cs @@ -106,6 +106,7 @@ namespace LivreLand.ViewModel private void ShowPicker() { Manager.GetAllStatusCommand.Execute(null); + Manager.SelectedStatus = this.Book.Status; IsPickerVisible = true; } diff --git a/ViewModels/ManagerVM.cs b/ViewModels/ManagerVM.cs index e0e0a55..b3c87f7 100644 --- a/ViewModels/ManagerVM.cs +++ b/ViewModels/ManagerVM.cs @@ -461,6 +461,7 @@ namespace ViewModels GroupedBooks = AllBooks.GroupBy(b => b.Author).OrderBy(group => group.Key); GroupedStatusBooks = AllBooks.GroupBy(b => b.Status).OrderBy(group => group.Key); } + OnPropertyChanged(nameof(GroupedBooks)); OnPropertyChanged(nameof(AllBooks)); } @@ -503,7 +504,7 @@ namespace ViewModels private async Task GetBooksByAuthor() { - var result = await Model.GetBooksByAuthor(SelectedAuthor.Name, Index, Count); + var result = await Model.GetBooksByAuthor(SelectedAuthor.Name, 0, 1000); NbBooks = result.count; IEnumerable someBooks = result.books; books.Clear(); @@ -512,6 +513,7 @@ namespace ViewModels books.Add(b); GroupedBooks = AllBooks.GroupBy(b => b.Author).OrderBy(group => group.Key); } + OnPropertyChanged(nameof(GroupedBooks)); OnPropertyChanged(nameof(AllBooks)); } @@ -534,7 +536,7 @@ namespace ViewModels private async Task GetBooksByDate() { - var result = await Model.GetBooksFromCollection(Index, Count); + var result = await Model.GetBooksFromCollection(0, 1000); NbBooks = result.count; IEnumerable someBooks = result.books; books.Clear(); @@ -543,9 +545,10 @@ namespace ViewModels if (b.PublishDate.Year == SelectedDate.PublishDate.Year) { books.Add(b); - GroupedBooks = AllBooks.GroupBy(b => b.Author).OrderBy(group => group.Key); + GroupedBooks = AllBooks.GroupBy(b => b.PublishDate.Year.ToString()).OrderBy(group => group.Key); } } + OnPropertyChanged(nameof(GroupedBooks)); OnPropertyChanged(nameof(AllBooks)); } @@ -574,21 +577,25 @@ namespace ViewModels private async Task GetBooksByRating() { - var result = await Model.GetBooksFromCollection(Index, Count); + var result = await Model.GetBooksFromCollection(0, 1000); NbBooks = result.count; IEnumerable someBooks = result.books; books.Clear(); - foreach (var book in someBooks.Select(b => new BookVM(b))) - { - if (book.UserRating == SelectedRating.Average) - { - //books.Add(new BookVM(book)); - GroupedBooks = AllBooks.GroupBy(b => b.Author).OrderBy(group => group.Key); - } - } + + var groupedBooks = someBooks + .Where(book => book.UserRating.HasValue) + .Select(book => new BookVM(book)) + .GroupBy(book => Math.Floor(book.UserRating.Value).ToString("0")) + .OrderBy(group => group.Key); + + GroupedBooks = groupedBooks; + + OnPropertyChanged(nameof(GroupedBooks)); OnPropertyChanged(nameof(AllBooks)); } + + private async Task GetAllRatings() { var result = await Model.GetBooksFromCollection(0, 1000);