Exemple #1
0
        public IActionResult Filtrar(ProdutoFilterModel filterModel)
        {
            HttpContext.Session.SetComplexData("FilterModelProduto", filterModel);

            ModelState.Clear();

            return(PartialView("_ProdutoTablePartial", GetProdutoModel(1)));
        }
Exemple #2
0
        public ProdutoViewModel GetProdutoModel(int?page)
        {
            if (page == null)
            {
                page = 1;
            }

            IQueryable <Produto> produtos = db.Produtos;

            ProdutoFilterModel filterModel = HttpContext.Session.GetComplexData <ProdutoFilterModel>("FilterModelProduto");

            if (filterModel != null)
            {
                if (filterModel.FilterNome != null)
                {
                    produtos = produtos.Where(x => x.Nome.ToUpper().Contains(filterModel.FilterNome.ToUpper()));
                }

                if (filterModel.FilterCategoria != null)
                {
                    produtos = produtos.Where(x => x.Categoria == filterModel.FilterCategoria);
                }

                if (filterModel.FilterAtivo != null)
                {
                    produtos = produtos.Where(x => x.Ativo == filterModel.FilterAtivo);
                }

                if (filterModel.FilterGenero != null)
                {
                    produtos = produtos.Where(x => x.Genero == filterModel.FilterGenero);
                }
            }

            return(new ProdutoViewModel(produtos, new Pager(produtos.Count(), page)));
        }