public async Task <bool> AddLinesToDatabase() { string response = await _getData.GetJsonString(AppSettings.LinesListJson); if (string.IsNullOrEmpty(response)) { return(false); } JArray linesArray = JArray.Parse(response); LastId = await _linesRepository.GetLastId(); if (LastId != 0) { await _linesRepository.DeleteAll(); } foreach (var lines in linesArray) { await _linesRepository.Create(new Line { Id = LastId + 1, Type = lines.Value <string>("typ"), LineNumber = lines.Value <string>("numerlinii"), DirectionsList = _maps.MapUnicodeCharsToPolishChars(lines["kierunki"].ToString()) }); LastId++; } return(true); }
public async Task <bool> AddStopsToDatabase() { try { string response = await _getData.GetJsonString(AppSettings.StopsListJson); if (string.IsNullOrEmpty(response)) { return(false); } JArray linesArray = JArray.Parse(response); LastId = await _stopsRepository.GetLastId(); if (LastId != 0) { await _stopsRepository.DeleteAll(); } foreach (var stop in linesArray) { await _stopsRepository.Create(new StopRepo { Id = LastId + 1, StopName = _maps.MapUnicodeCharsToPolishChars(stop.Value <string>("nazwa")), StopNumbers = stop.Value <string>("numery"), VehiclesList = _maps.MapUnicodeCharsToPolishChars(stop.Value <string>("kierunki")) }); LastId++; } return(true); } catch (Exception ex) { return(false); } }
public async Task <DeparturesList> GetDeparturesForStopNumber(string number) { try { List <DepartureDetails> departureList = new List <DepartureDetails>(); string response = await _getData.GetJsonString(string.Format(AppResources.Url_GetDepartures, number)); if (string.IsNullOrEmpty(response)) { return(SetupFailedList(ErrorType.NoDepartures)); } if (!(JObject.Parse(response)["odjazdy"] is JArray departuresArray)) { return(SetupFailedList(ErrorType.NoDepartures)); } foreach (var departure in departuresArray) { var departureItem = departure.ToObject <DepartureDetails>(); departureItem.LineNumber = departureItem.LineNumber.Trim(); departureItem.Direction = _maps.MapUnicodeCharsToPolishChars(departureItem.Direction).Trim().Replace("-", "/"); departureItem.Time = departureItem.Time.Trim().Replace(">>", "teraz"); departureItem.VehicleType = DetermineVehicleType(departureItem.LineNumber); departureList.Add(departureItem); } return(new DeparturesList { IsSuccess = true, DepartureList = departureList }); } catch (Exception ex) { return(new DeparturesList { IsSuccess = false, Message = ex.Message }); } }