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));
        }
Exemple #3
0
        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));
        }
Exemple #4
0
        // 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));
        }
Exemple #5
0
        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);
        }
Exemple #6
0
 public SearchService()
 {
     CurrentJobFilter     = new JobFilterModel();
     CurrentCompanyFilter = new CompanyFilterModel();
     CurrentPeopleFilter  = new PeopleFilterModel();
 }