示例#1
0
        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));
        }
示例#2
0
        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));
        }
示例#3
0
        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));
        }