amabnl / amadeus-ws-client

PHP Amadeus SOAP Web Service client library
Apache License 2.0
183 stars 191 forks source link

Issue in measurementValue in Fare_InformativeBestPricingWithoutPNR Api #399

Open singhanil221 opened 4 years ago

singhanil221 commented 4 years ago

I am trying 2 Adult, 1 Child, 1 infant and in xml I am getting measurementValue 1 for each but Amadeus told me it will 3 for children. Like below xml,

<passengersGroup>
    <segmentRepetitionControl>
      <segmentControlDetails>
        <quantity>1</quantity>
        <numberOfUnits>2</numberOfUnits>
      </segmentControlDetails>
    </segmentRepetitionControl>
    <travellersID>
      <travellerDetails>
        <measurementValue>1</measurementValue>
      </travellerDetails>
      <travellerDetails>
        <measurementValue>2</measurementValue>
      </travellerDetails>
    </travellersID>
  </passengersGroup>
  <passengersGroup>
    <segmentRepetitionControl>
      <segmentControlDetails>
        <quantity>2</quantity>
        <numberOfUnits>1</numberOfUnits>
      </segmentControlDetails>
    </segmentRepetitionControl>
    <travellersID>
      <travellerDetails>
        <measurementValue>1</measurementValue>
      </travellerDetails>
    </travellersID>
    <discountPtc>
      <valueQualifier>INF</valueQualifier>
      <fareDetails>
        <qualifier>766</qualifier>
      </fareDetails>
    </discountPtc>
  </passengersGroup>
  <passengersGroup>
    <segmentRepetitionControl>
      <segmentControlDetails>
        <quantity>3</quantity>
        <numberOfUnits>1</numberOfUnits>
      </segmentControlDetails>
    </segmentRepetitionControl>
    <travellersID>
      <travellerDetails>
        <measurementValue>3</measurementValue>
      </travellerDetails>
    </travellersID>
    <discountPtc>
      <valueQualifier>CH</valueQualifier>
    </discountPtc>
  </passengersGroup>

I am using api like below code

foreach($passangersData as $passangers)
        {
            $p++;

            $totalPassangers = $passangers['count'];

            $tatooArr = array();

            for($i=0; $i< $totalPassangers; $i++)
            {
                $tatooArr[] = $i+1;
            }

            if($passangers['type'] == 'ADT')
            {
                $passangerObj[] = new Amadeus\Client\RequestOptions\Fare\InformativePricing\Passenger([
                    'tattoos' => $tatooArr
                ]);
            }
            else
            {
                $passangerObj[] = new Amadeus\Client\RequestOptions\Fare\InformativePricing\Passenger([
                    'tattoos' => $tatooArr,
                    'type' => $passangers['type']
                ]);
            }
        }
DerMika commented 4 years ago
  1. What is your issue? Please provide enough information for me to understand what's going on
  2. Which version of Fare_InformativePricing is in your WSDL?
singhanil221 commented 4 years ago
  1. I am implementing the Fare_InformativePricingwithoutPNR api, I am trying for 2 adults+ 1 child + 1 infant. When I trying with our api it showing the measurementValue 1, 2 for adult next again 1 for child, but Amadeus told that it will be 1, 2 for adults and 3 for child, I am not getting 3 for child in the requsest xml from our api.
<travellerDetails>
        <measurementValue>1</measurementValue>
      </travellerDetails>
  1. I am using the version 18.1_039 they have shared the PDF_UG_WBS_Fare_InformativePricingWithoutPNR_TIPNRQ_18.1_039 document.