Skip to content

Commit

Permalink
fix of external payments
Browse files Browse the repository at this point in the history
  • Loading branch information
TomasLudvik committed Jan 9, 2025
1 parent e4af60e commit a4ed6ec
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/Model/Order/ConvertimOrderDataToOrderDataMapper.php
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ public function mapConvertimOrderDataToOrderData(ConvertimOrderData $convertimOr
$orderData->heurekaAgreement = !$convertimOrderData->isDisallowHeurekaVerifiedByCustomers();
$orderData->origin = 'Convertim';
$orderData->convertimUuid = $convertimOrderData->getUuid();
$orderData->newsletterSubscription = $convertimOrderData->isRegisterToNewsletter();

$this->mapProducts($convertimOrderData, $orderData);
$this->mapConvertimTransportDataToOrderItem($convertimOrderData->getTransportData(), $orderData);
Expand Down
11 changes: 9 additions & 2 deletions src/Model/Order/OrderFacade.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@

use Convertim\Order\ConvertimOrderData;
use Convertim\Order\ConvertimOrderDataPaymentStatus;
use Doctrine\ORM\EntityManagerInterface;
use Shopsys\ConvertimBundle\Model\Payment\PaymentTypeEnum;
use Shopsys\FrameworkBundle\Component\Domain\Domain;
use Shopsys\FrameworkBundle\Component\Money\Money;
use Shopsys\FrameworkBundle\Model\Order\Order;
use Shopsys\FrameworkBundle\Model\Order\OrderFacade as FrameworkOrderFacade;
use Shopsys\FrameworkBundle\Model\Order\PlaceOrderFacade;
use Shopsys\FrameworkBundle\Model\Payment\Transaction\PaymentTransaction;
use Shopsys\FrameworkBundle\Model\Payment\Transaction\PaymentTransactionDataFactory;
Expand All @@ -25,6 +27,8 @@ class OrderFacade
* @param \Shopsys\FrameworkBundle\Model\Payment\Transaction\PaymentTransactionFacade $paymentTransactionFacade
* @param \Shopsys\FrameworkBundle\Model\Payment\Transaction\PaymentTransactionDataFactory $paymentTransactionDataFactory
* @param \Shopsys\ConvertimBundle\Model\Payment\PaymentTypeEnum $paymentTypeEnum
* @param \Doctrine\ORM\EntityManagerInterface $em
* @param \Shopsys\FrameworkBundle\Model\Order\OrderFacade $orderFacade
*/
public function __construct(
protected readonly ConvertimOrderDataToOrderDataMapper $convertimOrderDataToOrderMapper,
Expand All @@ -34,6 +38,8 @@ public function __construct(
protected readonly PaymentTransactionFacade $paymentTransactionFacade,
protected readonly PaymentTransactionDataFactory $paymentTransactionDataFactory,
protected readonly PaymentTypeEnum $paymentTypeEnum,
protected readonly EntityManagerInterface $em,
protected readonly FrameworkOrderFacade $orderFacade,
) {
}

Expand All @@ -52,7 +58,8 @@ public function saveOrder(ConvertimOrderData $convertimOrderData): Order
$order = $this->placeOrderFacade->placeOrder($orderData, $deliveryAddressUuid);
}

if (in_array($order->getPayment()->getType(), $this->paymentTypeEnum->getAllCases(), true)) {
if ($order->getPayment()->isGatewayPayment() || in_array($order->getPayment()->getType(), $this->paymentTypeEnum->getAllCases(), true)) {
$this->orderFacade->setOrderPaymentStatusPageValidFromNow($order);
$this->resolveExternalPaymentStatus($order, $convertimOrderData);
}

Expand All @@ -78,7 +85,7 @@ protected function resolveExternalPaymentStatus(Order $order, ConvertimOrderData

if (count($paymentTransactions) > 0) {
foreach ($paymentTransactions as $paymentTransaction) {
if ($paymentTransaction->getExternalPaymentIdentifier() === $externalPaymentId) {
if ((string)$paymentTransaction->getExternalPaymentIdentifier() === (string)$externalPaymentId) {
$currentPaymentTransaction = $paymentTransaction;

if ($paymentTransaction->getExternalPaymentStatus() === $convertimPaymentStatus->getStatus()) {
Expand Down

0 comments on commit a4ed6ec

Please sign in to comment.