sync daily changes and market data after importing

This commit is contained in:
hackerESQ
2024-09-18 19:50:31 -05:00
parent 91d714b05e
commit 835c2115f2
2 changed files with 9 additions and 4 deletions
+4 -3
View File
@@ -2,9 +2,12 @@
namespace App\Imports;
use App\Console\Commands\RefreshMarketData;
use App\Imports\Sheets\PortfoliosSheet;
use Illuminate\Support\Facades\Artisan;
use App\Imports\Sheets\DailyChangesSheet;
use App\Imports\Sheets\TransactionsSheet;
use Maatwebsite\Excel\Events\AfterImport;
use Maatwebsite\Excel\Concerns\Importable;
use Maatwebsite\Excel\Concerns\WithEvents;
use Maatwebsite\Excel\Concerns\WithMultipleSheets;
@@ -20,9 +23,7 @@ class BackupImport implements WithMultipleSheets, WithEvents
public function registerEvents(): array
{
return [
// BeforeSheet::class => DB::commit(),
// AfterSheet::class => Artisan::queue(RefreshHoldingData::class),
// AfterSheet::class => Artisan::call(RefreshHoldingData::class)
AfterImport::class => fn() => Artisan::queue(RefreshMarketData::class)
];
}
+5 -1
View File
@@ -2,8 +2,10 @@
namespace App\Imports\Sheets;
use App\Console\Commands\SyncDailyChange;
use App\Models\Portfolio;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Artisan;
use Maatwebsite\Excel\Concerns\ToCollection;
use Maatwebsite\Excel\Concerns\SkipsEmptyRows;
use Maatwebsite\Excel\Concerns\WithHeadingRow;
@@ -17,7 +19,7 @@ class PortfoliosSheet implements ToCollection, WithValidation, WithHeadingRow, S
Portfolio::unguard();
Portfolio::updateOrCreate([
$portfolio = Portfolio::updateOrCreate([
'id' => $portfolio['portfolio_id']
], [
'id' => $portfolio['portfolio_id'] ?? null,
@@ -25,6 +27,8 @@ class PortfoliosSheet implements ToCollection, WithValidation, WithHeadingRow, S
'wishlist' => $portfolio['wishlist'] ?? false,
'notes' => $portfolio['notes'],
]);
Artisan::queue(SyncDailyChange::class, ['portfolio_id' => $portfolio->id])->delay(10);
}
}