Exemple #1
0
        public ActionResult Index()
        {
            BookListPageViewModel model    = new BookListPageViewModel();
            FindAllBooksResponse  response = _bookService.FindAllBooks();

            model.AuthorViewModels = _authorService.FindAllAuthors().Authors.ConvertToAuthorViewModelList();
            model.AuthorViewModels.Insert(0, new AuthorViewModel()
            {
                AuthorId = null, Name = "Odaberite autora"
            });

            model.GenreViewModels = _genreService.FindAllGenres().Genres.ConvertToGenreViewModelList();
            model.GenreViewModels.Insert(0, new GenreViewModel()
            {
                GenreId = null, Genre = "Odaberite zanr"
            });

            model.LanguageViewModels = _languageService.FindAllLanguages().Languages.ConvertToLanguageViewModelList();
            model.LanguageViewModels.Insert(0, new LanguageViewModel()
            {
                LanguageId = null, Language = "Odaberite jezik"
            });

            if (response.Success)
            {
                model.BookViewModels = response.Books.ConvertToBookViewModelList();
                model.Success        = true;
            }
            else
            {
                model.Message = response.Message;
                model.Success = false;
            }
            return(View(model));
        }
Exemple #2
0
        public ActionResult Delete(int id)
        {
            DeleteBookRequest request = new DeleteBookRequest()
            {
                BookId = id
            };
            DeleteBookResponse response = _bookService.DeleteBook(request);

            if (response.Success)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                BookListPageViewModel model = new BookListPageViewModel();
                model.Success = false;
                model.Message = response.Message;
                return(View("Index", model));
            }
        }
        public ActionResult Index(BookListPageViewModel model)
        {
            BookListPageViewModel newModel = new BookListPageViewModel();

            newModel.BookViewModels = _bookService.FindBooks(model.BookSearchViewModel.ConvertToModel()).ConvertToViewModelList();

            newModel.AuthorList = _authorService.GetAllAuthors().ConvertToViewModelList();
            newModel.AuthorList.Insert(0, new AuthorViewModel()
            {
                AuthorId = null, Name = "Odaberite autora"
            });
            newModel.LanguageList = _languageService.GetAllLanguages().ConvertToViewModelList();
            newModel.LanguageList.Insert(0, new LanguageViewModel()
            {
                LanguageId = null, Language = "Odaberite jezik"
            });
            newModel.GenreList = _genreService.GetAllGenres().ConvertToViewModelList();
            newModel.GenreList.Insert(0, new GenreViewModel()
            {
                GenreId = null, Genre = "Odaberite žanr"
            });

            return(View(newModel));
        }
Exemple #4
0
        public ActionResult Index(BookListPageViewModel model, string titleSearchString, string isbnSearchString)
        {
            BookListPageViewModel newModel = new BookListPageViewModel();
            FindAllBooksResponse  response = _bookService.FindAllBooks();

            newModel.AuthorViewModels = _authorService.FindAllAuthors().Authors.ConvertToAuthorViewModelList();
            newModel.AuthorViewModels.Insert(0, new AuthorViewModel()
            {
                AuthorId = null, Name = "Odaberite autora"
            });

            newModel.GenreViewModels = _genreService.FindAllGenres().Genres.ConvertToGenreViewModelList();
            newModel.GenreViewModels.Insert(0, new GenreViewModel()
            {
                GenreId = null, Genre = "Odaberite zanr"
            });

            newModel.LanguageViewModels = _languageService.FindAllLanguages().Languages.ConvertToLanguageViewModelList();
            newModel.LanguageViewModels.Insert(0, new LanguageViewModel()
            {
                LanguageId = null, Language = "Odaberite jezik"
            });

            if (response.Success)
            {
                newModel.BookViewModels = response.Books.ConvertToBookViewModelList();

                if (!String.IsNullOrEmpty(titleSearchString))
                {
                    newModel.BookViewModels = newModel.BookViewModels.Where(x => x.Title.Contains(titleSearchString)).ToList();
                }

                if (!String.IsNullOrEmpty(isbnSearchString))
                {
                    newModel.BookViewModels = newModel.BookViewModels.Where(x => x.ISBN.Contains(isbnSearchString)).ToList();
                }

                if (model.AuthorFilterId != null)
                {
                    newModel.BookViewModels = newModel.BookViewModels.Where(x => x.Authors.Contains(x.Authors.Where(y => y.AuthorId == model.AuthorFilterId).First())).ToList();
                }

                if (model.LanguageFilterId != null)
                {
                    newModel.BookViewModels = newModel.BookViewModels.Where(x => x.Language.LanguageId == model.LanguageFilterId).ToList();
                }

                if (model.GenreFilterId != null)
                {
                    newModel.BookViewModels = newModel.BookViewModels.Where(x => x.Genre.GenreId == model.GenreFilterId).ToList();
                }

                newModel.Success = true;
            }
            else
            {
                newModel.Message = response.Message;
                newModel.Success = false;
            }
            return(View(newModel));
        }