Intégration fonctionnalites V1
This commit is contained in:
@@ -4,7 +4,9 @@ namespace App\Http\Controllers\Supervisor;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Controllers\Supervisor\Concerns\ScopesSupervisorResources;
|
||||
use App\Models\Supervisor;
|
||||
use App\Services\DashboardService;
|
||||
use Illuminate\Http\Request;
|
||||
use Inertia\Inertia;
|
||||
use Inertia\Response;
|
||||
|
||||
@@ -12,14 +14,40 @@ class DashboardController extends Controller
|
||||
{
|
||||
use ScopesSupervisorResources;
|
||||
|
||||
public function index(DashboardService $dashboardService): Response
|
||||
public function index(Request $request, DashboardService $dashboardService): Response
|
||||
{
|
||||
$supervisor = $this->supervisor();
|
||||
$establishmentFilter = $this->resolveDashboardEstablishmentFilter($request, $supervisor);
|
||||
$establishments = $this->establishmentOptions();
|
||||
|
||||
return Inertia::render('Supervisor/Dashboard', [
|
||||
'kpis' => $dashboardService->getKpis($supervisor),
|
||||
'alerts' => $dashboardService->getAlerts($supervisor),
|
||||
'machinesOverview' => $dashboardService->getMachinesOverview($supervisor),
|
||||
'kpis' => $dashboardService->getKpis($supervisor, $establishmentFilter),
|
||||
'alerts' => $dashboardService->getAlerts($supervisor, $establishmentFilter),
|
||||
'machinesOverview' => $dashboardService->getMachinesOverview($supervisor, $establishmentFilter),
|
||||
'machineStatusBreakdown' => $dashboardService->getMachineStatusBreakdown($supervisor, $establishmentFilter),
|
||||
'recentWashes' => $dashboardService->getRecentWashes($supervisor, $establishmentFilter),
|
||||
'context' => $dashboardService->getContext($supervisor, $establishmentFilter),
|
||||
'establishments' => $establishments,
|
||||
'showEstablishmentFilter' => $supervisor->establishment_id === null && count($establishments) > 1,
|
||||
'filters' => [
|
||||
'establishment_id' => $establishmentFilter,
|
||||
],
|
||||
]);
|
||||
}
|
||||
|
||||
private function resolveDashboardEstablishmentFilter(Request $request, Supervisor $supervisor): ?int
|
||||
{
|
||||
if ($supervisor->establishment_id !== null) {
|
||||
return $supervisor->establishment_id;
|
||||
}
|
||||
|
||||
if (! $request->filled('establishment_id')) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$establishmentId = (int) $request->input('establishment_id');
|
||||
$this->assertEstablishmentAccessible($establishmentId);
|
||||
|
||||
return $establishmentId;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user