public async Task <FornecedorListModel> BuscarFornecedores(FornecedorListModel model) { var fornecedores = await _repositorioFornecedor.BuscarFornecedores(); if (!string.IsNullOrWhiteSpace(model.Nome)) { fornecedores = fornecedores.Where(f => f.Nome.Contains(model.Nome)); } if (!string.IsNullOrWhiteSpace(model.Cpf)) { fornecedores = fornecedores.Where(f => !string.IsNullOrWhiteSpace(f.Cpf) && f.Cpf.Equals(model.Cpf)); } if (!string.IsNullOrWhiteSpace(model.Cnpj)) { fornecedores = fornecedores.Where(f => !string.IsNullOrWhiteSpace(f.Cnpj) && f.Cnpj.Equals(model.Cnpj)); } if (model.Data.HasValue) { fornecedores = fornecedores.Where(f => f.DataCadastro >= model.Data && f.DataCadastro <= model.Data?.AddTicks(-1).AddDays(1)); } model.Count = fornecedores.Count(); fornecedores = fornecedores.Skip((model.CurrentPage - 1) * model.PageSize).Take(model.PageSize); List <FornecedorModel> fornecedoresModel = _mapper.Map <List <Fornecedor>, List <FornecedorModel> >(fornecedores.ToList()); model.fornecedores = fornecedoresModel; return(model); }
public async Task <IActionResult> Index(string button, [Bind("Nome ,Cnpj,Cpf, Data, CurrentPage")] FornecedorListModel model) { model = await _servico.BuscarFornecedores(model); if (button == "Limpar") { ModelState.Clear(); } return(View(model)); }