public List <VestigingModel> GetLocations() { var destinations = _unitOfWork.DestinationRepository .FindAll(d => d.DestinationType.Id == 3) .Select(d => d.Id) .ToList(); var locations = _unitOfWork.VestigingRepository .FindAll(f => (f.Status == 1) && destinations.Contains(f.BestemmingId)) .OrderBy(o => o.Naam) .ToList(); return(locations.Any() ? VestigingModel.Parse(locations, currentLocation: "", destinations: GetAllDestination()) : new List <VestigingModel>()); }
public void Add(VestigingModel v) { throw new NotImplementedException(); }
public void SetBookingData(SearchCamperModel options, BookingData bookingData) { int camperAanbiedingId = options.aanbiedingId; int vestigingsId = options.vestigingId; int vestigingTerugbrengId = options.vestigingTerugbrengId; var typeId = options.typeId; bookingData.BookingType = (BookingType)Enum.ToObject(typeof(BookingType), typeId); if (camperAanbiedingId == 0 || vestigingsId == 0) { if (bookingData.LastSelectedCamper.CamperID != 0) { camperAanbiedingId = bookingData.LastSelectedCamper.CamperID; vestigingsId = bookingData.LastSelectedCamper.LocationID; } } else { bookingData.LastSelectedCamper = new CamperLocation { CamperID = camperAanbiedingId, LocationID = vestigingsId }; } var camperAanbieding = _unitOfWork.CamperAanbiedingRepository.Find(camperAanbiedingId); var vestiging = _unitOfWork.VestigingRepository.Find(vestigingsId); var vestigingTerugbreng = _unitOfWork.VestigingRepository.Find(vestigingTerugbrengId); if (camperAanbieding != null && vestiging != null && bookingData.OfferCriteria != null) { bookingData.CamperAanbiedingModel = CamperAanbiedingModel.Parse(camperAanbieding, ""); bookingData.VestigingModel = VestigingModel.Parse(new OptionParseVestigingModels() { vestigingEntity = vestiging }); //_mapper.Map<VestigingModel>(vestiging); bookingData.VestigingModel.Pakkets = bookingData.VestigingModel.Pakkets .GroupBy(x => x.Naam) .Select(x => x.FirstOrDefault(p => bookingData.NumberOfTravelDays >= p.MinAantalDagen && bookingData.NumberOfTravelDays <= p.MaxAantalDagen) ?? x.First()) .ToList(); bookingData.VestigingTerugbrengModel = VestigingModel.Parse(new OptionParseVestigingModels() { vestigingEntity = vestigingTerugbreng }); //_mapper.Map<VestigingModel>(vestigingTerugbreng); bookingData.OfferCriteria.ZoekBestemmingId = vestiging.Destination.ParentId.GetValueOrDefault(vestiging.Destination.Id); var aanbiedingen = _productService.Search(bookingData.OfferCriteria, camperAanbiedingId, vestigingsId, vestiging, bookingData.OfferCriteria.PageNr, bookingData.OfferCriteria.PageSize); if (aanbiedingen.Count != 0) { bookingData.TotalCamperPrice = aanbiedingen.First().PriceInfoModel.TotaalPakketPrijs; } var ophaalParentId = bookingData.VestigingModel.Destination.ParentId; if (ophaalParentId != null) { var bestemmingen = _unitOfWork.DestinationRepository.FindAll(x => x.ParentId == ophaalParentId).ToList(); bookingData.Destinations = ConvertToDestinationModels(bestemmingen); } var terugbrengParentId = bookingData.VestigingTerugbrengModel.Destination.ParentId; if (terugbrengParentId != null && terugbrengParentId != ophaalParentId) { var bestemmingen = _unitOfWork.DestinationRepository.FindAll(x => x.ParentId == terugbrengParentId).ToList(); bookingData.Destinations.AddRange(ConvertToDestinationModels(bestemmingen)); bookingData.Destinations = bookingData.Destinations.Distinct().ToList(); } foreach (var p in bookingData.VestigingModel.Pakkets) { p.Number = 1; if (p.IsGratis && (DateTime)p.GratisTot >= bookingData.EndDate && (DateTime)p.GratisVan <= bookingData.StartDate) { p.Prijs = 0; } } } }