首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Amadeus PNR检索

Amadeus PNR检索
EN

Stack Overflow用户
提问于 2017-02-16 10:45:50
回答 2查看 1.8K关注 0票数 1

我正在使用c# .net实现c#。

在处理PNR回复时,尝试将乘客数据映射到我们的内部系统。我使用travellerInfo.elementManagementPassenger.reference.number作为Amadeus乘客和内部系统乘客记录之间的链接。

在下面的情况下,它包含一个婴儿和两个成年人。在这里,婴儿记录与成人之一一起出现,不包含对婴儿的单独参考。有没有人知道唯一能识别所有乘客的方法?

代码语言:javascript
复制
<travellerInfo>
 <elementManagementPassenger>
      <reference>
        <qualifier>PT</qualifier>
        <number>2</number>
      </reference>
      <segmentName>NM</segmentName>
      <lineNumber>1</lineNumber>
 </elementManagementPassenger>
 <enhancedPassengerData>
      <enhancedTravellerInformation>
        <travellerNameInfo>
          <quantity>1</quantity>
          <infantIndicator>1</infantIndicator>
        </travellerNameInfo>
        <otherPaxNamesDetails>
          <nameType>UN</nameType>
          <referenceName>Y</referenceName>
          <displayedName>Y</displayedName>
          <surname>TESTER</surname>
          <givenName>TEST MR</givenName>
        </otherPaxNamesDetails>
      </enhancedTravellerInformation>
  </enhancedPassengerData>
  <enhancedPassengerData>
      <enhancedTravellerInformation>
        <travellerNameInfo>
          <quantity>1</quantity>
          <type>INF</type>
        </travellerNameInfo>
        <otherPaxNamesDetails>
          <nameType>UN</nameType>
          <referenceName>Y</referenceName>
          <displayedName>Y</displayedName>
          <surname>TESTER</surname>
          <givenName>TEST1 MSTR</givenName>
        </otherPaxNamesDetails>
      </enhancedTravellerInformation>
   </enhancedPassengerData>
</travellerInfo>
<travellerInfo>
   <elementManagementPassenger>
      <reference>
        <qualifier>PT</qualifier>
        <number>1</number>
      </reference>
      <segmentName>NM</segmentName>
      <lineNumber>2</lineNumber>
    </elementManagementPassenger>
   <enhancedPassengerData>
      <enhancedTravellerInformation>
        <travellerNameInfo>
          <quantity>1</quantity>
        </travellerNameInfo>
        <otherPaxNamesDetails>
          <nameType>UN</nameType>
          <referenceName>Y</referenceName>
          <displayedName>Y</displayedName>
          <surname>TESTER</surname>
          <givenName>TEST3 MRS</givenName>
        </otherPaxNamesDetails>
      </enhancedTravellerInformation>
   </enhancedPassengerData>
</travellerInfo>

成本信息

代码语言:javascript
复制
<referenceForTstData>
  <reference>
    <qualifier>PT</qualifier>
    <number>1</number>
  </reference>
  <reference>
    <qualifier>ST</qualifier>
    <number>1</number>
  </reference>
  <reference>
    <qualifier>ST</qualifier>
    <number>2</number>
  </reference>
</referenceForTstData>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-01 17:21:40

我已经联系了Amadeus技术支持部门,下面是解决方案

除了检查referenceForTstData之外,还需要检查tstData下的fareBasisInfo元素。它包含ticketDesignator,儿童为CH,婴儿为INF。

代码语言:javascript
复制
  <fareBasisInfo>
      <fareElement>
        <primaryCode>xxx</primaryCode>
        <notValidBefore>xxx</notValidBefore>
        <notValidAfter>xxx</notValidAfter>
        <baggageAllowance>1PC</baggageAllowance>
        <fareBasis>2KU</fareBasis>
        <ticketDesignator>CH</ticketDesignator>
      </fareElement>         
    </fareBasisInfo>
票数 0
EN

Stack Overflow用户

发布于 2017-02-16 14:35:30

婴儿指的是2岁以下的儿童,PNR可以有两种类型的婴儿:在飞行期间坐在成人乘客大腿上的lap婴儿(带有乘客型Code=INF),以及有自己座位的婴儿。

这里你看到的是一个INF型婴儿,他与父母同席。因为他们没有自己的座位,在记录上他们不是真正的乘客,他们只是成人乘客的延伸。他们也没有自己的旅行身份证,你需要为婴儿提供的任何服务都需要与父母的旅行身份证相关联。

如果使用沙箱旅行记录API检索记录,您可以更清楚地看到这一点。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42271653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档