public static LeverancierModel Parse(Leverancier leverancierEntity, string currentLocation, bool incVestigingen, bool incLonghires = true) { var leverancier = new LeverancierModel { Id = leverancierEntity.Id, Naam = leverancierEntity.Naam, Status = leverancierEntity.Status, Commissie = leverancierEntity.Commissie, Bestand = FileModel.Parse(leverancierEntity.Bestand), Vestigingen = incVestigingen ? VestigingModel.Parse(leverancierEntity.Vestigings, currentLocation) : null, Longhires = incLonghires ? LonghireModel.Parse(leverancierEntity.Longhires) : null, Huurvoorwaarden = leverancierEntity.Huurvoorwaarden, InleverInformatie = leverancierEntity.Inleverinformatie, Openingstijden = leverancierEntity.Openingstijden, OphaalInformatie = leverancierEntity.Ophaalinformatie, Prijsvoorwaarden = leverancierEntity.Prijsvoorwaarden, TransferInformatie = leverancierEntity.Transferinformatie, Korting = leverancierEntity.Korting, PrijsPerPeriode = leverancierEntity.PrijsPerPeriode, AddOneExtraDay = leverancierEntity.AddOneExtraDay, Vroegboekkorting = leverancierEntity.Vroegboekkorting, Vbkpercentage = leverancierEntity.Vbkpercentage, Vbkdagen = leverancierEntity.Vbkdagen, VroegboekPeriodeStart = leverancierEntity.VroegboekPeriodeStart, VroegboekPeriodeEind = leverancierEntity.VroegboekPeriodeEind }; return(leverancier); }
public static CamperAanbiedingModel Parse(CamperAanbieding aanbiedingEntity, string currentLocation, bool incEigenschappen = true, bool incBestanden = true, bool incBedden = true, bool incVestigingen = false, bool incCamper = true) { var timespan = aanbiedingEntity.PeriodeTot - aanbiedingEntity.PeriodeVan; var aanbieding = new CamperAanbiedingModel { Id = aanbiedingEntity.Id, BasisPrijs = aanbiedingEntity.BasisPrijs, BestGeboektPrijsEuro = aanbiedingEntity.BestGeboektPrijsEuro, Camper = incCamper ? CamperModel.Parse(aanbiedingEntity.Camper, currentLocation, incEigenschappen, incBestanden, incBedden) : null, InventarisPrijs = aanbiedingEntity.InventarisPrijs, InventarisPrijsPerPersoon = aanbiedingEntity.InventarisPrijsPerPersoon, IsActief = aanbiedingEntity.IsActief, IsBestGeboekt = aanbiedingEntity.IsBestGeboekt, BestGeboektDuur = aanbiedingEntity.BestGeboektDuur, KortingPercOpCamper = aanbiedingEntity.KortingPercOpCamper, KortingPercOpTotaal = aanbiedingEntity.KortingPercOpTotaal, PeriodeTot = aanbiedingEntity.PeriodeTot, PeriodeVan = aanbiedingEntity.PeriodeVan, DuurInDagen = (int)Math.Ceiling(timespan.TotalDays), VastePrijsEuro = aanbiedingEntity.VastePrijsEuro, BasisPrijs35 = aanbiedingEntity.BasisPrijs35, BasisPrijsWeek = aanbiedingEntity.BasisPrijsWeek, BasisPrijsWeekend = aanbiedingEntity.BasisPrijsWeekend, BasisPrijs829 = aanbiedingEntity.BasisPrijs829, BasisPrijs30 = aanbiedingEntity.BasisPrijs30, VanafPrijs = aanbiedingEntity.VanafPrijs, Vestigings = incVestigingen ? VestigingModel.Parse(aanbiedingEntity.Vestigings, currentLocation, new List <DestinationModel>()) : null }; return(aanbieding); }
public static VestigingModel Parse(OptionParseVestigingModels option) { var vestiging = new VestigingModel { Id = option.vestigingEntity.Id, Adres = option.incAdres ? AdresModel.Parse(option.vestigingEntity.Adre, option.currentLocation) : null, Destination = BestemmingModel.Parse(option.vestigingEntity.Destination, option.currentLocation), Latitude = option.vestigingEntity.Latitude, Longtitude = option.vestigingEntity.Longtitude, Naam = option.vestigingEntity.Naam, Pakkets = option.incPakketten ? PakketModel.Parse(option.vestigingEntity.Pakkets) : null, ZoomLevel = option.vestigingEntity.ZoomLevel, Korting = option.vestigingEntity.Korting, Tax = option.vestigingEntity.Tax, Status = option.vestigingEntity.Status, Valuta = ValutaModel.Parse(option.vestigingEntity.Valuta), Leverancier = option.incLeverancier ? LeverancierModel.Parse(option.vestigingEntity.Leverancier, option.currentLocation, false) : null, ExternalId = option.vestigingEntity.ExternalId, VestigingOpeningHours = option.incVestigingOpeningHour ? VestigingOpeningHourModel.Parse(option.vestigingEntity.VestigingOpeningHours) : null, UrlNameParent = option.destinations.FirstOrDefault(l => l.Id == option.vestigingEntity.Destination.ParentId) != null ? option.destinations.FirstOrDefault(l => l.Id == option.vestigingEntity.Destination.ParentId).DisplayName : string.Empty, UrlName = option.destinations.FirstOrDefault(l => l.Cities.Any(c => c.Id == option.vestigingEntity.Destination.Id)) != null ? option.destinations.FirstOrDefault(l => l.Cities.Any(c => c.Id == option.vestigingEntity.Destination.Id)).Cities.First(x => x.Id == option.vestigingEntity.Destination.Id).DisplayName : string.Empty, }; if (option.useLocalCurrency) { UpdateLocalPackagesUsingLocalCurrency(vestiging); } return(vestiging); }
private static void UpdateLocalPackagesUsingLocalCurrency(VestigingModel vestiging) { foreach (var pakket in vestiging.Pakkets) { if (pakket.IsLokaalTeBetalen) { if (pakket.Valuta.Code != vestiging.Valuta.Code) { pakket.Prijs = pakket.Prijs / vestiging.Valuta.Koers; pakket.Valuta = vestiging.Valuta; } } } }
public static CamperModel Parse(Camper camperEntity, string currentLocation, bool incEigenschappen = true, bool incBestanden = true, bool incBedden = true, bool incAanbiedingen = false, bool showInActive = false) { List <PropertyDetailModel> eigenschapWaarden = null; if (incEigenschappen) { //In de backoffice moeten de waardes van de Inactieve eigenschappen wel worden opgehaalde. if (showInActive) { eigenschapWaarden = camperEntity.CamperEigenschappens.Distinct().Where(ce => ce.Eigenschap.Status != 3).Select( e => PropertyDetailModel.Parse(e.EigenschapWaarde)).ToList(); } else { //En niet in de frontend. eigenschapWaarden = camperEntity.CamperEigenschappens.Distinct().Where(ce => ce.Eigenschap.Status == 1).Select( e => PropertyDetailModel.Parse(e.EigenschapWaarde)).ToList(); } } var camper = new CamperModel { Id = camperEntity.Id, Naam = camperEntity.Naam, UrlName = camperEntity.UrlName, Breedte = camperEntity.Breedte, Lengte = camperEntity.Lengte, Hoogte = camperEntity.Hoogte, InterieurHoogte = camperEntity.InterieurHoogte, EigenschapWaarden = eigenschapWaarden, //Leverancier = LeverancierModel.Parse(camperEntity.Leverancier, currentLocation, true), Vestigingen = VestigingModel.Parse(camperEntity.Leverancier.Vestigings, currentLocation), BrandstofCapaciteit = camperEntity.BrandstofCapaciteit, BrandstofVerbruik = camperEntity.BrandstofVerbruik, MaxAantalVolwassenen = camperEntity.MaxAantVolwassenen, MaxAantalKinderen = camperEntity.MaxAantKinderen, MaxAantalPersonen = camperEntity.MaxAantPersonen, MinAantalPersonen = camperEntity.MinAantPersonen, LaadHoogte = (int)camperEntity.LaadHoogte, LaadBreedte = (int)camperEntity.LaadBreedte, LaadLengte = (int)camperEntity.LaadLengte, LaadRuimte = (int)camperEntity.LaadRuimte, LaadVermogen = (int)camperEntity.LaadVermogen, Status = camperEntity.Status, WaterCapacteit = camperEntity.WaterCapacteit, Commissie = camperEntity.Commissie, CamperKorting = camperEntity.CamperKorting, CamperBedden = incBedden ? CamperBedModel.Parse(camperEntity.CamperBeds) : null, CamperBestanden = incBestanden ? CamperBestandModel.Parse(camperEntity.CamperBestandens.OrderBy(cb => cb.Volgorde)) : null, DagIndelingBestandId = camperEntity.DagIndelingBestandId, NachtIndelingBestandId = camperEntity.NachtIndelingBestandId, Video = camperEntity.Video, CamperAanbiedingen = incAanbiedingen ? CamperAanbiedingModel.Parse(camperEntity.CamperAanbiedings, currentLocation, incCamper: false) : null, ExternalId = camperEntity.ExternalId, Classification = (int)camperEntity.Classification }; return(camper); }