public IHttpActionResult Get([FromUri] PeopleFilterModel model) { var result = this.peoplesData .AsQueryable() .ToFilteredPeople(model) .Take(10) .ToList(); return(this.Ok(result)); }
public async Task <List <PeopleSearchModel> > GetFilteredPeople(PeopleFilterModel filterModel) { var filters = new List <ReqestParameter>(); if (filterModel.Location != null) { filters.Add(new ReqestParameter { Name = "Location", Value = filterModel.Location }); } return(await requestProvider.GetAsync <List <PeopleSearchModel> >(ListPeopleApi, filters)); }
public JsonResult GetFilteredPeople(SimplePagerModel pager, PeopleFilterModel filter) { var currentUser = HttpContext.User as CustomUser; var currentAdministrationId = _userService.GetAdministrationIdByUserId(currentUser.UserId); var people = _customerService.GetFilteredCustomers(currentAdministrationId, filter.Name, filter.Phone, filter.Email, filter.StatusId, pager.PageIndex, pager.PageSize); var model = _customerModelFactory.PreparePeopleListViewModel(people); var url = GetUrlWithFilters(pager, currentUser.AreaId); return(CreateJsonResult(true, url, model)); }
// GET: Administration/People public ActionResult Index(SimplePagerModel pager, PeopleFilterModel filter) { var currentUser = HttpContext.User as CustomUser; var currentAdministrationId = _userService.GetAdministrationIdByUserId(currentUser.UserId); var people = _customerService.GetFilteredCustomers(currentAdministrationId, filter.Name, filter.Phone, filter.Email, filter.StatusId, pager.PageIndex, pager.PageSize); var model = _customerModelFactory.PreparePeopleListViewModel(people); model.Filter = filter; return(View(model)); }
public static IQueryable <PeopleRequestModel> ToFilteredPeople(this IQueryable <PeopleRequestModel> query, PeopleFilterModel filters) { if (filters == null) { return(query); } if (!string.IsNullOrWhiteSpace(filters.Name)) { query = query.Where(c => c.Name.ToLower().Contains(filters.Name.ToLower())); } if (filters.Age != null) { query = query.Where(c => c.Age == filters.Age); } if (filters.Body != null) { query = query.Where(c => c.Body == filters.Body); } var skip = (filters.Page - 1) * 3; var take = 3; query = query .OrderByDescending(c => c.Id) .Skip(skip) .Take(take); return(query); }
public SearchService() { CurrentJobFilter = new JobFilterModel(); CurrentCompanyFilter = new CompanyFilterModel(); CurrentPeopleFilter = new PeopleFilterModel(); }