Example #1
0
        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);
        }
Example #3
0
        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);
        }
Example #4
0
 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;
             }
         }
     }
 }
Example #5
0
        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);
        }