Skip to content

Commit 5caae87

Browse files
committed
PaymentManager complete() updated
1 parent 412e812 commit 5caae87

2 files changed

Lines changed: 28 additions & 11 deletions

File tree

Entity/PayexPayment.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,4 +363,17 @@ public function setUpdatedAt(\DateTime $updatedAt): void
363363
{
364364
$this->updatedAt = $updatedAt;
365365
}
366+
367+
public function isPurchaseSuccessful(): bool
368+
{
369+
return in_array($this->getTransactionStatus(), self::successfulTransactionStatuses());
370+
}
371+
372+
public static function successfulTransactionStatuses(): array
373+
{
374+
return [
375+
0,
376+
3,
377+
];
378+
}
366379
}

Services/PaymentManager.php

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,11 @@ public function initializePayment(PayexPaymentDTO $payexPaymentDTO): PayexPaymen
110110
$response->orderRef,
111111
$response->sessionRef,
112112
$lastRequest,
113-
json_encode($response)
113+
json_encode($response),
114+
null,
115+
null,
116+
null,
117+
null
114118
);
115119

116120
return $payexPayment;
@@ -170,9 +174,9 @@ public function completePayment(string $orderRef): PayexPaymentBunch
170174
$lastRequest,
171175
json_encode($response),
172176
$response->transactionRef,
173-
$response->transactionStatus,
174-
$response->orderStatus,
175-
$response->transactionNumber
177+
(int) $response->transactionStatus,
178+
(int) $response->orderStatus,
179+
(int) $response->transactionNumber
176180
);
177181

178182
$payexPaymentBunch = new PayexPaymentBunch($payexPaymentOld, $payexPaymentNew);
@@ -250,10 +254,10 @@ public function storePayexPayment(
250254
$sessionRef,
251255
$request,
252256
$response,
253-
$transactionRef = null,
254-
$transactionStatus = null,
255-
$orderStatus = null,
256-
$transactionNumber = null
257+
$transactionRef,
258+
$transactionStatus,
259+
$orderStatus,
260+
$transactionNumber
257261
): PayexPayment
258262
{
259263
$payexPayment = new PayexPayment();
@@ -267,9 +271,9 @@ public function storePayexPayment(
267271
$payexPayment->setTransactionRef($transactionRef);
268272
$payexPayment->setRedirectUrl($payexPaymentDTO->getRedirectUrl());
269273
$payexPayment->setCancelUrl($payexPaymentDTO->getCancelUrl());
270-
$payexPayment->setTransactionStatus((int) $transactionStatus);
271-
$payexPayment->setOrderStatus((int) $orderStatus);
272-
$payexPayment->setTransactionNumber((int) $transactionNumber);
274+
$payexPayment->setTransactionStatus($transactionStatus);
275+
$payexPayment->setOrderStatus($orderStatus);
276+
$payexPayment->setTransactionNumber($transactionNumber);
273277
$payexPayment->setOrderId($payexPaymentDTO->getOrderId());
274278
$payexPayment->setRequestDetails($request);
275279
$payexPayment->setResponseDetails($response);

0 commit comments

Comments
 (0)