V7.9 — Tableau de bord et navigation regroupée pour le Service Enfance
Le Service Enfance ouvrait onze onglets à plat et atterrissait sur l'écran de saisie, alors que son travail commence par le contrôle. Les chiffres qui déclenchent une action vivaient sur trois écrans distincts. - Nouvelle page dashboard.php, réservée au Service Enfance et devenue sa page d'atterrissage : quatre tuiles d'action, les brouillons les plus anciens avec ouverture directe sur la bonne semaine, les plages de couverture les plus déficitaires, et le suivi des quotas annuels par agent. - Navigation regroupée par intention (Piloter / Planifier / Consulter / Paramétrer). Les rôles à quelques pages gardent la barre simple. - Sous-titre propre à chaque page : le bandeau générique n'apprenait rien. - Pastille « À valider » alimentée depuis toutes les pages, et non plus seulement depuis la page qu'elle annonce. Aucune règle métier n'est modifiée : le tableau de bord relit ce que PlanningModel, CoverageModel et QuotaModel calculent déjà, et son endpoint est gardé par requireService(). Le droit d'accès à la page vient de la migration V7.9 ; sans elle, l'onglet n'apparaît pas et homeUrl() se replie sur planning. Vérifié sur la base réelle : les chiffres de quota du tableau de bord sont identiques à ceux de api/annual_overview.php, les trois rôles rendent leurs écrans sans erreur, le rendu JS a été exécuté dans un DOM avec la réponse réelle de l'API, et la page ne produit aucun attribut style inline (CSP). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
26
database/migration_v7_9_tableau_de_bord.sql
Normal file
26
database/migration_v7_9_tableau_de_bord.sql
Normal file
@@ -0,0 +1,26 @@
|
||||
-- ============================================================================
|
||||
-- PTA V7.9 — Tableau de bord du Service Enfance
|
||||
-- ============================================================================
|
||||
-- À exécuter UNE SEULE FOIS sur une base PTA V7.8 existante :
|
||||
-- SOURCE database/migration_v7_9_tableau_de_bord.sql;
|
||||
--
|
||||
-- La page « dashboard » suit la règle posée en V7.8 : une page absente de
|
||||
-- acces_role_page est refusée. Tant que cette migration n'est pas jouée,
|
||||
-- l'onglet n'apparaît pas et le Service Enfance atterrit comme avant sur
|
||||
-- l'écran de saisie — l'application reste fonctionnelle, sans tableau de bord.
|
||||
--
|
||||
-- Aucune table, aucune vue, aucune donnée métier n'est modifiée : le tableau de
|
||||
-- bord ne fait que relire ce que les autres écrans calculent déjà.
|
||||
-- ============================================================================
|
||||
|
||||
INSERT INTO acces_role_page (role, page, ordre_affichage) VALUES
|
||||
('SERVICE_ENFANCE', 'dashboard', 5)
|
||||
ON DUPLICATE KEY UPDATE ordre_affichage = VALUES(ordre_affichage);
|
||||
|
||||
-- ============================================================================
|
||||
-- Vérification après import :
|
||||
-- SELECT * FROM v_acces_role_page WHERE role = 'SERVICE_ENFANCE' ORDER BY ordre_affichage;
|
||||
--
|
||||
-- Retour arrière :
|
||||
-- DELETE FROM acces_role_page WHERE role = 'SERVICE_ENFANCE' AND page = 'dashboard';
|
||||
-- ============================================================================
|
||||
Reference in New Issue
Block a user