/// <summary> /// Sets Travel points /// </summary> /// <param name="trip"></param> /// <returns></returns> public TravelPoints SetTravelPoints(List <LocationModel> trip) { var traveled = new TravelPoints(); traveled.LocationId = trip[0].Id; traveled.Points = new List <Point>(); trip.ForEach(point => { traveled.Points.Add(new Point() { Latitude = point.lat, Longitude = point.lng }); }); return(traveled); }
/// <summary> /// Saves to Database the Journey /// </summary> /// <param name="travelPoint"></param> public void SaveVoyage(TravelPoints travelPoint) { Travel travel = new Travel { LocationId = travelPoint.LocationId, TotalKm = travelPoint.TraveledDistance, Coordinates = new List <Coordinates>() }; travelPoint.Points.ForEach(point => { travel.Coordinates.Add(new Coordinates() { Latitude = point.Latitude, Longitude = point.Longitude }); }); _context.Travel.Add(travel); _context.SaveChanges(); }
/// <summary> /// Gets all distances traveled. /// </summary> /// <returns></returns> public List <TravelPoints> GetVoyages() { var travelPoints = new List <TravelPoints>(); var traveled = _context.Travel.Include(table => table.Coordinates).ToList(); traveled.ForEach(tra => { var travel = new TravelPoints(); travel.LocationId = tra.LocationId; travel.TraveledDistance = tra.TotalKm; travel.Points = new List <Point>(); tra.Coordinates.ToList().ForEach(coord => { travel.Points.Add(new Point() { Latitude = coord.Latitude, Longitude = coord.Longitude }); }); travelPoints.Add(travel); }); return(travelPoints); }