paulwer 2023-12-24 10:02:45 +01:00
parent 0bb1a80e51
commit 6470f501af
4 changed files with 9 additions and 9 deletions

View File

@ -99,7 +99,7 @@ class YodleeController extends BaseController
$company->account->bank_integrations->where("integration_type", BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->each(function ($bank_integration) use ($company) { // TODO: filter to yodlee only $company->account->bank_integrations->where("integration_type", BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->each(function ($bank_integration) use ($company) { // TODO: filter to yodlee only
ProcessBankTransactionsYodlee::dispatch($company->account, $bank_integration); ProcessBankTransactionsYodlee::dispatch($company->account->id, $bank_integration);
}); });
} }

View File

@ -209,7 +209,7 @@ class BankIntegrationController extends BaseController
// Processing transactions for each bank account // Processing transactions for each bank account
if (Ninja::isHosted() && $user->account->bank_integration_account_id) if (Ninja::isHosted() && $user->account->bank_integration_account_id)
$user_account->bank_integrations->where("integration_type", BankIntegration::INTEGRATION_TYPE_YODLEE)->each(function ($bank_integration) use ($user_account) { $user_account->bank_integrations->where("integration_type", BankIntegration::INTEGRATION_TYPE_YODLEE)->each(function ($bank_integration) use ($user_account) {
ProcessBankTransactionsYodlee::dispatch($user_account, $bank_integration); ProcessBankTransactionsYodlee::dispatch($user_account->id, $bank_integration);
}); });
if (config('ninja.nordigen.secret_id') && config('ninja.nordigen.secret_key') && (Ninja::isSelfHost() || (Ninja::isHosted() && $user_account->isPaid() && $user_account->plan == 'enterprise'))) if (config('ninja.nordigen.secret_id') && config('ninja.nordigen.secret_key') && (Ninja::isSelfHost() || (Ninja::isHosted() && $user_account->isPaid() && $user_account->plan == 'enterprise')))
@ -333,7 +333,7 @@ class BankIntegrationController extends BaseController
if (Ninja::isHosted() && $account->isPaid() && $account->plan == 'enterprise') { if (Ninja::isHosted() && $account->isPaid() && $account->plan == 'enterprise') {
$account->bank_integrations()->where('integration_type', BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->cursor()->each(function ($bank_integration) use ($account) { $account->bank_integrations()->where('integration_type', BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->cursor()->each(function ($bank_integration) use ($account) {
(new ProcessBankTransactionsYodlee($account, $bank_integration))->handle(); (new ProcessBankTransactionsYodlee($account->id, $bank_integration))->handle();
}); });
} }

View File

@ -31,7 +31,7 @@ class ProcessBankTransactionsYodlee implements ShouldQueue
{ {
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
private Account $account; private string $bank_integration_account_id;
private BankIntegration $bank_integration; private BankIntegration $bank_integration;
@ -46,9 +46,9 @@ class ProcessBankTransactionsYodlee implements ShouldQueue
/** /**
* Create a new job instance. * Create a new job instance.
*/ */
public function __construct(Account $account, BankIntegration $bank_integration) public function __construct(string $bank_integration_account_id, BankIntegration $bank_integration)
{ {
$this->account = $account; $this->bank_integration_account_id = $bank_integration_account_id;
$this->bank_integration = $bank_integration; $this->bank_integration = $bank_integration;
$this->from_date = $bank_integration->from_date; $this->from_date = $bank_integration->from_date;
$this->company = $this->bank_integration->company; $this->company = $this->bank_integration->company;
@ -95,7 +95,7 @@ class ProcessBankTransactionsYodlee implements ShouldQueue
private function processTransactions() private function processTransactions()
{ {
$yodlee = new Yodlee($this->account->bank_integration_account_id); $yodlee = new Yodlee($this->bank_integration_account_id);
if (!$yodlee->getAccount($this->bank_integration->bank_account_id)) { if (!$yodlee->getAccount($this->bank_integration->bank_account_id)) {
$this->bank_integration->disabled_upstream = true; $this->bank_integration->disabled_upstream = true;
@ -191,7 +191,7 @@ class ProcessBankTransactionsYodlee implements ShouldQueue
public function middleware() public function middleware()
{ {
return [new WithoutOverlapping($this->account->bank_integration_account_id)]; return [new WithoutOverlapping($this->bank_integration_account_id)];
} }
public function backoff() public function backoff()

View File

@ -56,7 +56,7 @@ class BankTransactionSync implements ShouldQueue
if ($account->isPaid() && $account->plan == 'enterprise') { if ($account->isPaid() && $account->plan == 'enterprise') {
$account->bank_integrations()->where('integration_type', BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->cursor()->each(function ($bank_integration) use ($account) { $account->bank_integrations()->where('integration_type', BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->cursor()->each(function ($bank_integration) use ($account) {
(new ProcessBankTransactionsYodlee($account, $bank_integration))->handle(); (new ProcessBankTransactionsYodlee($account->id, $bank_integration))->handle();
}); });
} }