Untitled
unknown
csharp
2 years ago
3.0 kB
7
Indexable
public async Task<FlightProductResponseModel> FlightProductSearch(FlightProductRequestDto request)
{
var req = new FlightProductRequestModel
{
Xmlns = "http://www.peakwork.net/pws/2010/03",
AuthKey = _settings.AuthKey, //"d26550a768d59a8e63a1d9f4a432359e",
Lang = request.Lang,
Currency = request.Currency,
OnRequestBookable = "true",
TransferIncluded = "0",
PricesByPax = "1",
PriceType = "discount",
ShowAsLocalTime = "1",
ShowSegments = "true",
ResultsTotal = "300",
ShowingResultsFrom = request.Filters.Paging?.ShowingResultsFrom ?? "0",
ResultsPerPage = request.Filters.Paging?.ResultsPerPage ?? "15",
TravelPeriod = new TravelPeriod
{
DurationAppliance = "flight",
DepartureDate = request.DepartureDate == null ? "" : request.DepartureDate.Value.ToString("yyyy-MM-dd"),
ReturnDate = request.ReturnDate == null ? "" : request.ReturnDate.Value.ToString("yyyy-MM-dd"),
Duration = BaseRequestMapper.CheckDurationDate(request.DepartureDate, request.ReturnDate),
DepartureMaxTime = request.Filters.Departure?.MaxTime == null
? ""
: request.Filters.Departure?.MaxTime.Value.ToString(),
DepartureMinTime = request.Filters.Departure?.MinTime == null
? ""
: request.Filters.Departure?.MinTime.Value.ToString(),
ReturnMaxTime = request.Filters.Return?.MaxTime == null
? ""
: request.Filters.Return?.MaxTime.Value.ToString(),
ReturnMinTime = request.Filters.Return?.MinTime == null
? ""
: request.Filters.Return?.MinTime.Value.ToString()
},
Travellers = request.Guests.GetGuests(),
Flight = new SearchFlight
{
DepartureAirportCodeList = request.DepartureAirportCodeList,
ArrivalAirportCodeList = request.ArrivalAirportCodeList,
StopOver = request.StopOver
}
};
if (!string.IsNullOrEmpty(request.Filters.MinPrice))
{
req.MinPrice = new MinPrice
{
Amount = request.Filters.MinPrice
};
}
if (!string.IsNullOrEmpty(request.Filters.MaxPrice))
{
req.MaxPrice = new MaxPrice
{
Amount = request.Filters.MaxPrice
};
}
string str = XmlSerializeHelper<FlightProductRequestModel>.SerializeToObject(req);
var callSlug = Helpers.Helpers.GetEnumDescription(HUBCallSlugs.FlightProduct);
var res = await _client.PostAsync<FlightProductResponseModel>(BaseUrlHub + callSlug, str);
return res;
}Editor is loading...