예제 #1
0
        public ActionResult SearchAccomodation(SearchAccomodationViewModel model, bool tableview = false)
        {
            ViewBag.view = tableview;
            //HomeViewModel model = new HomeViewModel();
            List <AccomodationPackageCountViewModel> accomodationPackageCountViewModels = new List <AccomodationPackageCountViewModel>();


            model.AccomodationTypes = accomodationTypesService.GetAllAccomodationTypes().ToList();
            var accomodationPacakges = accomodationService.CheckAccomodationsAvailability(null, model.CheckIn, model.CheckOut);

            foreach (var item in accomodationPacakges.DistinctBy(a => a.AccomodationPackage.Id))
            {
                //var count = accomodationService.CountAccomodationByPackage(item.AccomodationPackage.Id);
                var count = accomodationPacakges.Count(b => b.AccomodationPackage.Id == item.AccomodationPackage.Id);
                if (count > 0)
                {
                    AccomodationPackageCountViewModel obj = new AccomodationPackageCountViewModel();
                    obj.AccomodationPackages = item.AccomodationPackage;
                    obj.RoomCount            = count;
                    accomodationPackageCountViewModels.Add(obj);
                }
            }

            model.AccomodationPackageCountViewModels = accomodationPackageCountViewModels;

            return(View(model));
        }
예제 #2
0
        public ActionResult CheckAccomodationAvailability(CheckAccomodationAvailabilityViewModel model, bool tableview = false)
        {
            ViewBag.view = tableview;
            List <AccomodationPackageCountViewModel> accomodationPackageCountViewModels = new List <AccomodationPackageCountViewModel>();

            //var accomodations = accomodationService.SearchAccomodationsAvailability(model.AccomodationType);
            var accomodationPacakges = accomodationService.CheckAccomodationsAvailability(null, model.CheckIn, model.CheckOut, model.AccomodationType);

            foreach (var item in accomodationPacakges.DistinctBy(a => a.AccomodationPackage.Id))
            {
                //var count = accomodationService.CountAccomodationByPackage(item.AccomodationPackage.Id);
                var count = accomodationPacakges.Count(b => b.AccomodationPackage.Id == item.AccomodationPackage.Id);
                if (count > 0)
                {
                    AccomodationPackageCountViewModel obj = new AccomodationPackageCountViewModel();
                    obj.AccomodationPackages = item.AccomodationPackage;
                    obj.RoomCount            = count;
                    accomodationPackageCountViewModels.Add(obj);
                }
            }


            return(View("_CheckAccomodationAvailability", accomodationPackageCountViewModels));
        }