From b38ff39771252c07ce2fa72f55ff3d691e7757aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Beganovi=C4=87?= Date: Tue, 9 Jun 2020 13:07:18 +0200 Subject: [PATCH] Refactor createPayment to accept custom status --- app/PaymentDrivers/BasePaymentDriver.php | 4 ++-- app/PaymentDrivers/PayPalExpressPaymentDriver.php | 4 ++-- app/PaymentDrivers/Stripe/CreditCard.php | 3 ++- app/PaymentDrivers/StripePaymentDriver.php | 4 ++-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/app/PaymentDrivers/BasePaymentDriver.php b/app/PaymentDrivers/BasePaymentDriver.php index 8b25238c7f4d..6f8ced3a6eed 100644 --- a/app/PaymentDrivers/BasePaymentDriver.php +++ b/app/PaymentDrivers/BasePaymentDriver.php @@ -259,12 +259,12 @@ class BasePaymentDriver ->send(); } - public function createPayment($data): Payment + public function createPayment($data, $status = Payment::STATUS_COMPLETED): Payment { $payment = PaymentFactory::create($this->client->company->id, $this->client->user->id); $payment->client_id = $this->client->id; $payment->company_gateway_id = $this->company_gateway->id; - $payment->status_id = Payment::STATUS_COMPLETED; + $payment->status_id = $status; $payment->currency_id = $this->client->getSetting('currency_id'); $payment->date = Carbon::now(); diff --git a/app/PaymentDrivers/PayPalExpressPaymentDriver.php b/app/PaymentDrivers/PayPalExpressPaymentDriver.php index 7bc3273f171d..6cea7b0a6df5 100644 --- a/app/PaymentDrivers/PayPalExpressPaymentDriver.php +++ b/app/PaymentDrivers/PayPalExpressPaymentDriver.php @@ -258,9 +258,9 @@ class PayPalExpressPaymentDriver extends BasePaymentDriver return $items; } - public function createPayment($data): Payment + public function createPayment($data, $status = Payment::STATUS_COMPLETED): Payment { - $payment = parent::createPayment($data); + $payment = parent::createPayment($data, $status); $client_contact = $this->getContact(); $client_contact_id = $client_contact ? $client_contact->id : null; diff --git a/app/PaymentDrivers/Stripe/CreditCard.php b/app/PaymentDrivers/Stripe/CreditCard.php index 678500a7101a..09d63795a3c9 100644 --- a/app/PaymentDrivers/Stripe/CreditCard.php +++ b/app/PaymentDrivers/Stripe/CreditCard.php @@ -18,6 +18,7 @@ use App\Jobs\Util\SystemLogger; use App\Models\ClientGatewayToken; use App\Models\GatewayType; use App\Models\Invoice; +use App\Models\Payment; use App\Models\PaymentType; use App\Models\SystemLog; use App\PaymentDrivers\StripePaymentDriver; @@ -176,7 +177,7 @@ class CreditCard 'amount' => $state['server_response']->amount, ]; - $payment = $this->stripe->createPayment($data); + $payment = $this->stripe->createPayment($data, $status = Payment::STATUS_COMPLETED); $this->stripe->attachInvoices($payment, $state['hashed_ids']); diff --git a/app/PaymentDrivers/StripePaymentDriver.php b/app/PaymentDrivers/StripePaymentDriver.php index d46df13b53fd..50f483b8e4ae 100644 --- a/app/PaymentDrivers/StripePaymentDriver.php +++ b/app/PaymentDrivers/StripePaymentDriver.php @@ -208,9 +208,9 @@ class StripePaymentDriver extends BasePaymentDriver return $this->payment_method->paymentResponse($request); } - public function createPayment($data) :Payment + public function createPayment($data, $status = Payment::STATUS_COMPLETED) :Payment { - $payment = parent::createPayment($data); + $payment = parent::createPayment($data, $status); $client_contact = $this->getContact(); $client_contact_id = $client_contact ? $client_contact->id : null;