public MainViewModels()
 {
     BusServices         = new BusServices();
     dispatcher.Tick    += Dispatcher_Tick;
     dispatcher.Interval = new TimeSpan(0, 0, 5);
     dispatcher.Start();
 }
        public StartViewModel()
        {
            string APIKey = ConfigurationManager.AppSettings["BingAPIKEY"];

            Provider     = new ApplicationIdCredentialsProvider(APIKey);
            BusServices  = new BusServices();
            AllBusesData = BusServices.GetBuses();
            Buses        = AllBusesData;

            BusNumbers = BusServices.GetBusNumbers();
            BusNumber  = BusNumbers[0];

            SelectionChangedCommand = new RelayCommand(OnSelectionChanged);
        }
Ejemplo n.º 3
0
        internal void Setup(string jsonData)
        {
            try
            {
                BusServices.Clear();
                _theSchedule = JsonConvert.DeserializeObject <ScheduleData>(jsonData);
                foreach (var service in _theSchedule.BusServices)
                {
                    BusServices.Add(service);
                }

                BusStations.Clear();
                foreach (var station in _theSchedule.BusStations)
                {
                    BusStations.Add(station);
                }
                Routes.Clear();
                Routes.AddRange(_theSchedule.Routes);

                RouteDetails.Clear();
                RouteDetails.AddRange(_theSchedule.RoutesDetails.Select(rd => new RouteStationViewModel {
                    RouteId = rd.BusRouteId, BusStation = BusStations.FirstOrDefault(BusStopSchedule => BusStopSchedule.Id == rd.BusStopId), OrderNum = rd.OrderNum, TimeDiff = rd.TimeDiff, RouteVariantId = rd.RouteVariant
                }));

                RouteBeginTimes.Clear();
                RouteBeginTimes.AddRange(_theSchedule.RoutesBeginTimes);

                TimeAdjustments.Clear();
                TimeAdjustments.AddRange(_theSchedule.TimeAdjustments.Select(adj => new TimeAdjustmentViewModel(RouteBeginTimes.First(rbt => rbt.RouteId == adj.RouteId && rbt.RouteVariant == adj.RouteVariantId && rbt.Id == adj.BeginTimeId && rbt.Days == adj.Days), TimeSpan.FromMinutes(adj.TimeAdjustmentMin), adj.StationId)));

                OnPropertyChanged(nameof(BusServices));
                OnPropertyChanged(nameof(BusStations));
            }
            catch (Exception exc)
            {
                var msg = exc.Message;
            }
        }
 private void OnSelectionChanged(object data = null)
 {
     Buses = BusServices.GetBusesWithBusNumber(AllBusesData, BusNumber);
 }