public DirectionInfo Get(IbsFareRequest request) { var tripDurationInMinutes = (request.TripDurationInSeconds.HasValue ? (int?)TimeSpan.FromSeconds(request.TripDurationInSeconds.Value).TotalMinutes : null); var defaultVehiculeType = _vehicleTypeDao.GetAll().FirstOrDefault(); var fare = _ibsServiceProvider.Booking().GetFareEstimate( request.PickupLatitude, request.PickupLongitude, request.DropoffLatitude, request.DropoffLongitude, request.PickupZipCode, request.DropoffZipCode, request.AccountNumber, request.CustomerNumber, tripDurationInMinutes, _serverSettings.ServerData.DefaultBookingSettings.ProviderId, request.VehicleType, defaultVehiculeType != null ? defaultVehiculeType.ReferenceDataVehicleId : -1); if (fare.FareEstimate != null) { double distance = fare.Distance ?? 0; return(new DirectionInfo { Distance = distance, Price = fare.FareEstimate, FormattedDistance = _resources.FormatDistance(distance), FormattedPrice = _resources.FormatPrice(fare.FareEstimate) }); } return(new DirectionInfo()); }