Checkpoint: Suppression complète de la dépendance à data_budget.json : l'inventaire est désormais exclusivement alimenté par l'import utilisateur (localStorage budgetsi_inventaire_data). useBudgetData lit depuis localStorage, Budget2027 et DsiCapex calculent le renouvellement depuis l'inventaire importé, les pages affichent un état vide avec invitation à importer si aucun inventaire n'est présent. L'import stocke les postes complets (fixes/portables avec âge calculé) par établissement, utilise la colonne Type de matériel en priorité, et émet un événement custom pour notifier toutes les pages en temps réel.
This commit is contained in:
@@ -35,6 +35,7 @@ export default function Home() {
|
||||
meta,
|
||||
etablissements,
|
||||
totalEtablissements,
|
||||
hasInventaire,
|
||||
search,
|
||||
setSearch,
|
||||
sortField,
|
||||
@@ -45,9 +46,8 @@ export default function Home() {
|
||||
} = useBudgetData();
|
||||
|
||||
const { annee } = useAnnee();
|
||||
// Les données de parc ne sont disponibles que pour 2026 et 2027
|
||||
const ANNEES_AVEC_DONNEES = [2026, 2027];
|
||||
const hasDonnees = ANNEES_AVEC_DONNEES.includes(annee);
|
||||
// Les données de parc proviennent uniquement d'un import inventaire
|
||||
const hasDonnees = hasInventaire;
|
||||
const [selectedEtab, setSelectedEtab] = useState<Etablissement | null>(null);
|
||||
const [sidebarCollapsed, setSidebarCollapsed] = useState(false);
|
||||
const [viewMode, setViewMode] = useState<ViewMode>('grid');
|
||||
@@ -245,11 +245,10 @@ export default function Home() {
|
||||
<Monitor className="w-8 h-8 text-muted-foreground/40" />
|
||||
</div>
|
||||
<p className="text-lg font-semibold text-foreground" style={{ fontFamily: 'Sora, sans-serif' }}>
|
||||
Aucune donnée pour {annee}
|
||||
Aucun inventaire importé
|
||||
</p>
|
||||
<p className="text-sm text-muted-foreground mt-2 max-w-sm">
|
||||
Les données d'inventaire parc PC pour l'exercice {annee} n'ont pas encore été importées.
|
||||
Les années disponibles sont 2026 et 2027.
|
||||
Importez l'export ISI-APP via le bouton <strong>Imports & Données</strong> dans le menu de gauche pour afficher les données de vétusté et les budgets de renouvellement.
|
||||
</p>
|
||||
</div>
|
||||
) : etablissements.length === 0 ? (
|
||||
|
||||
Reference in New Issue
Block a user