*
  • PurchaseContractId: string
  • *
  • PurchaseItems: Creativestyle_CheckoutByAmazon_Model_Api_Model_Checkout_ItemList
  • * * * This file is part of The Official Amazon Payments Magento Extension * (c) creativestyle GmbH * All rights reserved * * Reuse or modification of this source code is not allowed * without written permission from creativestyle GmbH * * @category Creativestyle * @package Creativestyle_CheckoutByAmazon * @copyright Copyright (c) 2012 creativestyle GmbH (http://www.creativestyle.de) * @author Marek Zabrowarny / creativestyle GmbH */ class Creativestyle_CheckoutByAmazon_Model_Api_Model_Checkout_Request_SetPurchaseItems extends Creativestyle_CheckoutByAmazon_Model_Api_Model_Checkout_Abstract { public function __construct($data = null) { $this->_fields = array( 'PurchaseContractId' => array('FieldValue' => null, 'FieldType' => 'string'), 'PurchaseItems' => array('FieldValue' => null, 'FieldType' => 'Creativestyle_CheckoutByAmazon_Model_Api_Model_Checkout_ItemList') ); parent::__construct($data); } public function convertToQueryString() { $params = array(); $params['Action'] = 'SetPurchaseItems'; if ($this->issetPurchaseContractId()) { $params['PurchaseContractId'] = $this->getPurchaseContractId(); } if ($this->issetPurchaseItems()) { $purchaseItemssetPurchaseItemsRequest = $this->getPurchaseItems(); $purchaseItempurchaseItemsIndex = 1; foreach ($purchaseItemssetPurchaseItemsRequest->getPurchaseItem() as $purchaseItempurchaseItemsIndex1 => $purchaseItempurchaseItems) { if ($purchaseItempurchaseItems->issetMerchantItemId()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.MerchantItemId'] = $purchaseItempurchaseItems->getMerchantItemId(); } if ($purchaseItempurchaseItems->issetSKU()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.SKU'] = $purchaseItempurchaseItems->getSKU(); } if ($purchaseItempurchaseItems->issetMerchantId()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.MerchantId'] = $purchaseItempurchaseItems->getMerchantId(); } if ($purchaseItempurchaseItems->issetTitle()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.Title'] = $purchaseItempurchaseItems->getTitle(); } if ($purchaseItempurchaseItems->issetDescription()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.Description'] = $purchaseItempurchaseItems->getDescription(); } if ($purchaseItempurchaseItems->issetUnitPrice()) { $UnitPricepurchaseItem = $purchaseItempurchaseItems->getUnitPrice(); if ($UnitPricepurchaseItem->issetAmount()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.UnitPrice.Amount'] = $UnitPricepurchaseItem->getAmount(); } if ($UnitPricepurchaseItem->issetCurrencyCode()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.UnitPrice.CurrencyCode'] = $UnitPricepurchaseItem->getCurrencyCode(); } } if ($purchaseItempurchaseItems->issetQuantity()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.Quantity'] = $purchaseItempurchaseItems->getQuantity(); } if ($purchaseItempurchaseItems->issetURL()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.URL'] = $purchaseItempurchaseItems->getURL(); } if ($purchaseItempurchaseItems->issetCategory()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.Category'] = $purchaseItempurchaseItems->getCategory(); } if ($purchaseItempurchaseItems->issetFulfillmentNetwork()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.FulfillmentNetwork'] = $purchaseItempurchaseItems->getFulfillmentNetwork(); } if ($purchaseItempurchaseItems->issetItemCustomData()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.ItemCustomData'] = $purchaseItempurchaseItems->getItemCustomData(); } if ($purchaseItempurchaseItems->issetProductType()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.ProductType'] = $purchaseItempurchaseItems->getProductType(); } if ($purchaseItempurchaseItems->issetPhysicalProductAttributes()) { $physicalProductAttributespurchaseItem = $purchaseItempurchaseItems->getPhysicalProductAttributes(); if ($physicalProductAttributespurchaseItem->issetWeight()) { $weightphysicalProductAttributes = $physicalProductAttributespurchaseItem->getWeight(); if ($weightphysicalProductAttributes->issetValue()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.Weight.Value'] = $weightphysicalProductAttributes->getValue(); } if ($weightphysicalProductAttributes->issetUnit()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.Weight.Unit'] = $weightphysicalProductAttributes->getUnit(); } } if ($physicalProductAttributespurchaseItem->issetCondition()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.Condition'] = $physicalProductAttributespurchaseItem->getCondition(); } if ($physicalProductAttributespurchaseItem->issetDeliveryMethod()) { $deliveryMethodphysicalProductAttributes = $physicalProductAttributespurchaseItem->getDeliveryMethod(); if ($deliveryMethodphysicalProductAttributes->issetServiceLevel()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.DeliveryMethod.ServiceLevel'] = $deliveryMethodphysicalProductAttributes->getServiceLevel(); } if ($deliveryMethodphysicalProductAttributes->issetDisplayableShippingLabel()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.DeliveryMethod.DisplayableShippingLabel'] = $deliveryMethodphysicalProductAttributes->getDisplayableShippingLabel(); } if ($deliveryMethodphysicalProductAttributes->issetDestinationName()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.DeliveryMethod.DestinationName'] = $deliveryMethodphysicalProductAttributes->getDestinationName(); } if ($deliveryMethodphysicalProductAttributes->issetShippingCustomData()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.DeliveryMethod.ShippingCustomData'] = $deliveryMethodphysicalProductAttributes->getShippingCustomData(); } } if ($physicalProductAttributespurchaseItem->issetItemCharges()) { $itemChargesPhysicalProductAttributes = $physicalProductAttributespurchaseItem->getItemCharges(); if ($itemChargesPhysicalProductAttributes->issetTax()) { $taxItemCharges = $itemChargesPhysicalProductAttributes->getTax(); if ($taxItemCharges->issetAmount()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Tax.Amount'] = $taxItemCharges->getAmount(); } if ($taxItemCharges->issetCurrencyCode()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Tax.CurrencyCode'] = $taxItemCharges->getCurrencyCode(); } } if ($itemChargesPhysicalProductAttributes->issetShipping()) { $shippingItemCharges = $itemChargesPhysicalProductAttributes->getShipping(); if ($shippingItemCharges->issetAmount()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Shipping.Amount'] = $shippingItemCharges->getAmount(); } if ($shippingItemCharges->issetCurrencyCode()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Shipping.CurrencyCode'] = $shippingItemCharges->getCurrencyCode(); } } if ($itemChargesPhysicalProductAttributes->issetPromotions()) { $promotionsItemCharges = $itemChargesPhysicalProductAttributes->getPromotions(); foreach ($promotionsItemCharges->getPromotion() as $promotionPromotionsIndex1 => $promotionPromotions) { $promotionPromotionsIndex = $promotionPromotionsIndex1 + 1; if ($promotionPromotions->issetPromotionId()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Promotions.Promotion.' . ($promotionPromotionsIndex) . '.PromotionId'] = $promotionPromotions->getPromotionId(); } if ($promotionPromotions->issetDescription()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Promotions.Promotion.' . ($promotionPromotionsIndex) . '.Description'] = $promotionPromotions->getDescription(); } if ($promotionPromotions->issetDiscount()) { $discountPromotion = $promotionPromotions->getDiscount(); if ($discountPromotion->issetAmount()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Promotions.Promotion.' . ($promotionPromotionsIndex) . '.Discount.Amount'] = $discountPromotion->getAmount(); } if ($discountPromotion->issetCurrencyCode()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.PhysicalProductAttributes.ItemCharges.Promotions.Promotion.' . ($promotionPromotionsIndex) . '.Discount.CurrencyCode'] = $discountPromotion->getCurrencyCode(); } } } } } } if ($purchaseItempurchaseItems->issetDigitalProductAttributes()) { $digitalProductAttributespurchaseItem = $purchaseItempurchaseItems->getDigitalProductAttributes(); if ($digitalProductAttributespurchaseItem->issetdummyDigitalProperty()) { $params['PurchaseItems.PurchaseItem.' . ($purchaseItempurchaseItemsIndex) . '.DigitalProductAttributes.dummyDigitalProperty'] = $digitalProductAttributespurchaseItem->getdummyDigitalProperty(); } } $purchaseItempurchaseItemsIndex++; } } return $params; } }