Esempio n. 1
0
        public void SetBooking(Booking booking)
        {
            if (booking == null)
                return;
            
            _booking = booking;

            BookingsService.BeginGetCityVehicleType(_booking.CityId, _booking.VehicleTypeId.Value, CreateAsyncCallback(ar => BookingsService.EndGetCityVehicleType(ar),
            result =>
            {
                _cityVehicleType = result;

                OnPropertyChanged(() => NumberOfAdultsOptions);
                OnPropertyChanged(() => NumberOfChildOptions);
                OnPropertyChanged(() => NumberOfInfantOptions);

                OnPropertyChanged(() => NumberOfAdultPassengers);
                OnPropertyChanged(() => NumberOfChildPassengers);
                OnPropertyChanged(() => NumberOfInfantPassengers);

                OnPropertyChanged(() => TotalNumberOfPassengers);
                OnPropertyChanged(() => ShowAdditionalPassengers);


            }), null);

            UpdateManagedUsers();
        }
Esempio n. 2
0
     public bool Equals(CityVehicleType other)
     {
         if (ReferenceEquals(null, other)) return false;
         if (ReferenceEquals(this, other)) return true;
 		if (other.Id == 0 && Id == 0)
 			return false;
 		else
 			return other.Id == Id;
     }
Esempio n. 3
0
     private void FixupCityVehicle(CityVehicleType previousValue)
     {
         if (IsDeserializing)
         {
             return;
         }
 
         if (CityVehicle != null)
         {
             CityVehicleId = CityVehicle.Id;
         }
 
         if (ChangeTracker.ChangeTrackingEnabled)
         {
             if (ChangeTracker.OriginalValues.ContainsKey("CityVehicle")
                 && (ChangeTracker.OriginalValues["CityVehicle"] == CityVehicle))
             {
                 ChangeTracker.OriginalValues.Remove("CityVehicle");
             }
             else
             {
                 ChangeTracker.RecordOriginalValue("CityVehicle", previousValue);
             }
             if (CityVehicle != null && !CityVehicle.ChangeTracker.ChangeTrackingEnabled)
             {
                 CityVehicle.StartTracking();
             }
         }
     }
Esempio n. 4
0
        private void RequestCityVehicleInfo()
        {
            BookingsService.BeginGetCityVehicleType(_booking.CityId, _booking.VehicleTypeId.Value, CreateAsyncCallback(ar => BookingsService.EndGetCityVehicleType(ar),
            result =>
            {
                _cityVehicleType = result;

                var conversionRate = _booking.FareInfo.ConversionRate;
                var conversionFee = _booking.FareInfo.ConversionFee;
                _provisionInfo.GeneralWaitingTimeRate = GeneralHourlyRate = ((decimal)_cityVehicleType.WaitingTime * conversionRate) * (100 + conversionFee) / 100;
                _provisionInfo.ApprovedWaitingTimeRate = PurchasedHourlyRate = ((decimal)_cityVehicleType.PreApprovedWaitingTime * conversionRate) * (100 + conversionFee) / 100;

                var foldingWheelcharPassengers = new ObservableCollection<ValueAndName>();
                if (_booking.PrimaryPassenger != null && _booking.PrimaryPassenger.RequiresWheelChair)
                    foldingWheelcharPassengers.Add(new ValueAndName() { Name = "Adult 1 - HAS A WHEELCHAIR (FOLDING)" });

                if (_booking.PassengerInfo != null)
                {
                    int i = 2;
                    foreach (var adultInfo in _booking.PassengerInfo.Adults)
                        if (adultInfo.RequiresWheelChair)
                            foldingWheelcharPassengers.Add(new ValueAndName() { Name = string.Format("Adult {0} - HAS A WHEELCHAIR (FOLDING)", i++) });

                    i = 1;
                    foreach (var childInfo in _booking.PassengerInfo.Childs)
                        if (childInfo.RequiresWheelChair)
                            foldingWheelcharPassengers.Add(new ValueAndName() { Name = string.Format("Child {0} - HAS A WHEELCHAIR (FOLDING)", i++) });
                }
                FoldingWheelcharPassengers = foldingWheelcharPassengers;
                OnPropertyChanged(() => FoldingWheelcharPassengers);

                LargeSuitcaseNumbers.Clear();
                SmallSuitcaseNumbers.Clear();
                GolfClubNumbers.Clear();

                LargeSuitcaseNumbers.Add(new ValueAndName() { Value = 0, Name = "0" });
                SmallSuitcaseNumbers.Add(new ValueAndName() { Value = 0, Name = "0" });
                GolfClubNumbers.Add(new ValueAndName() { Value = 0, Name = "0" });

                int smallSuitcases = _cityVehicleType.SmallBaggage;
                for (int i = 1; i < smallSuitcases; i++)
                    SmallSuitcaseNumbers.Add(new ValueAndName() { Value = i, Name = i.ToString() });

                int largeSuitcases = _cityVehicleType.LargeBaggage - FoldingWheelcharPassengers.Count;
                for (int i = 1; i < largeSuitcases; i++)
                    LargeSuitcaseNumbers.Add(new ValueAndName() { Value = i, Name = i.ToString() });

                int golfClubs = _cityVehicleType.SmallBaggage;
                for (int i = 1; i < golfClubs; i++)
                    GolfClubNumbers.Add(new ValueAndName() { Value = i, Name = i.ToString() });

                UpdateBaggageSelection();

            }), null);
        }
Esempio n. 5
0
 private void UpdateVehicleTypeSelection()
 {
     SelectedVehicleType = VehicleTypes.SingleOrDefault(t => t.VehicleTypeId == _booking.VehicleTypeId);
 }