public async Task <IEnumerable <Book> > GetAllBooks(BooksParameters booksParameters) { if (string.IsNullOrEmpty(booksParameters.Penerbit) && string.IsNullOrEmpty(booksParameters.Keyword)) { return(await GetAllBooks()); } var books = _dbContext.Books.AsQueryable(); if (!string.IsNullOrEmpty(booksParameters.Penerbit)) { books = books.Where(c => c.Penerbit == booksParameters.Penerbit); } if (!string.IsNullOrEmpty(booksParameters.Keyword)) { books = books.Where(c => c.Judul.Contains(booksParameters.Keyword) || c.Penulis.Contains(booksParameters.Keyword) || c.Penerbit.Contains(booksParameters.Keyword) || c.Deskripsi.Contains(booksParameters.Keyword)); } return(books.ToList()); }
public async Task <ActionResult <IEnumerable <BookDto> > > GetBooks([FromQuery] BooksParameters booksParameters) { var resultRepo = await _bookRepository.GetAllBooks(booksParameters); return(Ok(_mapper.Map <IEnumerable <BookDto> >(resultRepo))); }