diff --git a/app/Http/Controllers/BankIntegrationController.php b/app/Http/Controllers/BankIntegrationController.php index 40fa14392f03..c38f31245fa6 100644 --- a/app/Http/Controllers/BankIntegrationController.php +++ b/app/Http/Controllers/BankIntegrationController.php @@ -20,6 +20,7 @@ use App\Http\Requests\BankIntegration\EditBankIntegrationRequest; use App\Http\Requests\BankIntegration\ShowBankIntegrationRequest; use App\Http\Requests\BankIntegration\StoreBankIntegrationRequest; use App\Http\Requests\BankIntegration\UpdateBankIntegrationRequest; +use App\Jobs\Bank\ProcessBankTransactions; use App\Models\BankIntegration; use App\Repositories\BankIntegrationRepository; use App\Services\Bank\BankService; @@ -670,23 +671,11 @@ class BankIntegrationController extends BaseController public function getTransactions(AdminBankIntegrationRequest $request) { - $bank_account_id = auth()->user()->account->bank_integration_account_id; + auth()->user()->account->bank_integrations->each(function ($bank_integration) { + + ProcessBankTransactions::dispatchSync(auth()->user()->account->bank_integration_account_id, $bank_integration); - // $bank_account_id = 'sbMem62e1e69547bfb1'; - - if(!$bank_account_id) - return response()->json(['message' => 'Not yet authenticated with Bank Integration service'], 400); - - $yodlee = new Yodlee($bank_account_id); - - $data = [ - 'top' => 500, - 'fromDate' => '2000-10-10', /// YYYY-MM-DD - ]; - - $transactions = $yodlee->getTransactions($data); - - BankService::dispatch(auth()->user()->company()->id, auth()->user()->company()->db); + }); return response()->json(['message' => 'Fetching transactions....'], 200); diff --git a/routes/api.php b/routes/api.php index 7cdfaa271ba6..27eb64da31ac 100644 --- a/routes/api.php +++ b/routes/api.php @@ -110,7 +110,7 @@ Route::group(['middleware' => ['throttle:300,1', 'api_db', 'token_auth', 'locale Route::resource('bank_integrations', BankIntegrationController::class); // name = (clients. index / create / show / update / destroy / edit Route::post('bank_integrations/refresh_accounts', [BankIntegrationController::class, 'refreshAccounts'])->name('bank_integrations.refresh_accounts'); Route::post('bank_integrations/remove_account/{acc_id}', [BankIntegrationController::class, 'removeAccount'])->name('bank_integrations.remove_account'); - Route::post('bank_integrations/get_transactions/{acc_id}', [BankIntegrationController::class, 'getTransactions'])->name('bank_integrations.transactions'); + Route::post('bank_integrations/get_transactions/{acc_id}', [BankIntegrationController::class, 'getTransactions'])->name('bank_integrations.transactions')->middleware('throttle:1,1'); Route::post('bank_integrations/bulk', [BankIntegrationController::class, 'bulk'])->name('bank_integrations.bulk');