Étape 10 : interface admin (tableau de bord + gestion utilisateurs)

- DashboardController : stats globales (sources par statut, relevés, utilisateurs, activité mensuelle 6 mois)
- UserController : liste filtrée (nom/email/rôle) + édition de rôle avec protections (auto-demotion, dernier admin)
- Vue admin/dashboard : compteurs par statut cliquables, graphique barres mensuel, sources à valider, relevés récents
- Vue admin/utilisateurs : liste paginée avec sections et sources assignées, page d'édition avec radio-cards
- Dashboard principal enrichi : bloc accès admin, mes sources assignées triées par urgence, mes derniers relevés
- Navigation : ajout Tableau de bord admin et Utilisateurs dans le menu Administration

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-04 17:21:50 +02:00
parent d064f8d28e
commit c790691200
8 changed files with 613 additions and 9 deletions
+5
View File
@@ -1,12 +1,17 @@
<?php
use App\Http\Controllers\Admin\DashboardController;
use App\Http\Controllers\Admin\DepotController;
use App\Http\Controllers\Admin\LieuTypeController;
use App\Http\Controllers\Admin\SectionController;
use App\Http\Controllers\Admin\SourceTypeController;
use App\Http\Controllers\Admin\UserController;
use Illuminate\Support\Facades\Route;
Route::middleware(['auth', 'role:admin'])->prefix('admin')->name('admin.')->group(function () {
Route::get('dashboard', [DashboardController::class, 'index'])->name('dashboard');
Route::resource('utilisateurs', UserController::class)->only(['index', 'edit', 'update']);
Route::resource('lieu-types', LieuTypeController::class)
->parameters(['lieu-types' => 'lieuType'])
->except(['show']);