diff --git a/app/Classes/General/Eloquent/Filters/IssuerNot.php b/app/Classes/General/Eloquent/Filters/IssuerNot.php
new file mode 100644
index 00000000..77423b5d
--- /dev/null
+++ b/app/Classes/General/Eloquent/Filters/IssuerNot.php
@@ -0,0 +1,20 @@
+where('issuer', '!=', $value);
+ }
+
+}
\ No newline at end of file
diff --git a/app/Classes/ValueObjects/Constants/RoleTypes.php b/app/Classes/ValueObjects/Constants/RoleTypes.php
index 3027bcb1..ec5fe961 100644
--- a/app/Classes/ValueObjects/Constants/RoleTypes.php
+++ b/app/Classes/ValueObjects/Constants/RoleTypes.php
@@ -16,4 +16,12 @@ final class RoleTypes
public const USER = 3;
+ public const CURRENCY_SUPPLIER = 4;
+
+ public const MONEY_MULE = 5;
+
+ public const ORIGIN_ACCOUNT_ADMIN = 6;
+
+ public const DESTINATION_ACCOUNT_ADMIN = 7;
+
}
\ No newline at end of file
diff --git a/app/Http/Resources/TransactionResource.php b/app/Http/Resources/TransactionResource.php
index fc0dff73..1793d191 100644
--- a/app/Http/Resources/TransactionResource.php
+++ b/app/Http/Resources/TransactionResource.php
@@ -21,6 +21,7 @@ class TransactionResource extends JsonResource
'booking' => new BookingResource($this->booking),
'type' => (int) $this->type,
'bill_no' => $this->bill_no,
+ 'recipient_bank_account' => new BankResource($this->when((int) $this->type === TransactionType::BILL,$this->booking->bank)),
'amount' => (double) $this->amount,
'original_amount' => (double) $this->original_amount,
'currency' => new CurrencyResource($this->currency),
diff --git a/app/Models/Transaction.php b/app/Models/Transaction.php
index 9d1ed5b9..2624117b 100644
--- a/app/Models/Transaction.php
+++ b/app/Models/Transaction.php
@@ -9,6 +9,8 @@ use Carbon\Carbon;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
+use Illuminate\Database\Eloquent\Relations\HasOne;
+use Illuminate\Database\Eloquent\Relations\HasOneThrough;
use Illuminate\Database\Eloquent\Relations\MorphMany;
@@ -24,6 +26,14 @@ class Transaction extends AbstractModel implements Documentable
return $this->BelongsTo( Booking::class, 'booking_id', 'id');
}
+ /**
+ * @return BelongsTo
+ */
+ public function recipientBankAccount(): BelongsTo
+ {
+ return $this->BelongsTo(Bank::class);
+ }
+
/**
* @return MorphMany
*/
diff --git a/resources/assets/vue/components/banks/elements/BankInComponent.vue b/resources/assets/vue/components/banks/elements/BankInComponent.vue
new file mode 100644
index 00000000..ff42850a
--- /dev/null
+++ b/resources/assets/vue/components/banks/elements/BankInComponent.vue
@@ -0,0 +1,36 @@
+
+