/** * @param \Orm\Zed\Sales\Persistence\SpySalesOrderItem[] $salesOrderItems * @param \Orm\Zed\Sales\Persistence\SpySalesOrder $salesOrderEntity * * @return \Generated\Shared\Transfer\RefundTransfer */ public function calculateRefund(array $salesOrderItems, SpySalesOrder $salesOrderEntity) { $orderTransfer = $this->getOrderTransfer($salesOrderEntity); $refundTransfer = new RefundTransfer(); $refundTransfer->setAmount(0); $refundTransfer->setFkSalesOrder($orderTransfer->getIdSalesOrder()); foreach ($this->refundCalculatorPlugins as $refundCalculatorPlugin) { $refundTransfer = $refundCalculatorPlugin->calculateRefund($refundTransfer, $orderTransfer, $salesOrderItems); } return $refundTransfer; }
/** * @param \Generated\Shared\Transfer\OrderTransfer $order * * @return \Generated\Shared\Transfer\RefundTransfer */ protected function createRefundTransfer(OrderTransfer $order) { $refund = new RefundTransfer(); $refund->setFkSalesOrder($order->getIdSalesOrder()); return $refund; }