private static BFM.OTA_AirLowFareSearchRQ GetBargainRequest() { var odi1 = new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation { Item = "2019-04-16T13:45:00", DepartureWindow = "11001500", RPH = "1", //OriginLocation = new BFM.OriginDestinationInformationTypeOriginLocation { LocationCode = "TPE" }, OriginLocation = new BFM.OriginDestinationInformationTypeOriginLocation { LocationCode = "LAS" }, DestinationLocation = new BFM.OriginDestinationInformationTypeDestinationLocation { LocationCode = "LAX" }, //TPA_Extensions = new BFM.OTA_AirLowFareSearchRQOriginDestinationInformationTPA_Extensions //{ // SegmentType = new BFM.ExchangeOriginDestinationInformationTypeSegmentType // { // Code = BFM.ExchangeOriginDestinationInformationTypeSegmentTypeCode.X, // CodeSpecified = true // }, // IncludeVendorPref = new BFM.IncludeVendorPrefType[] // { // new BFM.IncludeVendorPrefType // { // Code = "B6" // } // } //} }; var odis = new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation[] { odi1 }; //var odis = new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation[] { odi1, odi2 }; var odis = new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation[] { odi1 }; var travelPreferences = new BFM.AirSearchPrefsType { TPA_Extensions = new BFM.AirSearchPrefsTypeTPA_Extensions { TripType = new BFM.AirSearchPrefsTypeTPA_ExtensionsTripType { Value = BFM.AirTripType.OneWay } } }; var travelerInfoSummary = new BFM.TravelerInfoSummaryType { SeatsRequested = new string[] { "1" }, AirTravelerAvail = new BFM.TravelerInformationType[] { new BFM.TravelerInformationType { PassengerTypeQuantity = new BFM.PassengerTypeQuantityType[] { new BFM.PassengerTypeQuantityType { Code = "ADT", Quantity = "1", Changeable = false } } } } }; var req = new BFM.OTA_AirLowFareSearchRQ { Version = "4.3.0", TPA_Extensions = new BFM.OTA_AirLowFareSearchRQTPA_Extensions { IntelliSellTransaction = new BFM.TransactionType { RequestType = new BFM.TransactionTypeRequestType { Name = "50ITINS" } } }, POS = new BFM.SourceType[1] { new BFM.SourceType { RequestorID = new BFM.UniqueID_Type { ID = "1", Type = "1", CompanyName = new BFM.CompanyNameType { Code = "TN", Value = "TN" } }, PseudoCityCode = "PCC" } }, OriginDestinationInformation = odis, TravelPreferences = travelPreferences, TravelerInfoSummary = travelerInfoSummary, }; return(req); }
private static BFM.OTA_AirLowFareSearchRQ GetBargainRequest ( IList <FlightDescription> flightDescriptions, string itemsCount, BFM.AirTripType tripType ) { var odis = flightDescriptions.Select(i => new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation { RPH = i.RPH, Item = i.DepartureDateTime, OriginLocation = new BFM.OriginDestinationInformationTypeOriginLocation { LocationCode = i.OriginLocation }, DestinationLocation = new BFM.OriginDestinationInformationTypeDestinationLocation { LocationCode = i.DestinationLocation }, }).ToList(); if (tripType == BFM.AirTripType.Return) { odis.AddRange(flightDescriptions.Select(i => new BFM.OTA_AirLowFareSearchRQOriginDestinationInformation { RPH = i.RPH, Item = i.ArrivalDateTime, OriginLocation = new BFM.OriginDestinationInformationTypeOriginLocation { LocationCode = i.DestinationLocation }, DestinationLocation = new BFM.OriginDestinationInformationTypeDestinationLocation { LocationCode = i.OriginLocation }, })); } var travelPreferences = new BFM.AirSearchPrefsType { CabinPref = new BFM.CabinPrefType[1] // { new BFM.CabinPrefType { Cabin = BFM.CabinType.Y, PreferLevel = BFM.PreferLevelType.Preferred } }, TPA_Extensions = new BFM.AirSearchPrefsTypeTPA_Extensions { OnlineIndicator = new BFM.AirSearchPrefsTypeTPA_ExtensionsOnlineIndicator { Ind = true }, TripType = new BFM.AirSearchPrefsTypeTPA_ExtensionsTripType { Value = tripType, ValueSpecified = true } } }; var travelerInfoSummary = new BFM.TravelerInfoSummaryType { SeatsRequested = new string[] { "2" }, AirTravelerAvail = new BFM.TravelerInformationType[] { new BFM.TravelerInformationType { PassengerTypeQuantity = new BFM.PassengerTypeQuantityType[] { new BFM.PassengerTypeQuantityType { Code = "ADT", Quantity = "2", Changeable = true } } } } }; var req = new BFM.OTA_AirLowFareSearchRQ { Version = "4.3.0", AvailableFlightsOnly = true, DirectFlightsOnly = true, // TPA_Extensions = new BFM.OTA_AirLowFareSearchRQTPA_Extensions { IntelliSellTransaction = new BFM.TransactionType { RequestType = new BFM.TransactionTypeRequestType { Name = itemsCount } } }, POS = new BFM.SourceType[1] { new BFM.SourceType { RequestorID = new BFM.UniqueID_Type { ID = "1", Type = "1", CompanyName = new BFM.CompanyNameType { Code = "TN", Value = "TN" } }, PseudoCityCode = "PCC" } }, OriginDestinationInformation = odis.ToArray(), TravelPreferences = travelPreferences, TravelerInfoSummary = travelerInfoSummary, }; return(req); }