mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/exchange-2.0.git
synced 2026-08-19 04:23:55 +00:00
fix mapping fail when more than one file is import
This commit is contained in:
+11
-10
@@ -26,7 +26,7 @@ class CreateBankStatementTransactionOwnersProcessor
|
||||
public function execute() {
|
||||
|
||||
$transactions = StatementTransaction::whereDoesntHave('owners', function($query){
|
||||
return $query->whereIn('status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
|
||||
return $query->whereIn('status', [ApprovalStatus::PENDING_VERIFICATION, ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
|
||||
})->orderBy('posting_date')->get();
|
||||
|
||||
// $transactions = StatementTransaction::whereDoesntHave('owners')->where('amount', '<', 0)->get();
|
||||
@@ -39,12 +39,13 @@ class CreateBankStatementTransactionOwnersProcessor
|
||||
// Exchange Sales
|
||||
$creditTransactions = $this->getTransactions($transaction->posting_date, $transaction->amount, TransactionType::PAYMENT, Booking::class, PaymentMethodType::WALLET, [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED], $keywords);
|
||||
foreach ($creditTransactions as $creditTransaction) {
|
||||
$isArray = is_array($creditTransaction);
|
||||
$transaction->owners()->firstOrCreate([
|
||||
'type' => StatementTransactionOwnerType::SALES,
|
||||
'system' => 'EXCHANGE',
|
||||
'owner_type' => Transaction::class,
|
||||
'owner_id'=> $creditTransaction->id,
|
||||
'owner_reference'=> $creditTransaction->owner->marking,
|
||||
'owner_id'=> $isArray ? $creditTransaction['owner_id'] : $creditTransaction->id,
|
||||
'owner_reference'=> $isArray ? $creditTransaction['owner_reference'] : $creditTransaction->owner->marking,
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -65,12 +66,13 @@ class CreateBankStatementTransactionOwnersProcessor
|
||||
// Exchange Wallet Top Up
|
||||
$creditTransactions = $this->getTransactions($transaction->posting_date, $transaction->amount, TransactionType::TOP_UP, Wallet::class, null, [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED], $keywords);
|
||||
foreach ($creditTransactions as $creditTransaction) {
|
||||
$isArray = is_array($creditTransaction);
|
||||
$transaction->owners()->firstOrCreate([
|
||||
'type' => StatementTransactionOwnerType::WALLET_TOP_UP,
|
||||
'system' => 'EXCHANGE',
|
||||
'owner_type' => Transaction::class,
|
||||
'owner_id'=> $creditTransaction->id,
|
||||
'owner_reference'=> $creditTransaction->owner->owner->reference,
|
||||
'owner_id'=> $isArray ? $creditTransaction['owner_id'] : $creditTransaction->id,
|
||||
'owner_reference'=> $isArray ? $creditTransaction['owner_reference'] : $creditTransaction->owner->owner->reference,
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -136,12 +138,13 @@ class CreateBankStatementTransactionOwnersProcessor
|
||||
// Exchange Wallet Withdrawal
|
||||
$debitTransactions = $this->getTransactions($transaction->posting_date, $transaction->amount, TransactionType::DEBIT_NOTE, Wallet::class, null, [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED], $keywords);
|
||||
foreach ($debitTransactions as $debitTransaction) {
|
||||
$isArray = is_array($creditTransaction);
|
||||
$transaction->owners()->firstOrCreate([
|
||||
'type' => StatementTransactionOwnerType::WALLET_WITHDRAWAL,
|
||||
'system' => 'EXCHANGE',
|
||||
'owner_type' => Transaction::class,
|
||||
'owner_id'=> $debitTransaction->id,
|
||||
'owner_reference'=> $debitTransaction->owner->owner->marking,
|
||||
'owner_id'=> $isArray ? $debitTransaction['owner_id'] : $debitTransaction->id,
|
||||
'owner_reference'=> $isArray ? $debitTransaction['owner_reference'] : $debitTransaction->owner->owner->marking,
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -271,10 +274,8 @@ class CreateBankStatementTransactionOwnersProcessor
|
||||
return $query->get();
|
||||
} else {
|
||||
$result = $this->getTransactionsFromExchange($amount, $dateRange, $type, $ownerType, $paymentMethod);
|
||||
$transactionsId = Arr::pluck($result, 'owner_id');
|
||||
$query = $model::whereIn('id', $transactionsId);
|
||||
|
||||
return $query->get();
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user