Exemplo n.º 1
0
        public ActionResult Checkout1(FilterFormVM model)
        {
            if (model.PickUpCity.Id == 0 || model.DropOffCity.Id == 0)
            {
                return(RedirectToAction("Index", "Home"));
            }

            SetBookingDataByFilterFormVM(model);

            SearchResultVM searchResult = new SearchResultVM();

            searchResult.Products                = _productService.Search(BookingData.OfferCriteria);
            searchResult.Properties              = _propertyService.GetProperties();
            searchResult.Destination             = _locationService.GetLocationByBestemmingId(BookingData.OfferCriteria.OphaalBestemmingId);
            searchResult.TotalSearchResult       = searchResult.Products.Any() ? searchResult.Products.First().Total : 0;
            searchResult.IsSearch                = true;
            searchResult.BookingData             = BookingData;
            searchResult.SelectedPropertyDetails = BookingData.OfferCriteria.EigenschapWaarden;


            var pickUpCity = BookingData.Destinations.Find(f => f.Id == BookingData.OfferCriteria.OphaalBestemmingId);

            if (pickUpCity != null)
            {
                searchResult.PickUpCityName = pickUpCity.DisplayName;
            }

            return(View(searchResult));
        }
Exemplo n.º 2
0
        private void SetBookingDataByFilterFormVM(FilterFormVM model)
        {
            if (model != null)
            {
                BookingData.CurrentUrl = Request.RawUrl;
                BookingData.OfferCriteria.OphaalBestemmingId = model.PickUpCity.Id;
                BookingData.Destinations = new List <DestinationModel>();

                if (BookingData.OfferCriteria.OphaalBestemmingId != 0)
                {
                    BookingData.Destinations.Add(model.PickUpCity);
                }

                BookingData.OfferCriteria.TerugbrengBestemmingId = model.DropOffCity.Id;
                if (BookingData.OfferCriteria.TerugbrengBestemmingId != 0)
                {
                    BookingData.Destinations.Add(model.DropOffCity);
                }

                BookingData.OfferCriteria.StartDate = DateTime.ParseExact(model.StartDate,
                                                                          GlobalStatic.DateFormatString,
                                                                          CultureInfo.InvariantCulture);

                BookingData.OfferCriteria.OphaalTijd = DateTime.ParseExact(model.PickUpTime,
                                                                           GlobalStatic.TimeFormatString, CultureInfo.InvariantCulture);

                BookingData.OfferCriteria.EndDate = DateTime.ParseExact(model.EndDate, GlobalStatic.DateFormatString,
                                                                        CultureInfo.InvariantCulture);

                BookingData.OfferCriteria.TerugbrengTijd = DateTime.ParseExact(model.DropOffTime,
                                                                               GlobalStatic.TimeFormatString, CultureInfo.InvariantCulture);

                TimeSpan tsOphaalTijd = new TimeSpan(BookingData.OfferCriteria.OphaalTijd.Hour,
                                                     BookingData.OfferCriteria.OphaalTijd.Minute, BookingData.OfferCriteria.OphaalTijd.Second);

                TimeSpan tsTerugBrengTijd = new TimeSpan(BookingData.OfferCriteria.TerugbrengTijd.Hour,
                                                         BookingData.OfferCriteria.TerugbrengTijd.Minute, BookingData.OfferCriteria.TerugbrengTijd.Second);

                BookingData.OfferCriteria.StartDate       += tsOphaalTijd;
                BookingData.OfferCriteria.EndDate         += tsTerugBrengTijd;
                BookingData.OfferCriteria.MaxPrijs         = 1000000;
                BookingData.OfferCriteria.NumberOfAdults   = 2;
                BookingData.OfferCriteria.ZoekBestemmingId = model.PickUpCity.ParentId.HasValue
                    ? model.PickUpCity.ParentId.Value
                    : 0;
                BookingData.OfferCriteria.ZoekTerugbrengBestemmingId = model.DropOffCity.ParentId.HasValue
                    ? model.DropOffCity.ParentId.Value
                    : 0;

                BookingData.OfferCriteria.Busjetype = (BusjeType)model.CarType;
            }
        }
