Skip to content

Commit

Permalink
payout event testing issue fixed
Browse files Browse the repository at this point in the history
  • Loading branch information
hafijul233 committed Jan 9, 2025
1 parent 2ccb411 commit 7f6c8c0
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 5 deletions.
14 changes: 11 additions & 3 deletions src/Listeners/RemitOrderPaymentAccepted.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace Fintech\Remit\Listeners;

use Fintech\Core\Enums\Transaction\OrderStatus;
use Fintech\Core\Enums\Transaction\OrderType;
use Fintech\Transaction\Facades\Transaction;
use Illuminate\Contracts\Queue\ShouldQueue;

Expand All @@ -12,15 +13,22 @@ class RemitOrderPaymentAccepted implements ShouldQueue

/**
* Handle the event.
*
* @param \Fintech\Reload\Events\DepositAccepted $event
*
* @param \Fintech\Reload\Events\DepositAccepted $event
* @throws \Throwable
*/
public function handle(object $event): void
{
$this->order = Transaction::order()->find($event->deposit->parent_id);

if ($this->order && in_array($this->order->order_type->value, [OrderType::CashPickup->value, OrderType::WalletTransfer->value, OrderType::BankTransfer->value])) {

$payoutVendor = $event->deposit->serviceVendor;

Transaction::order()->update($this->order->getKey(), [
'status' => OrderStatus::Processing,
'notes' => "{$this->order->notes}.\nReceived payout confirmation from {$payoutVendor->service_vendor_name} vendor.",
]);
}
}

/**
Expand Down
18 changes: 16 additions & 2 deletions src/Listeners/RemitOrderPaymentRejected.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,31 @@
namespace Fintech\Remit\Listeners;

use Fintech\Core\Enums\Transaction\OrderStatus;
use Fintech\Core\Enums\Transaction\OrderType;
use Fintech\Transaction\Facades\Transaction;
use Illuminate\Contracts\Queue\ShouldQueue;

class RemitOrderPaymentRejected implements ShouldQueue
{
/**
* Handle the event.
*
* @param \Fintech\Reload\Events\DepositRejected $event
* @throws \Throwable
*/
public function handle(object $event): void {}
public function handle(object $event): void
{
$this->order = Transaction::order()->find($event->deposit->parent_id);

if ($this->order && in_array($this->order->order_type->value, [OrderType::CashPickup->value, OrderType::WalletTransfer->value, OrderType::BankTransfer->value])) {

$payoutVendor = $event->deposit->serviceVendor;

Transaction::order()->update($this->order->getKey(), [
'status' => OrderStatus::Rejected,
'notes' => "{$this->order->notes}.\nPayout request rejected by {$payoutVendor->service_vendor_name} vendor.",
]);
}
}

/**
* Handle a job failure.
Expand Down

0 comments on commit 7f6c8c0

Please sign in to comment.