/** * @param \ArrayObject|\Generated\Shared\Transfer\ProductOptionTransfer[] $itemProductOptions * @param \Generated\Shared\Transfer\ItemTransfer $itemTransfer * * @return void */ protected function setProductOptionTotals(\ArrayObject $itemProductOptions, ItemTransfer $itemTransfer) { $totalProductOptionGrossSum = 0; $totalProductOptionGrossUnit = 0; $totalOptionsRefundableAmount = 0; foreach ($itemProductOptions as $productOptionTransfer) { $productOptionTransfer->requireUnitGrossPrice()->requireQuantity(); $productOptionTransfer->setSumGrossPrice($productOptionTransfer->getUnitGrossPrice() * $productOptionTransfer->getQuantity()); $totalProductOptionGrossSum += $productOptionTransfer->getSumGrossPrice(); $totalProductOptionGrossUnit += $productOptionTransfer->getUnitGrossPrice(); $totalOptionsRefundableAmount += $productOptionTransfer->getRefundableAmount(); } $itemTransfer->setUnitGrossPriceWithProductOptions($itemTransfer->getUnitGrossPrice() + $totalProductOptionGrossUnit); $itemTransfer->setSumGrossPriceWithProductOptions($itemTransfer->getSumGrossPrice() + $totalProductOptionGrossSum); $itemTransfer->setRefundableAmount($itemTransfer->getRefundableAmount() + $totalOptionsRefundableAmount); }