private void AplicarFiltro(FiltroSpec filtro, out IQueryable <Usuario> query) { query = _AutoPecasDbContext.Usuarios .AsExpandableEFCore(); var predicate = PredicateBuilder.New <Usuario>(true); if (filtro.Filtros.TryGetValue("nome", out var nome)) { predicate.And(p => p.Nome.Contains((string)nome)); } if (filtro.Filtros.TryGetValue("usuario", out var usuario)) { predicate.Or(p => p.NomeUsuario.Contains((string)usuario)); } query = query.Where(predicate); }
private void AplicarFiltro(FiltroSpec filtro, out IQueryable <Categoria> query) { query = _AutoPecasDbContext.Categorias .AsExpandableEFCore(); var predicate = PredicateBuilder.New <Categoria>(true); if (filtro.Filtros.TryGetValue("nome", out var nome)) { predicate.And(p => p.Nome.Contains((string)nome)); } if (filtro.Filtros.TryGetValue("descricao", out var descricao)) { predicate.Or(p => p.Descricao.Contains((string)descricao)); } query = query.Where(predicate); }
public async Task <ActionResult <PaginacaoResultado <Produto> > > Lista(FiltroSpec filtro) { try { var produtos = await _produtoService.Lista(filtro); if (produtos.Lista.Count() > 0) { foreach (var produto in produtos.Lista) { produtos.Lista.FirstOrDefault(p => p.Id == produto.Id).Quantidade = _notaService.VerificaEstoqueProduto(produto.Id); } } return(Ok(produtos)); } catch (Exception e) { throw e; } }