コード例 #1
0
        public IEnumerable <Livro> BuscarPor(LivroPesquisa livroPesquisa)
        {
            IEnumerable <Livro> Ret;

            switch (livroPesquisa.Pesquisa)
            {
            case Tipos.Pesquisa.Isbn:
                Ret = _livroRepositorio.BuscarPorISBN(livroPesquisa.ValorPesquisa);
                break;

            case Tipos.Pesquisa.Autor:
                Ret = _livroRepositorio.BuscarPorAutor(livroPesquisa.ValorPesquisa);
                break;

            case Tipos.Pesquisa.Nome:
                Ret = _livroRepositorio.BuscarPorNome(livroPesquisa.ValorPesquisa);
                break;

            case Tipos.Pesquisa.Valor:
                Ret = _livroRepositorio.BuscarPorPreco(int.Parse(livroPesquisa.ValorPesquisa));
                break;

            case Tipos.Pesquisa.DataPublicacao:
                Ret = _livroRepositorio.BuscarPorDataPublicacao(DateTime.Parse(livroPesquisa.ValorPesquisa));
                break;

            default:
                Ret = _livroRepositorio.ListarTodos();
                break;
            }

            return(OrdernarPor(Ret, livroPesquisa));
        }
コード例 #2
0
 public async Task <IList <Livro> > FindByTitulo(LivroPesquisa livroPesquisa, PaginacaoParametroDto paginacaoParametro)
 {
     if (livroPesquisa.generoId == 0)
     {
         return(await _livroRepository.FindByTitulo(livroPesquisa, paginacaoParametro));
     }
     else
     {
         return(await _livroRepository.FindByTituloAndGenero(livroPesquisa, paginacaoParametro));
     }
 }
コード例 #3
0
        public IEnumerable <Livro> OrdernarPor(IEnumerable <Livro> Livros, LivroPesquisa livroPesquisa)
        {
            switch (livroPesquisa.Pesquisa)
            {
            case Tipos.Pesquisa.Isbn:
                return(Livros.OrderBy(x => x.ISBN));

            case Tipos.Pesquisa.Autor:
                return(Livros.OrderBy(x => x.Autor));

            case Tipos.Pesquisa.Nome:
                return(Livros.OrderBy(x => x.Nome));

            case Tipos.Pesquisa.Valor:
                return(Livros.OrderBy(x => x.Preco));

            case Tipos.Pesquisa.DataPublicacao:
                return(Livros.OrderBy(x => x.DataPublicacao));

            default:
                return(Livros);
            }
        }
コード例 #4
0
 public async Task <IList <Livro> > FindByTituloAndGenero(LivroPesquisa livroPesquisa, PaginacaoParametroDto paginacaoParametro)
 {
     return(await GetByExpression(paginacaoParametro, c => c.Titulo.ToLower().Contains(livroPesquisa.description.ToLower()) && c.Genero.Id == livroPesquisa.generoId,
                                  c => c.OrderBy(e => e.Titulo), include));
 }
コード例 #5
0
 public async Task <IList <Livro> > FindByAutor(LivroPesquisa livroPesquisa, PaginacaoParametroDto paginacaoParametro)
 {
     return(await GetByExpression(paginacaoParametro,
                                  c => c.Autor.ToLower().Contains(livroPesquisa.description.ToLower()), c => c.OrderBy(e => e.Autor), include));
 }
コード例 #6
0
 public IEnumerable <Livro> BuscarPor(LivroPesquisa livroPesquisa)
 {
     //return new AplicacaoLivro(new RepositorioLivro()).ListarTodos();
     return(new AplicacaoLivro(new RepositorioLivro()).BuscarPor(livroPesquisa));
 }