public void FillData(string origin, string destination, string startDate, string endDate, string originCountry, string originCity, string destCountry, string destCity) { this.departureDate = AdjustDateToAPI(startDate); this.returnDate = AdjustDateToAPI(endDate); this.originCity = originCity; this.originCountry = originCountry; this.destinationCity = destCity; this.destinationCountry = destCountry; this.originCodeCity = FixCode(origin); this.destinationCodeCity = FixCode(destination); BuildURL(); GetJson(); if (response != "") // there was an error with the request { return; } dynamic results = JsonConvert.DeserializeObject(json); for (int i = 0; i < results.results.Count; ++i) { FlightRouteVM temp_outbound = new FlightRouteVM(); FlightRouteVM temp_inbound = new FlightRouteVM(); temp_outbound.DepartureDate = FixDate(results.results[i].itineraries[0].outbound.flights[0].departs_at.ToString().Substring(0, 10)); temp_outbound.DepartureTime = results.results[i].itineraries[0].outbound.flights[0].departs_at.ToString().Substring(11, 5); temp_outbound.ArrivalDate = FixDate(results.results[i].itineraries[0].outbound.flights[0].arrives_at.ToString().Substring(0, 10)); temp_outbound.ArrivalTime = results.results[i].itineraries[0].outbound.flights[0].arrives_at.ToString().Substring(11, 5); temp_outbound.DepartureAirportCode = results.results[i].itineraries[0].outbound.flights[0].origin.airport; temp_outbound.ArrivalAirportCode = results.results[i].itineraries[0].outbound.flights[0].destination.airport; temp_outbound.FlightNumber = results.results[i].itineraries[0].outbound.flights[0].flight_number; temp_outbound.DepartureAirportName = GetAirportName(results.results[i].itineraries[0].outbound.flights[0].origin.airport.ToString()); temp_outbound.ArrivalAirportName = GetAirportName(results.results[i].itineraries[0].outbound.flights[0].destination.airport.ToString()); temp_outbound.DepartureDay = ToolsClass.DayOfTheWeek(FixDate(results.results[i].itineraries[0].outbound.flights[0].departs_at.ToString().Substring(0, 10))); temp_outbound.ArrivalDay = ToolsClass.DayOfTheWeek(FixDate(results.results[i].itineraries[0].outbound.flights[0].arrives_at.ToString().Substring(0, 10))); temp_outbound.TimeDuration = ToolsClass.TimeDifferences(results.results[i].itineraries[0].outbound.flights[0].departs_at.ToString().Substring(11, 5), results.results[i].itineraries[0].outbound.flights[0].arrives_at.ToString().Substring(11, 5)); temp_inbound.DepartureDate = FixDate(results.results[i].itineraries[0].inbound.flights[0].departs_at.ToString().Substring(0, 10)); temp_inbound.DepartureTime = results.results[i].itineraries[0].inbound.flights[0].departs_at.ToString().Substring(11, 5); temp_inbound.ArrivalDate = FixDate(results.results[i].itineraries[0].inbound.flights[0].arrives_at.ToString().Substring(0, 10)); temp_inbound.ArrivalTime = results.results[i].itineraries[0].inbound.flights[0].arrives_at.ToString().Substring(11, 5); temp_inbound.DepartureAirportCode = results.results[i].itineraries[0].inbound.flights[0].origin.airport; temp_inbound.ArrivalAirportCode = results.results[i].itineraries[0].inbound.flights[0].destination.airport; temp_inbound.FlightNumber = results.results[i].itineraries[0].inbound.flights[0].flight_number; temp_inbound.DepartureAirportName = GetAirportName(results.results[i].itineraries[0].inbound.flights[0].origin.airport.ToString()); temp_inbound.ArrivalAirportName = GetAirportName(results.results[i].itineraries[0].inbound.flights[0].destination.airport.ToString()); temp_inbound.DepartureDay = ToolsClass.DayOfTheWeek(FixDate(results.results[i].itineraries[0].inbound.flights[0].departs_at.ToString().Substring(0, 10))); temp_inbound.ArrivalDay = ToolsClass.DayOfTheWeek(FixDate(results.results[i].itineraries[0].inbound.flights[0].arrives_at.ToString().Substring(0, 10))); temp_inbound.TimeDuration = ToolsClass.TimeDifferences(results.results[i].itineraries[0].inbound.flights[0].departs_at.ToString().Substring(11, 5), results.results[i].itineraries[0].inbound.flights[0].arrives_at.ToString().Substring(11, 5)); outbound.Add(temp_outbound); inbound.Add(temp_inbound); seatsRemaining.Add(results.results[i].itineraries[0].inbound.flights[0].booking_info.seats_remaining.ToString()); airline.Add(results.results[i].itineraries[0].inbound.flights[0].marketing_airline.ToString()); price.Add(Convert.ToDouble(results.results[i].fare.total_price.ToString())); } }
// Temp ActionResult public ActionResult SearchResults() { List <string> airline = new List <string>(); airline.Add("U2"); airline.Add("IZ"); airline.Add("BS"); List <FlightRouteVM> inbound = new List <FlightRouteVM>(); FlightRouteVM fr = new FlightRouteVM() { ArrivalAirportCode = "TLV", ArrivalAirportName = "Ben Gurion Airport", ArrivalDate = "10.09.2018", ArrivalDay = "Monday", ArrivalTime = "14:15", DepartureAirportCode = "LTN", DepartureAirportName = "Luton Airport", DepartureDate = "10.09.2018", DepartureDay = "Monday", DepartureTime = "07:15", FlightNumber = "2083", TimeDuration = ToolsClass.TimeDifferences("07:15", "14:15"), }; inbound.Add(fr); inbound.Add(fr); inbound.Add(fr); List <FlightRouteVM> outbound = new List <FlightRouteVM>(); FlightRouteVM fr2 = new FlightRouteVM() { ArrivalAirportCode = "LTN", ArrivalAirportName = "Luton Airport", ArrivalDate = "03.09.2018", ArrivalDay = "Monday", ArrivalTime = "23:50", DepartureAirportCode = "TLV", DepartureAirportName = "Ben Gurion Airport", DepartureDate = "03.09.2018", DepartureDay = "Monday", DepartureTime = "20:25", FlightNumber = "2086", TimeDuration = ToolsClass.TimeDifferences("20:25", "23:50"), }; outbound.Add(fr2); outbound.Add(fr2); outbound.Add(fr2); List <double> price = new List <double>(); price.Add(404.35); price.Add(468.94); price.Add(1203.94); List <string> seatsRemaining = new List <string>(); seatsRemaining.Add("9"); seatsRemaining.Add("9"); seatsRemaining.Add("9"); FlightSearchResultsVM objToPass = new FlightSearchResultsVM() { departureDate = "03.09.2018", destinationCity = "London", destinationCodeCity = "LON", destinationCountry = "Uk", inbound = inbound, originCity = "Tel aviv", originCodeCity = "TLV", originCountry = "Israel", outbound = outbound, price = price, returnDate = "10.09.2018", seatsRemaining = seatsRemaining, airline = airline, latitude = 51.5, longitude = -0.1667, }; return(View(objToPass)); }
// ----------------------------- this view is only for static run (TEMP VIEW) public ActionResult ViewPackageInfo() { List <string> amenities = new List <string>(); amenities.Add("Elevators"); amenities.Add("Sauna"); amenities.Add("Room service"); amenities.Add("Internet services"); amenities.Add("220 AC"); amenities.Add("Parking"); amenities.Add("Pets allowed"); amenities.Add("Wireless internet connection in public areas"); amenities.Add("Lounges/bars"); amenities.Add("24-hour front desk"); List <string> contacts = new List <string>(); contacts.Add("PHONE: 49/8161/5320"); contacts.Add("FAX: 49/8161/532100"); contacts.Add("EMAIL: [email protected]"); contacts.Add("URL: www.mercure.com"); List <string> images = new List <string>(); images.Add("https://maps.googleapis.com/maps/api/place/photo?maxwidth=800&photoreference=CmRaAAAAtIARwdNqhiQNC-jj-6upRvxxBXgk5Wdl_t484HkmD_ecnJrvi1wK3l53njD6C-XYc0dUEdEGg_SThMQJs7bZpb-2SpTAIUbRmTPoe2aOnpK7tIeC-oERWKsSjvS3H7eyEhA1a_4sr0mjoc7yFPpqvEFhGhSzrFsXmCqtC_7EZdfsvH1zdCjqEQ&key=AIzaSyCArIw-PoGMwSXFZr08nZT64BPDvix8w98"); images.Add("https://maps.googleapis.com/maps/api/place/photo?maxwidth=800&photoreference=CmRaAAAA9zNoq-JwlWS9MkZCsM0FxyrXoogblHtJtoaPeJRzD2DZVWQS5qrq9vXYY7gCqS-MrEAd389xmp57gKYv7k1KzeqN7pO2Ufc1EUs6IxTX6D2541mMA-N5cAIVxf7ib_nbEhAoYFrmfqLRbhQbzIkNGqh3GhTk2uP9_DRnbDVmt_Nihbz0_ZDbIA&key=AIzaSyCArIw-PoGMwSXFZr08nZT64BPDvix8w98"); List <string> roomType1 = new List <string>(); roomType1.Add("Room type: Unspecified"); roomType1.Add("Bed type: Double"); roomType1.Add("Number of beds: 1"); List <string> roomType2 = new List <string>(); roomType2.Add("Room type: Unspecified"); roomType2.Add("Bed type: Twin"); roomType2.Add("Number of beds: 2"); List <RoomVM> rooms = new List <RoomVM>(); rooms.Add(new RoomVM() { roomDescription = "1 DOUBLE BED NONSMOKING FEEL YOURSELF AT HOME ", roomPrice = 684.27, roomType = roomType1 }); rooms.Add(new RoomVM() { roomDescription = "2 SINGLE BEDS NONSMOKING FEEL YOURSELF AT HOME ", roomPrice = 684.27, roomType = roomType1 }); HotelOrderDetailsVM hotel = new HotelOrderDetailsVM() { address = "ADDRESS: Dr Von Daller Str 1 3, Freising", amenities = amenities, apiKey = "AIzaSyCArIw-PoGMwSXFZr08nZT64BPDvix8w98", contact = contacts, hotelName = "Mercure Muc Freising Airport", image = images, latitude = 48.40068, longitude = 11.75076, rating = "4", room = rooms, reviews = new List <HotelReview>(), customersName = new List <string>(), }; FlightRouteVM inbound = new FlightRouteVM() { ArrivalAirportCode = "TLV", ArrivalAirportName = "Ben Gurion Airport", ArrivalDate = "18.09.2018", ArrivalDay = "Tuesday", ArrivalTime = "03:35", DepartureAirportCode = "MUC", DepartureAirportName = "Munich International Airport", DepartureDate = "17.09.2018", DepartureDay = "Monday", DepartureTime = "23:00", FlightNumber = "680" }; FlightRouteVM outbound = new FlightRouteVM() { ArrivalAirportCode = "MUC", ArrivalAirportName = "Munich International Airport", ArrivalDate = "10.09.2018", ArrivalDay = "Monday", ArrivalTime = "09:55", DepartureAirportCode = "TLV", DepartureAirportName = "Ben Gurion Airport", DepartureDate = "10.09.2018", DepartureDay = "Monday", DepartureTime = "06:55", FlightNumber = "681" }; FlightInfoVM flight = new FlightInfoVM() { airline = "LH", departureDate = "10.09.2018", destinationCity = "Munich", destinationCodeCity = "MUC", destinationCountry = "Germany", inbound = inbound, originCity = "Tel Aviv", originCodeCity = "TLV", originCountry = "Israel", outbound = outbound, price = "555.07", returnDate = "17.09.2018", seatsRemaining = "9", timeDuration_outbound = ToolsClass.TimeDifferences("06:55", "09:55"), timeDuration_inbound = ToolsClass.TimeDifferences("23:00", "03:35"), }; PackageInfoVM package = new PackageInfoVM() { hotel = hotel, flight = flight, nights = 7, price = 3121.4, composition = "Couple", }; return(View(package)); }