Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions Observer/ResetQuoteReservedOrderId.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
<?php
/**
*
* Adyen Payment module (https://www.adyen.com/)
*
* Copyright (c) 2022 Adyen N.V. (https://www.adyen.com/)
* See LICENSE.txt for license details.
*
* Author: Adyen <[email protected]>
*/

namespace Adyen\Payment\Observer;

use Adyen\Payment\Helper\PaymentMethods;
use Adyen\Payment\Logger\AdyenLogger;
use Magento\Framework\Event\Observer;
use Magento\Framework\Event\ObserverInterface;
use Magento\Quote\Model\Quote;

/**
* Class ResetQuoteReservedOrderId
*
* @package Adyen\Payment\Observer
*/
class ResetQuoteReservedOrderId implements ObserverInterface
{
/**
* ResetReservedOrderId Constructor
*
* @param PaymentMethods $paymentMethodsHelper
* @param AdyenLogger $adyenLogger
*/
public function __construct(
protected PaymentMethods $paymentMethodsHelper,
protected AdyenLogger $adyenLogger
) {
}

/**
* @inheritDoc
*/
public function execute(Observer $observer): void
{
$quote = $observer->getData('quote');
if (!$quote instanceof Quote) {
return;
}

try {
$method = $quote->getPayment()->getMethod();
if ($this->paymentMethodsHelper->isAdyenPayment($method)) {
$quote->setReservedOrderId(null);
}
} catch (\Exception $e) {
$this->adyenLogger->error("Failed to reset reservedOrderId for guest shopper" . $e->getMessage(), [
'quote_id' => $quote->getId(),
]);
}
}
}
88 changes: 0 additions & 88 deletions Plugin/GuestPaymentInformationResetOrderId.php

This file was deleted.

78 changes: 0 additions & 78 deletions Plugin/PaymentInformationResetOrderId.php

This file was deleted.

6 changes: 0 additions & 6 deletions etc/di.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1713,12 +1713,6 @@
<type name="Magento\Vault\Api\PaymentTokenRepositoryInterface">
<plugin name="AdyenPaymentVaultDeleteToken" type="Adyen\Payment\Plugin\PaymentVaultDeleteToken" sortOrder="10" />
</type>
<type name="Magento\Checkout\Api\PaymentInformationManagementInterface">
<plugin name="AdyenPaymentInformationResetOrderId" type="Adyen\Payment\Plugin\PaymentInformationResetOrderId" sortOrder="10" />
</type>
<type name="Magento\Checkout\Api\GuestPaymentInformationManagementInterface">
<plugin name="GuestAdyenPaymentInformationResetOrderId" type="Adyen\Payment\Plugin\GuestPaymentInformationResetOrderId" sortOrder="10" />
</type>
<type name="Magento\QuoteGraphQl\Model\Resolver\PlaceOrder">
<plugin name="GraphQlPlaceOrderAddCartId" type="Adyen\Payment\Plugin\GraphQlPlaceOrderAddCartId" sortOrder="10" />
</type>
Expand Down
3 changes: 3 additions & 0 deletions etc/events.xml
Original file line number Diff line number Diff line change
Expand Up @@ -341,4 +341,7 @@
<event name="payment_method_assign_data_adyen_afterpaytouch_US">
<observer name="adyen_afterpaytouch_US_gateway_data_assign" instance="Adyen\Payment\Observer\AdyenPaymentMethodDataAssignObserver" />
</event>
<event name="checkout_submit_before">
<observer name="adyen_reset_quote_reserved_order_id" instance="Adyen\Payment\Observer\ResetQuoteReservedOrderId" />
</event>
</config>
4 changes: 2 additions & 2 deletions view/frontend/web/js/model/adyen-payment-service.js
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ define(
);
},

paymentDetails: function(data, orderId, isMultishipping = false) {
paymentDetails: function(data, orderId, isMultishipping = false, quoteId = null) {
let serviceUrl;
let payload = {
'payload': JSON.stringify(data),
Expand All @@ -108,7 +108,7 @@ define(
} else {
serviceUrl = urlBuilder.createUrl(
'/adyen/guest-carts/:cartId/payments-details', {
cartId: quote.getQuoteId(),
cartId: quoteId ?? quote.getQuoteId()
}
);
}
Expand Down
Loading