Exemplo n.º 3
0
        public ActionResult _FilterLocationForm()
        {
            var model = new FilterFormVM();

            model.Destinations = _locationService.GetAllDestination();
            var cities = new List <SelectListItem>();

            foreach (var destination in model.Destinations)
            {
                cities.AddRange(destination.Cities.Select(c => new SelectListItem {
                    Value = c.Id.ToString(), Text = c.DisplayName
                }).ToList());
            }
            model.DestinationSelectItem = cities.OrderBy(c => c.Text).ToList();

            model.CarType     = (int)BookingData.OfferCriteria.Busjetype == 0 ? 10 : (int)BookingData.OfferCriteria.Busjetype;
            model.PickUpCity  = model.GetCity(BookingData.OfferCriteria.OphaalBestemmingId);
            model.DropOffCity = model.GetCity(BookingData.OfferCriteria.TerugbrengBestemmingId);

            DateTime startDate = BookingData.OfferCriteria.StartDate;

            if (startDate.Ticks != 0)
            {
                model.StartDate        = startDate.ToString(GlobalStatic.DateFormatString);
                model.StartDateString  = startDate.ToString(GlobalStatic.DateFormatString);
                model.PickUpTime       = startDate.ToString(GlobalStatic.TimeFormatString);
                model.PickUpTimeString = startDate.ToString(GlobalStatic.TimeFormatString);
            }

            DateTime endDate = BookingData.OfferCriteria.EndDate; //BookingData.OfferCriteria.EndDate.Ticks == 0 ? DateTime.Now.AddDays(7) : BookingData.OfferCriteria.EndDate;

            if (endDate.Ticks != 0)
            {
                model.EndDate           = endDate.ToString(GlobalStatic.DateFormatString);
                model.EndDateString     = endDate.ToString(GlobalStatic.DateFormatString);
                model.DropOffTime       = endDate.ToString(GlobalStatic.TimeFormatString);
                model.DropOffTimeString = endDate.ToString(GlobalStatic.TimeFormatString);
            }

            model.PickupOpeningHour =
                GetOpeningHour(BookingData.OfferCriteria.OphaalBestemmingId,
                               string.IsNullOrEmpty(model.StartDateString) ? string.Empty : model.StartDateString);
            model.DropOffOpeningHour =
                GetOpeningHour(BookingData.OfferCriteria.TerugbrengBestemmingId,
                               string.IsNullOrEmpty(model.EndDateString) ? string.Empty : model.EndDateString);

            return(PartialView(model));
        }
Exemplo n.º 4
0
        public ActionResult Checkout1(string urlNameParent, string urlName)
        {
            if (!IsNotSearch)
            {
                if (BookingData == null || BookingData.OfferCriteria == null || BookingData.OfferCriteria.OphaalBestemmingId == 0)
                {
                    return(RedirectToAction("Index", "Home"));
                }

                SearchResultVM searchResult = new SearchResultVM();
                searchResult.Products                = _productService.Search(BookingData.OfferCriteria);
                searchResult.Properties              = _propertyService.GetProperties();
                searchResult.Destination             = _locationService.GetLocationByBestemmingId(BookingData.OfferCriteria.OphaalBestemmingId);
                searchResult.TotalSearchResult       = searchResult.Products.Any() ? searchResult.Products.First().Total : 0;
                searchResult.IsSearch                = true;
                searchResult.BookingData             = BookingData;
                searchResult.SelectedPropertyDetails = BookingData.OfferCriteria.EigenschapWaarden;

                var pickUpCity = BookingData.Destinations.Find(f => f.Id == BookingData.OfferCriteria.OphaalBestemmingId);
                if (pickUpCity != null)
                {
                    searchResult.PickUpCityName = pickUpCity.DisplayName;
                }

                return(View(searchResult));
            }
            else
            {
                var destination = _locationService.GetDestinationByUrl(urlName);
                if (destination == null)
                {
                    return(RedirectToAction("Index", "Home"));
                }

                FilterFormVM model = new FilterFormVM();
                model.CarType = 10;

                model.PickUpCity = destination;
                var availableDays = _locationService.GetAvailableDays(model.PickUpCity.Id);
                if (availableDays.Count == 0)
                {
                    return(RedirectToAction("Index", "Home"));
                }
                DateTime defaultDate = (new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 9, 0, 0).AddDays(2)).DefaultValidDate(GlobalStatic.Holidays, availableDays);


                model.PickUpTime       = defaultDate.ToString("HH:mm:ss");
                model.PickUpTimeString = defaultDate.ToString("HH:mm");
                model.StartDate        = defaultDate.ToString("dd-MM-yyyy");
                model.StartDateString  = defaultDate.ToString("dd-MM");

                model.DropOffCity = destination;

                availableDays = _locationService.GetAvailableDays(model.DropOffCity.Id);
                if (availableDays.Count == 0)
                {
                    return(RedirectToAction("Index", "Home"));
                }
                var availableEndDate = defaultDate.AddDays(1).DefaultValidDate(GlobalStatic.Holidays, availableDays);

                model.DropOffTime       = defaultDate.ToString("HH:mm:ss");
                model.DropOffTimeString = defaultDate.ToString("HH:mm");
                model.EndDate           = availableEndDate.ToString("dd-MM-yyyy");
                model.EndDateString     = availableEndDate.ToString("dd-MM");


                SetBookingDataByFilterFormVM(model);

                SearchResultVM searchResult = new SearchResultVM();
                searchResult.Products                = _productService.Search(BookingData.OfferCriteria);
                searchResult.Properties              = _propertyService.GetProperties();
                searchResult.Destination             = _locationService.GetLocationByBestemmingId(BookingData.OfferCriteria.OphaalBestemmingId);
                searchResult.TotalSearchResult       = _productService.CountSearch(BookingData.OfferCriteria);
                searchResult.BookingData             = BookingData;
                searchResult.SelectedPropertyDetails = BookingData.OfferCriteria.EigenschapWaarden;

                var pickUpCity = BookingData.Destinations.Find(f => f.Id == BookingData.OfferCriteria.OphaalBestemmingId);
                if (pickUpCity != null)
                {
                    searchResult.PickUpCityName = pickUpCity.DisplayName;
                }

                return(View(searchResult));
            }
        }