public Paginador <Fornecedor> Get(FiltroFornecedor filtro) { IQueryable <Fornecedor> query = context.Fornecedor; if (filtro.Id != 0) { query = query.Where(x => x.Id == filtro.Id); } if (filtro.Nome != null && filtro.Nome != "") { query = query.Where(x => x.Pessoa.Nome.Contains(filtro.Nome)); } if (filtro.Cpf != null && filtro.Cpf != "") { query = query.Where(x => x.Pessoa.Cpf.Contains(filtro.Cpf)); } if (filtro.Cnpj != null && filtro.Cnpj != "") { query = query.Where(x => x.Pessoa.Cnpj.Contains(filtro.Cnpj)); } if (filtro.Rg != null && filtro.Rg != "") { query = query.Where(x => x.Pessoa.Rg.Contains(filtro.Rg)); } if (filtro.Celular != null && filtro.Celular != "") { query = query.Where(x => x.Pessoa.Celular.Contains(filtro.Celular)); } if (filtro.Email != null && filtro.Email != "") { query = query.Where(x => x.Pessoa.Email.Contains(filtro.Email)); } if (filtro.Inativo == 0 || filtro.Inativo == 1) { query = query.Where(x => x.Pessoa.Inativo == filtro.Inativo); } int registros = query.Count(); List <Fornecedor> fornecedores = query.ToList(); Paginador <Fornecedor> dados = new Paginador <Fornecedor>(); dados.Pagina = filtro.Pagina; dados.QtdeItensTotal = registros; dados.ItensPorPagina = filtro.ItensPorPagina; dados.QtdedePaginas = Convert.ToInt32(Math.Ceiling(Convert.ToDouble(registros) / filtro.ItensPorPagina)); dados.Dados = fornecedores; return(dados); }
public JsonResult <Paginador <Fornecedor> > Filtro([FromBody] FiltroFornecedor filtro) { if (filtro.Pagina == 0) { filtro.Pagina = 1; } if (filtro.ItensPorPagina == 0) { filtro.ItensPorPagina = 20; } return(Json(busines.Get(filtro))); }