示例#1
0
        public async Task <Station[]> SearchStationAsync(string name)
        {
            var path = $"train_search/station/?term={name}";
            var json = await GetJson(path, HttpMethod.Get);

            return(ModelBase.FromJsonArray <Station>(json));
        }
示例#2
0
        public async Task <Coach[]> ListCoachesAsync(Train train, CoachType coachType)
        {
            var data = new Dictionary <string, string>
            {
                ["from"]          = train.SourceStation.ID.ToString(),
                ["to"]            = train.DestinationStation.ID.ToString(),
                ["train"]         = train.Number,
                ["date"]          = train.DepartureTime.DateTime.ToRequestString(),
                ["wagon_type_id"] = coachType.Letter,
                ["another_ec"]    = "0"
            };
            var result = await GetJson("train_wagons/", data : data);

            return(ModelBase.FromJsonArray <Coach>(result["wagons"]));
        }
示例#3
0
        public async Task <Train[]> ListTrainsAsync(DateTime date, Station source, Station destination)
        {
            var data = new Dictionary <string, string>
            {
                ["from"]       = source.ID.ToString(),
                ["to"]         = destination.ID.ToString(),
                ["date"]       = date.ToRequestString(),
                ["time"]       = "00:00",
                ["another_ec"] = "0",
                ["get_tpl"]    = "1"
            };

            var result = await GetJson("train_search/", data : data);

            return(ModelBase.FromJsonArray <Train>(result["list"]));
        }
示例#4
0
        public async Task <Route[]> GetTrainRoutes(params RouteData[] routes)
        {
            var data = new Dictionary <string, string>();

            for (int i = 0; i < routes.Length; i++)
            {
                var routeData = routes[i].ToDictionary();

                foreach (var key in routeData.Keys)
                {
                    data.Add($"routes[{i}][{key}]", routeData[key]);
                }
            }

            var result = await GetJson("route/", data : data);

            return(ModelBase.FromJsonArray <Route>(result["routes"]));
        }