Files

34 lines
800 B
PHP
Raw Permalink Normal View History

2024-08-06 22:59:17 -05:00
<?php
2025-01-28 17:33:54 -06:00
declare(strict_types=1);
2024-08-06 22:59:17 -05:00
namespace App\Http\Controllers;
2024-08-21 20:47:06 -05:00
use App\Models\Holding;
use Illuminate\Http\Request;
2024-08-06 22:59:17 -05:00
class DashboardController extends Controller
{
/**
* Display the specified resource.
*/
public function show(Request $request)
{
2024-08-27 21:17:54 -05:00
$user = $request->user()->load(['portfolios', 'holdings', 'transactions']);
2024-08-06 22:59:17 -05:00
2024-08-21 20:47:06 -05:00
// get portfolio metrics
2025-04-09 19:25:15 -05:00
$metrics = cache()->tags(['metrics-'.$user->id])->remember(
2025-01-28 17:14:49 -06:00
'dashboard-metrics-'.$user->id,
10,
2024-08-21 20:47:06 -05:00
function () {
2025-04-09 19:25:15 -05:00
return Holding::query()
->myHoldings()
->withoutWishlists()
->getPortfolioMetrics();
2024-08-21 20:47:06 -05:00
}
);
2024-08-06 22:59:17 -05:00
2024-08-21 20:47:06 -05:00
return view('dashboard', compact('user', 'metrics'));
2024-08-06 22:59:17 -05:00
}
}