LOT 35 — synchronisation automatique, « Créer 1 utilisateur », changement de routeur ===================================================================================== INSTALLATION Décompressez ce zip à la racine du site (wifi.douaweproshop.ci) en conservant les dossiers, en remplaçant les 9 fichiers ci-dessous. Aucune migration, aucune route à ajouter. Ensuite : php artisan view:clear (ou videz le cache des vues depuis cPanel) FICHIERS app/Http/Controllers/RouterController.php resources/views/tickets/index.blade.php resources/views/routers/tabs/users.blade.php resources/views/routers/tabs/dashboard.blade.php resources/views/routers/partials/router-card.blade.php (NOUVEAU) resources/views/routers/show.blade.php app/Services/Reconciliation/RouterSaleIngestor.php app/Console/Commands/AuditSaleSpaces.php (NOUVEAU) resources/views/components/router-layout.blade.php CE QUI CHANGE 1. Ajout d'un routeur : les profils sont synchronisés automatiquement, en arrière-plan, dès l'enregistrement (même mécanisme que le bouton « Synchroniser les profils »). Le résultat s'affiche sur la fiche du routeur. Si le routeur est injoignable, l'erreur s'affiche aussi et le bouton « Synchroniser les profils » reste disponible. Même chose à la MODIFICATION d'un routeur, si l'adresse, le port, SSL, le compte ou le mot de passe change (une simple modification du nom ou des notes ne relance rien). 2. Page Tickets : le bouton « Modèles » est remplacé par « Créer 1 utilisateur ». Il ouvre l'onglet « Codes WiFi » du routeur choisi, avec le formulaire déjà ouvert. (Les modèles restent accessibles par leur menu habituel.) Le bouton de l'onglet « Codes WiFi » porte le même libellé : « Créer 1 utilisateur ». 4. Tableau de bord (taille de la miniature fixée en style direct, indépendante du CSS compilé) : la carte « Le routeur » n’a plus de titre ; miniature du modèle à gauche, modèle, Identity, RouterOS et Model à droite. Les lignes Modèle / Carte / RouterOS sont retirées de la carte. 3. Fiche d'un routeur : liste déroulante « Changer de routeur » sous le titre. Elle garde la section en cours (Codes WiFi, Profils, Système…). Les routeurs en pause sont marqués « (en pause) ». Elle n'apparaît que s'il y a au moins 2 routeurs. À VÉRIFIER APRÈS INSTALLATION - Ajouter un routeur de test : message « Synchronisation des profils lancée automatiquement », puis le résumé de la synchronisation sur la fiche. - Tickets > Créer 1 utilisateur : le formulaire s'affiche ouvert sur Codes WiFi. - Fiche d'un routeur > liste « Changer de routeur » : on reste sur la même section. FICHE D'UN ROUTEUR (ajustements téléphone) - Le titre (nom du routeur) et l'adresse sous le titre sont supprimés ; « Tous les routeurs » devient « ← Retour ». - Synchroniser : icône seule. « Tester » devient « Ping ». « Modifier » sort du menu « + » : icône ⚙️ seule. - La carte du routeur est maintenant AU-DESSUS de la partie « Section » (onglet Tableau de bord). Elle affiche : miniature, modèle (police réduite), Identity, Adresse IP, RouterOS, Model, puis Horloge, En marche depuis, Processeur, Mémoire libre. - Le fichier show.blade.php et la nouvelle carte (partials/router-card.blade.php) sont à copier aussi. VENTE D'UN AUTRE ESPACE SUR LE TABLEAU DE BORD - Correctif : le type « Autres » et le revendeur « Autres » sont désormais mémorisés PAR ESPACE pendant la lecture planifiée des ventes (avant, le premier espace traité servait aux suivants). - Vérification (rien n'est modifié) : php artisan sales:audit-spaces Elle liste : les ventes de routeur rangées dans un autre espace que leur routeur ; celles reliées à un type ou un revendeur d'un autre espace. - Correction : php artisan sales:audit-spaces --apply Remet les ventes de routeur dans l'espace de leur routeur. Les liaisons croisées restent à contrôler à la main.