/// <summary> /// Interface call to get all parkades /// </summary> /// <returns>a Model with all parkades</returns> public IEnumerable <IParkadeModel> RequestParkadesWithinCenter(IGeolocationRequestParameter requestParameter) { if (!requestParameter.IsValid()) { Logger.Error("RequestParkadesWithinCenter: Invalid Model"); return(new List <ParkadeModel>()); } ParkadesModel allParkades = this.RequestParkades <ParkadesModel>(); OccupanciesModel allOccupancies = this.RequestParkadeOccupancies <OccupanciesModel>(); IList <ParkadeModel> parkades = new List <ParkadeModel>(); // TODO Implement Geolocation Service foreach (ParkadeModel parkade in allParkades.Parkades) { if ((requestParameter.Geolocation.Distance(new Geoobject(parkade.Latitude, parkade.Longitude)) > requestParameter.Distance)) { continue; } // TODO Int Parse Prettier int parkadeId; if (!int.TryParse(parkade.Id, out parkadeId)) { parkadeId = -1; } OccupancyModel occupancyOfParkade = allOccupancies .Occupancies .FirstOrDefault(element => element.Site.Id == parkadeId) ?? new OccupancyModel(); parkade.OccupancyModel = occupancyOfParkade; parkades.Add(parkade); } return(parkades.AsEnumerable()); // END }
/// <summary> /// c'tor /// </summary> public ParkingFinderAnalyticsData() { OccupancyModel = new OccupancyModel(); }