soap - 如何将空中附加服务添加到 UpdateReservationRQ
问题描述
进入工作流程 Air Extras 搜索和预订:
- 使用 GetAncillaryOffersRQ 购买 Air Extras。
- 预订一项或多项 Air Extras 并结束交易以使用 UpdateReservationRQ 确认预订。
但是在 UpdateReservationRQ 服务中,我找不到包含每位乘客的辅助服务的架构。
<ns3:UpdateReservationRQ Version="1.19.0" EchoToken="" xmlns:ns3="http://webservices.sabre.com/pnrbuilder/v1_19">
<ns3:RequestType>Stateless</ns3:RequestType>
<ns3:ReturnOptions IncludeUpdateDetails="1" RetrievePNR="1" PriceQuoteServiceVersion="3.2.0"/>
<ns3:ReservationUpdateList>
<ns3:Locator>PNR</ns3:Locator>
<ns3:ReservationUpdateItem>
<ns3:SpecialServiceRequestUpdate op="C" type="H">
<ns3:SegmentAssociationList>
<ns3:SegmentAssociationTag>
<ns3:CarrierCode>AV</ns3:CarrierCode>
<ns3:FlightNumber>0461</ns3:FlightNumber>
<ns3:DepartureDate>2018-09-19</ns3:DepartureDate>
<ns3:BoardPoint>MEL</ns3:BoardPoint>
<ns3:OffPoint>AUH</ns3:OffPoint>
<ns3:ClassOfService>B</ns3:ClassOfService>
<ns3:BookingStatus>HK</ns3:BookingStatus>
</ns3:SegmentAssociationTag>
</ns3:SegmentAssociationList>
<ns3:SpecialService>
<ns3:Code>ABAG</ns3:Code>
<ns3:Text>TEST ABAG</ns3:Text>
</ns3:SpecialService>
</ns3:SpecialServiceRequestUpdate>
</ns3:ReservationUpdateItem>
<ns3:ReceivedFrom>
<ns3:AgentName>HELLO</ns3:AgentName>
</ns3:ReceivedFrom>
</ns3:ReservationUpdateList>
</ns3:UpdateReservationRQ>
解决方案
这是一个对我有用的示例,让我添加使用 GetAncillaryOffers 获得的辅助工具。我从那里获得了产品 ID 和数据,然后他们开始使用 UpdateReservationRQ 预订这些产品。请记住,根据您可能还需要向运营商发送 SSR 消息的辅助设备,我建议您与帮助台联系以获取更多详细信息:
<UpdateReservationRQ Version="1.12.0" xmlns="http://webservices.sabre.com/pnrbuilder/v1_12" xmlns:ns2="http://services.sabre.com/res/or/v1_5">
<RequestType>Stateful</RequestType>
<ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true"/>
<ReservationUpdateList>
<ReservationUpdateItem UpdateId="1">
<AncillaryServicesUpdate op="C">
<NameAssociationList>
<NameAssociationTag>
<LastName>TEST</LastName>
<FirstName>TEST</FirstName>
<NameRefNumber>01.01</NameRefNumber>
</NameAssociationTag>
</NameAssociationList>
<SegmentAssociationList>
<SegmentAssociationTag>
<CarrierCode>LH</CarrierCode>
<FlightNumber>2011</FlightNumber>
<DepartureDate>2019-10-28</DepartureDate>
<BoardPoint>DUS</BoardPoint>
<OffPoint>MUC</OffPoint>
<ClassOfService>H</ClassOfService>
<BookingStatus>HK</BookingStatus>
</SegmentAssociationTag>
</SegmentAssociationList>
<CommercialName>OXYGEN</CommercialName>
<RficCode>E</RficCode>
<RficSubcode>0B4</RficSubcode>
<SSRCode>AOXY</SSRCode>
<OwningCarrierCode>LH</OwningCarrierCode>
<Vendor>ATP</Vendor>
<EMDType>2</EMDType>
<TTLPrice>
<Price>10800</Price>
<Currency>RUB</Currency>
</TTLPrice>
<OriginalBasePrice>
<Price>150.00</Price>
<Currency>EUR</Currency>
</OriginalBasePrice>
<RefundIndicator>N</RefundIndicator>
<BoardPoint>FRA</BoardPoint>
<OffPoint>YVR</OffPoint>
<PurchaseByDate>2020-02-02</PurchaseByDate>
<NumberOfItems>1</NumberOfItems>
<SegmentIndicator>S</SegmentIndicator>
<FirstTravelDate>190617</FirstTravelDate>
<LastTravelDate>991231</LastTravelDate>
<PurchaseTimestamp>2019-07-30T11:59:00</PurchaseTimestamp>
<GroupCode>MD</GroupCode>
</AncillaryServicesUpdate>
</ReservationUpdateItem>
<ReservationUpdateItem UpdateId="2">
<AncillaryServicesUpdate op="C">
<NameAssociationList>
<NameAssociationTag>
<LastName>AKKENT</LastName>
<FirstName>TULIN MR</FirstName>
<NameRefNumber>02.01</NameRefNumber>
</NameAssociationTag>
</NameAssociationList>
<SegmentAssociationList>
<SegmentAssociationTag>
<CarrierCode>LH</CarrierCode>
<FlightNumber>2011</FlightNumber>
<DepartureDate>2019-10-28</DepartureDate>
<BoardPoint>DUS</BoardPoint>
<OffPoint>MUC</OffPoint>
<ClassOfService>H</ClassOfService>
<BookingStatus>HK</BookingStatus>
</SegmentAssociationTag>
</SegmentAssociationList>
<CommercialName>OXYGEN</CommercialName>
<RficCode>E</RficCode>
<RficSubcode>0B4</RficSubcode>
<SSRCode>AOXY</SSRCode>
<OwningCarrierCode>LH</OwningCarrierCode>
<Vendor>ATP</Vendor>
<EMDType>2</EMDType>
<TTLPrice>
<Price>10800</Price>
<Currency>RUB</Currency>
</TTLPrice>
<OriginalBasePrice>
<Price>150.00</Price>
<Currency>EUR</Currency>
</OriginalBasePrice>
<RefundIndicator>N</RefundIndicator>
<BoardPoint>FRA</BoardPoint>
<OffPoint>YVR</OffPoint>
<LatestTravelDatePermitted>9999-12-31</LatestTravelDatePermitted>
<PurchaseByDate>2020-02-02</PurchaseByDate>
<NumberOfItems>1</NumberOfItems>
<SegmentIndicator>S</SegmentIndicator>
<PurchaseTimestamp>2019-07-14T01:12:00Z</PurchaseTimestamp>
<GroupCode>MD</GroupCode>
</AncillaryServicesUpdate>
</ReservationUpdateItem>
<ReservationUpdateItem UpdateId="ssr_1">
<SpecialServiceRequestUpdate op="C" type="G">
<NameAssociationList>
<NameAssociationTag>
<NameRefNumber>01.01</NameRefNumber>
</NameAssociationTag>
</NameAssociationList>
<SegmentAssociationList>
<SegmentAssociationTag>
<CarrierCode>LH</CarrierCode>
<FlightNumber>2011</FlightNumber>
<DepartureDate>2019-10-28</DepartureDate>
<BoardPoint>DUS</BoardPoint>
<OffPoint>MUC</OffPoint>
<ClassOfService>H</ClassOfService>
<BookingStatus>HK</BookingStatus>
</SegmentAssociationTag>
</SegmentAssociationList>
<SpecialService>
<Code>AOXY</Code>
</SpecialService>
</SpecialServiceRequestUpdate>
</ReservationUpdateItem>
<ReservationUpdateItem UpdateId="ssr_2">
<SpecialServiceRequestUpdate op="C" type="G">
<NameAssociationList>
<NameAssociationTag>
<NameRefNumber>02.01</NameRefNumber>
</NameAssociationTag>
</NameAssociationList>
<SegmentAssociationList>
<SegmentAssociationTag>
<CarrierCode>LH</CarrierCode>
<FlightNumber>2011</FlightNumber>
<DepartureDate>2019-10-28</DepartureDate>
<BoardPoint>DUS</BoardPoint>
<OffPoint>MUC</OffPoint>
<ClassOfService>H</ClassOfService>
<BookingStatus>HK</BookingStatus>
</SegmentAssociationTag>
</SegmentAssociationList>
<SpecialService>
<Code>AOXY</Code>
</SpecialService>
</SpecialServiceRequestUpdate>
</ReservationUpdateItem>
<ReceivedFrom>
<AgentName>TEST</AgentName>
</ReceivedFrom>
</ReservationUpdateList>
</UpdateReservationRQ>
推荐阅读
- java - Comparing time is incorrect when picking 12:00
- python - 如何在 Maya python 中使用字典
- java - ValidationError FieldUndefined SPQR GraphQL
- java - 根据缩放级别在地图上缩放自定义标记
- wso2esb - Filter data from JSON by checking condition with two properties - WSO2 ESB
- php - PHP - 使用 imagecopy 函数垂直合并两个图像
- asp.net-mvc - Kendo grid Format number with whitespace as thousand separator and two decimal places
- nxp-microcontroller - Unable to find MQX 4.2.0.1 / 4.2.0.2
- php - How to check if a Flash message exists in CakePHP 3?
- node.js - SyntaxError: Unexpected token { at exports.runInThisContext (vm.js:53:16) in elasticdump