예제 #1
0
 private void SetPrompts(TBookOrder_8 order, string[] prompts, int?[] promptsLength)
 {
     if (prompts != null)
     {
         if (prompts.Length >= 1)
         {
             order.Prompt1 = prompts[0];
         }
         if (prompts.Length >= 2)
         {
             order.Prompt2 = prompts[1];
         }
         if (prompts.Length >= 3)
         {
             order.Prompt3 = prompts[2];
         }
         if (prompts.Length >= 4)
         {
             order.Prompt4 = prompts[3];
         }
         if (prompts.Length >= 5)
         {
             order.Prompt5 = prompts[4];
         }
         if (prompts.Length >= 6)
         {
             order.Prompt6 = prompts[5];
         }
         if (prompts.Length >= 7)
         {
             order.Prompt7 = prompts[6];
         }
         if (prompts.Length >= 8)
         {
             order.Prompt8 = prompts[7];
         }
     }
     if (promptsLength != null)
     {
         if (promptsLength.Length >= 1)
         {
             order.Field1 = ConvertToString(promptsLength[0]);
         }
         if (promptsLength.Length >= 2)
         {
             order.Field2 = ConvertToString(promptsLength[1]);
         }
         if (promptsLength.Length >= 3)
         {
             order.Field3 = ConvertToString(promptsLength[2]);
         }
         if (promptsLength.Length >= 4)
         {
             order.Field4 = ConvertToString(promptsLength[3]);
         }
         if (promptsLength.Length >= 5)
         {
             order.Field5 = ConvertToString(promptsLength[4]);
         }
         if (promptsLength.Length >= 6)
         {
             order.Field6 = ConvertToString(promptsLength[5]);
         }
         if (promptsLength.Length >= 7)
         {
             order.Field7 = ConvertToString(promptsLength[6]);
         }
         if (promptsLength.Length >= 8)
         {
             order.Field8 = ConvertToString(promptsLength[7]);
         }
     }
 }
예제 #2
0
        public IbsFareEstimate GetFareEstimate(double?pickupLat, double?pickupLng, double?dropoffLat, double?dropoffLng, string pickupZipCode, string dropoffZipCode, string accountNumber,
                                               int?customerNumber, int?tripDurationInSeconds, int?providerId, int?vehicleType, int defaultVehiculeTypeId)
        {
            var result = new IbsFareEstimate();

            UseService(service =>
            {
                var tbook = new TBookOrder_8();
                if (pickupLat != null &&
                    pickupLng != null)
                {
                    tbook.PickupAddress = new TWEBAddress
                    {
                        Latitude  = (double)pickupLat,
                        Longitude = (double)pickupLng
                    };
                }
                if (dropoffLat != null &&
                    dropoffLng != null)
                {
                    tbook.DropoffAddress = new TWEBAddress
                    {
                        Latitude  = (double)dropoffLat,
                        Longitude = (double)dropoffLng,
                    };
                }

                tbook.AccountNum    = accountNumber;
                tbook.VehicleTypeID = vehicleType ?? defaultVehiculeTypeId;
                tbook.ChargeTypeID  = -1;

                tbook.ServiceProviderID = providerId ?? -1;
                tbook.PickupDate        = new TWEBTimeStamp {
                    Year = DateTime.Now.Year, Month = DateTime.Now.Month, Day = DateTime.Now.Day
                };
                tbook.PickupTime = new TWEBTimeStamp {
                    Hour = DateTime.Now.Hour, Minute = DateTime.Now.Minute
                };

                if (!string.IsNullOrEmpty(pickupZipCode))
                {
                    tbook.PickupAddress.Postal = pickupZipCode;
                }

                if (!string.IsNullOrEmpty(dropoffZipCode))
                {
                    tbook.DropoffAddress.Postal = dropoffZipCode;
                }

                if (accountNumber.HasValue() && customerNumber.HasValue)
                {
                    tbook.CustomerNum = customerNumber.Value;
                }
                else
                {
                    tbook.CustomerNum = -1;
                }

                if (tripDurationInSeconds.HasValue && tripDurationInSeconds > 0)
                {
                    tbook.WaitTime = tripDurationInSeconds.Value;
                }

                double fare;
                double tolls;
                double distance;
                double tripTime;

                result.FareEstimate = service.EstimateFare_8(UserNameApp, PasswordApp, tbook, out fare, out tolls, out distance, out tripTime);
                if (result.FareEstimate == 0)
                {
                    result.FareEstimate = fare;
                }
                result.Distance = distance;
                result.Tolls    = tolls;
            });

            return(result);
        }