Пример #1
0
        private IEnumerable <Produto> Filtrar(FiltroProduto filtro = null)
        {
            var produtos = _repositorio.Get.Where(p => p.idEmpresa == UsuarioController.GetUsuarioLogado().idEmpresa);

            if (filtro != null)
            {
                if (filtro.Codigo != null)
                {
                    produtos = produtos.Where(p => p.idProduto == filtro.Codigo);
                }

                if (filtro.Status != Status.None)
                {
                    produtos = produtos.Where(p => p.Status == filtro.Status);
                }

                if (!String.IsNullOrEmpty(filtro.Descricao))
                {
                    produtos = produtos.Where(p => p.Descricao.Contains(filtro.Descricao));
                }
                //
            }

            return(produtos);
        }
Пример #2
0
        public ActionResult Index(int pagina, FiltroProduto filtro = null)
        {
            _repositorio = new Repositorio <Produto>();
            var model = new BaseConsultaDefaultViewModel <Produto>();

            model.FiltroViewModel.Filtro = filtro;
            model.Lista = Filtrar(filtro);
            model.Paginacao.PaginaAtual = pagina;
            model.Paginar();

            return(View(model));
        }
Пример #3
0
        public JsonResult <Paginador <Produto> > Filtro(FiltroProduto filtro, Tipo tipo)
        {
            if (filtro.Pagina == 0)
            {
                filtro.Pagina = 1;
            }
            if (filtro.ItensPorPagina == 0)
            {
                filtro.ItensPorPagina = 20;
            }

            return(Json(busines.GetAll(filtro, tipo)));
        }
Пример #4
0
        public Paginador <Produto> GetAll(DateTime DataInicial, DateTime DataFinal)
        {
            Paginador <Produto> paginador = new Paginador <Produto>();
            FiltroProduto       filtro    = new FiltroProduto();

            paginador.Dados = produtoBll.Get(Tipo.ACERVO);

            foreach (var item in paginador.Dados)
            {
                item.Quantidade = GetEstoque(item, DataInicial, DataFinal);
            }

            return(paginador);
        }
Пример #5
0
        public async Task <PaginacaoDto <ProdutoDto> > ObterTodosPaginadoAsync(FiltroProduto filtro)
        {
            var produtos = await _repository.ObterTodosPaginadoAsync(filtro.Pagina, filtro.Limite);

            return(produtos?.ToPaginacaoDto <PaginacaoDto <ProdutoDto> >());
        }
Пример #6
0
        public Paginador <Produto> GetAll(FiltroProduto filtro, Tipo tipo)
        {
            IQueryable <Produto> query = context.Produto;

            if (tipo != Tipo.TODOS)
            {
                query = query.Where(x => x.Tipo == tipo);
            }

            if (filtro.Id > 0)
            {
                query = query.Where(x => x.Id == filtro.Id);
            }

            if (filtro.Nome != null && filtro.Nome != "")
            {
                query = query.Where(x => x.Nome.Contains(filtro.Nome));
            }

            if (filtro.Descricao != null && filtro.Descricao != "")
            {
                query = query.Where(x => x.Descricao.Contains(filtro.Descricao));
            }

            if (filtro.Fornecedor > 0)
            {
                query = query.Where(x => x.FornecedorId == filtro.Fornecedor);
            }

            if (filtro.Categoria > 0)
            {
                query = query.Where(x => x.CategoriaId == filtro.Categoria);
            }

            if (filtro.Inativo != 2)
            {
                query = query.Where(x => x.Inativo == filtro.Inativo);
            }

            if (filtro.Situacao != Situacao.TODOS)
            {
                query = query.Where(x => x.Situacao == filtro.Situacao);
            }

            if (filtro.Terceiros)
            {
                query = query.Where(x => x.Terceiros == filtro.Terceiros);
            }

            int                 registros = query.Count();
            List <Produto>      produtos  = query.ToList();
            Paginador <Produto> dados     = new Paginador <Produto>
            {
                Pagina         = filtro.Pagina,
                QtdeItensTotal = registros,
                ItensPorPagina = filtro.ItensPorPagina,
                QtdedePaginas  = Convert.ToInt32(Math.Ceiling(Convert.ToDouble(registros) / filtro.ItensPorPagina))
            };

            PreencheEstoque(ref produtos);

            dados.Dados = produtos;

            return(dados);
        }
Пример #7
0
 public async Task <IActionResult> ObterTodosPaginado([FromQuery] FiltroProduto filtro)
 {
     return(await ExecutarFuncaoAsync(() => _service.ObterTodosPaginadoAsync(filtro)));
 }