Ajoute géolocalisation des sites, duplication d'actifs et intégration GLPI

- Coordonnées GPS sur les sites (formulaire + carte Leaflet en direct sur
  la fiche et sur la liste des sites d'une organisation).
- Duplication d'un actif depuis la liste.
- Intégration GLPI en lecture seule : panneau "Tickets" sur le tableau de
  bord de l'organisation (tickets non clos, priorité, catégorie, extrait),
  organisations liées à leur entité GLPI via glpi_entity_id.
- Corrige la mise en cache des permissions Spatie lors du seed (silencée
  par WithoutModelEvents) et rend le seeder admin idempotent.
- Ajoute busy_timeout/WAL à la config SQLite pour éviter les erreurs de
  verrou sous écritures concurrentes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
mrKamoo
2026-08-18 08:45:49 +02:00
co-authored by Claude Sonnet 5
parent 2d12d3c2b2
commit 01233928cc
15 changed files with 617 additions and 17 deletions
+9 -4
View File
@@ -5,6 +5,7 @@ namespace Database\Seeders;
use App\Models\User;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;
class DatabaseSeeder extends Seeder
{
@@ -19,10 +20,14 @@ class DatabaseSeeder extends Seeder
$this->call(RolesAndPermissionsSeeder::class);
$admin = User::factory()->create([
'name' => 'Administrateur',
'email' => 'administrateur@cabmit.local',
]);
$admin = User::firstOrCreate(
['email' => 'administrateur@cabmit.local'],
[
'name' => 'Administrateur',
'email_verified_at' => now(),
'password' => Hash::make('password'),
],
);
$admin->assignRole('Administrateur');
$this->call(AssetTypeLookupSeeder::class);
@@ -5,6 +5,7 @@ namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role;
use Spatie\Permission\PermissionRegistrar;
class RolesAndPermissionsSeeder extends Seeder
{
@@ -22,6 +23,12 @@ class RolesAndPermissionsSeeder extends Seeder
Permission::findOrCreate($permission);
}
// DatabaseSeeder uses WithoutModelEvents, which silences the
// saved/deleted events Spatie relies on to invalidate its
// permission cache. Reset it manually so newly created
// permissions are visible below.
app(PermissionRegistrar::class)->forgetCachedPermissions();
$admin = Role::findOrCreate('Administrateur');
$admin->syncPermissions($permissions);