コード例 #1
0
ファイル: BusInfo.cs プロジェクト: MikeyTeal23/BusBoard
 public void UpdateBusStopsFromApi()
 {
     try
     {
         if (Coordinate.Latitude != null && Coordinate.Longitude != null)
         {
             BusStops = BusApi.GetTopReultsForCoordinate(Coordinate, 5);
         }
         else
         {
             BusStops = BusApi.GetTopReultsForPostcode(PostCode, 5);
         }
     }
     catch { }
 }
コード例 #2
0
        public override bool TryFind(BusSearchParameters searchParameters, Credentials?credentialsForOrder, ref string goodResultMessage)
        {
            Station from;
            Station to;

            if (searchParameters.FromStation == PageViewModels.Station.Minsk)
            {
                from = BusApi.MinskStation;
                to   = BusApi.StolbtcyStation;
            }
            else
            {
                from = BusApi.StolbtcyStation;
                to   = BusApi.MinskStation;
            }

            var requestParameters = new SearchParameters(from, to, searchParameters.Date);

            if (!BusApi.GetSchedule(in requestParameters, out ReadOnlyCollection <BusInfo> schedule))
            {
                throw new NotImplementedException();
            }


            List <BusInfo> filteredBuses = FilteredBuses(schedule, searchParameters);

            if (filteredBuses.Count == 0)
            {
                return(false);
            }

            if (!credentialsForOrder.HasValue)
            {
                goodResultMessage = $"Was found at: {DateTime.Now.ToLongTimeString()}";
                return(true);
            }

            Credentials credential = credentialsForOrder.Value;
            BusInfo     targetBus  = filteredBuses[filteredBuses.Count / 2];

            BusApi.Order(targetBus, from, credential.Login, credential.Password, searchParameters.PassengersCount);
            goodResultMessage = $"Was ordered for {targetBus.Time.ToShortString()} at: {DateTime.Now.ToLongTimeString()}";
            return(true);
        }
コード例 #3
0
        public void Run()
        {
            while (true)
            {
                Console.Write(">");
                string userInput = Console.ReadLine();
                try
                {
                    var closestBusStops = BusApi.GetTopReultsForPostcode(userInput, 5);

                    printTopResults(closestBusStops[0]);
                    printTopResults(closestBusStops[1]);
                }
                catch (Exception e)
                {
                    Console.WriteLine($"Invalid address {e}");
                }
            }
        }
コード例 #4
0
ファイル: AtlasBaseBusModel.cs プロジェクト: KonkLaw/Helpers
        public override Uri GetSiteUri(BusSearchParameters searchParameters)
        {
            SearchParameters requestParameters = ConvertParameters(searchParameters);

            return(BusApi.GetUrl(requestParameters));
        }
コード例 #5
0
 public override Uri GetSiteUri(BusSearchParameters searchParameters) => BusApi.GetSiteUri();