Esempio n. 1
0
        public IActionResult Directions(int itineraryId)
        {
            Itinerary itinerary = itineraryDAO.getItineraryById(itineraryId);

            itinerary.Landmarks = itineraryDAO.getItinerary(itineraryId);

            string origin    = itinerary.StartPoint.Replace(" ", "+");
            int    lastIndex = itinerary.Landmarks.Count;
            //string destination = itinerary.Landmarks[lastIndex - 1].LandmarkId;

            WebClient client = new WebClient();
            string    url    = $"https://maps.googleapis.com/maps/api/directions/json?key=AIzaSyANWIg-qW05HeNmXG2Yh1Fd7w8I9w4WXto&origin={origin}&destination={origin}";

            if (lastIndex > 1)
            {
                string waypoints = "";
                for (int i = 0; i <= lastIndex - 2; i++)
                {
                    waypoints += $"place_id:{itinerary.Landmarks[i].LandmarkId}|";
                }

                waypoints += $"place_id:{itinerary.Landmarks[lastIndex - 1].LandmarkId}";

                url += $"&waypoints=optimize:true|{waypoints}";
            }

            string s = client.DownloadString(url);

            return(new ContentResult()
            {
                Content = s
            });
        }
        public IActionResult Display(int itineraryId)
        {
            Itinerary itinerary = itineraryDAO.getItineraryById(itineraryId);

            itinerary.Landmarks = itineraryDAO.getItinerary(itineraryId);

            return(Ok(itinerary));
        }