本文整理匯總了PHP中Magento\Sales\Model\Order\Payment::refund方法的典型用法代碼示例。如果您正苦於以下問題:PHP Payment::refund方法的具體用法?PHP Payment::refund怎麽用?PHP Payment::refund使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Sales\Model\Order\Payment
的用法示例。
在下文中一共展示了Payment::refund方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testRefund
/**
* @covers \Magento\Sales\Model\Order\Payment::refund()
*/
public function testRefund()
{
$amount = 204.04;
$this->creditMemoMock->expects(static::once())->method('getBaseGrandTotal')->willReturn($amount);
$this->creditMemoMock->expects(static::once())->method('getGrandTotal')->willReturn($amount);
$this->creditMemoMock->expects(static::once())->method('getDoTransaction')->willReturn(true);
$this->paymentMethodMock->expects(static::once())->method('canRefund')->willReturn(true);
$this->mockInvoice(self::TRANSACTION_ID, 0);
$this->creditMemoMock->expects(static::once())->method('getInvoice')->willReturn($this->invoiceMock);
$captureTranId = self::TRANSACTION_ID . '-' . Transaction::TYPE_CAPTURE;
$captureTransaction = $this->getMockBuilder(Transaction::class)->disableOriginalConstructor()->setMethods(['getTxnId'])->getMock();
$refundTranId = $captureTranId . '-' . Transaction::TYPE_REFUND;
$this->transactionManagerMock->expects(static::once())->method('generateTransactionId')->willReturn($refundTranId);
$captureTransaction->expects(static::once())->method('getTxnId')->willReturn($captureTranId);
$this->transactionRepositoryMock->expects(static::once())->method('getByTransactionId')->willReturn($captureTransaction);
$this->paymentMethodMock->expects(static::once())->method('refund')->with($this->payment, $amount);
$isOnline = true;
$this->getTransactionBuilderMock([], $isOnline, Transaction::TYPE_REFUND, $refundTranId);
$this->currencyMock->expects(static::once())->method('formatTxt')->willReturn($amount);
$this->orderMock->expects(static::once())->method('getBaseCurrency')->willReturn($this->currencyMock);
$status = 'status';
$message = 'We refunded ' . $amount . ' online. Transaction ID: "' . $refundTranId . '"';
$this->mockGetDefaultStatus(Order::STATE_PROCESSING, $status);
$this->assertOrderUpdated(Order::STATE_PROCESSING, $status, $message);
static::assertSame($this->payment, $this->payment->refund($this->creditMemoMock));
static::assertEquals($amount, $this->payment->getData('amount_refunded'));
static::assertEquals($amount, $this->payment->getData('base_amount_refunded_online'));
static::assertEquals($amount, $this->payment->getData('base_amount_refunded'));
}
示例2: refund
/**
* {@inheritdoc}
*/
public function refund($creditmemo)
{
$pluginInfo = $this->pluginList->getNext($this->subjectType, 'refund');
if (!$pluginInfo) {
return parent::refund($creditmemo);
} else {
return $this->___callPlugins('refund', func_get_args(), $pluginInfo);
}
}