public async Task <ActionResult> FilterWarehouses([FromBody] FilterSorting filterSorting) { // Filtering warehouse query by calling method that will filter it var newWarehouse = await WarehouseService.FilterWarehouses(filterSorting); // Returning filtered warehouse list return(Ok(newWarehouse)); }
public async Task <ActionResult> FilterWarehouses([FromBody] FilterSorting filterSorting) { // Filtering warehouse query by calling method that will filter it var filteredCatalogList = await CatalogNameService.FilterCatalogName(filterSorting); // Returning filtered warehouse list return(Ok(filteredCatalogList)); }
public async Task <List <CatalogName> > FilterCatalogName(FilterSorting filterSorting) { // Getting our catalog name query, that we will filter var catalogNameQuery = await DB.CatalogNameDB.ToListAsync(); // Checking if our filter option is null if (!String.IsNullOrEmpty(filterSorting.FilterOption)) { // If it's not null, then we set this option to lover case var filter = filterSorting.FilterOption.ToLower(); // Filtering our query, where warehouse address or name contains something similar to our option catalogNameQuery = catalogNameQuery.Where(x => x.Name.ToLower().Contains(filter) && x.CatalogTypeId == filterSorting.CatalogTypeId).ToList(); } else { // TODO: This is only for short period of time, need to make functionality where user can chose by what field user can sort and in whick direction // If our option is null, then we just sorting our query by name catalogNameQuery = catalogNameQuery.Where(x => x.CatalogTypeId == filterSorting.CatalogTypeId) .OrderByDescending(x => x.Name) .ToList(); } return(catalogNameQuery); }
public async Task <ViewResult> Index() { var model = new MeetingsListViewModel(); var meetingModel = new MeetingListViewModel(); if (null == HttpContext.Cache.Get("AAMeetingList")) { var meetings = await _aaClient.GetMeetingsList(); HttpContext.Cache.Insert("AAMeetingList", meetings, null, _dateToCache, Cache.NoSlidingExpiration); } var aaMeetingList = HttpContext.Cache.Get("AAMeetingList") as List <Meeting>; if (null == HttpContext.Cache.Get("CAMeetingList")) { var meetings = await _caClient.GetMeetingsList() as List <Meeting>; HttpContext.Cache.Insert("CAMeetingList", meetings, null, _dateToCache, Cache.NoSlidingExpiration); } var caMeetingList = HttpContext.Cache.Get("CAMeetingList") as List <Meeting>; var naList = _naClient.GetMeetingsList(); meetingModel.Title = "AA möten"; meetingModel.ListId = "aa"; meetingModel.MeetingsList = aaMeetingList; model.AAMeetingsList = meetingModel; meetingModel = new MeetingListViewModel(); meetingModel.Title = "CA möten"; meetingModel.ListId = "ca"; meetingModel.MeetingsList = caMeetingList; model.CAMeetingsList = meetingModel; meetingModel = new MeetingListViewModel(); meetingModel.Title = "NA möten"; meetingModel.ListId = "na"; meetingModel.MeetingsList = await _naClient.GetMeetingsList(); model.NAMeetingsList = meetingModel; if (null == Session["AATodaysMeetingList"]) { Session["AATodaysMeetingList"] = await _aaClient.GetUpcomingMeetingsList(aaMeetingList); } meetingModel = new MeetingListViewModel(); meetingModel.Title = "Dagens möten"; meetingModel.ListId = "today"; meetingModel.MeetingsList = Session["AATodaysMeetingList"] as List <Meeting>; var meetingListViewModel = new NearMeViewModel { UpcomingMeetingsList = meetingModel }; meetingListViewModel.BingApiKey = _bingApiKey; /*UNCOMMENT TO ADD MAP * if (null == Session["AALocationLists"]) * { * Session["AALocationLists"] = await _bingClient.GetLocations(meetingListViewModel.UpcomingMeetingsList); * } * meetingListViewModel.LocationLists = Session["AALocationLists"] as LocationLists; */ model.BingApiKey = _bingApiKey; model.NearMeViewModel = meetingListViewModel; var d = await _aaClient.GetTimes(aaMeetingList); var aaFilter = new FilterSorting { CityList = await _aaClient.GetCities(aaMeetingList), MeetingTypeList = await _aaClient.GetMeetingTypes(aaMeetingList), StartTimes = Castings.CustomToList <TimeSpan>(d), MeetingsList = aaMeetingList, BingApiKey = _bingApiKey }; model.FilterSorting = aaFilter; return(View(model)); }