Amélioration pour nouveau connecté

This commit is contained in:
2026-07-03 20:44:32 +02:00
parent 53742568ce
commit ff77ee977d
6 changed files with 87 additions and 6 deletions
+12
View File
@@ -483,6 +483,18 @@ export default function Dashboard() {
<EmptyState />
</>
);
if (platLoaded && data.portfolio.nb_projets === 0) return (
<>
<div className="topbar"><h2>Tableau de bord</h2></div>
<EmptyState
icon="📊"
title="Aucun investissement pour le moment"
message="Vos plateformes sont configurées, mais aucun investissement n'y a encore été ajouté. Ajoutez un investissement pour voir apparaître les données de votre tableau de bord."
cta="Ajouter un investissement"
to="/investissements?new=1"
/>
</>
);
const { cash, cashByPlatform, portfolio, interets, interetsParAnnee } = data;
const viewTitle = activeView === 'all'
+12
View File
@@ -889,6 +889,18 @@ export default function DepotsRetraits() {
<EmptyState />
</>
);
if (!loading && !modalOpen && allRows.length === 0) return (
<>
<div className="topbar"><h2>Dépôts / Retraits</h2></div>
<EmptyState
icon="💶"
title="Aucun dépôt enregistré"
message="Vos plateformes sont configurées, mais aucun dépôt n'a encore été enregistré. Ajoutez un dépôt pour commencer à suivre votre solde."
cta="Ajouter un dépôt"
to="/depots-retraits?new=1"
/>
</>
);
return (
<>
<div className="topbar">
+12
View File
@@ -779,6 +779,18 @@ export default function Investissements() {
<EmptyState />
</>
);
if (!loading && !modalOpen && allRows.length === 0) return (
<>
<div className="topbar"><h2>Investissements</h2></div>
<EmptyState
icon="📊"
title="Aucun investissement pour le moment"
message="Vos plateformes sont configurées, mais aucun investissement n'y a encore été ajouté. Ajoutez votre premier investissement pour commencer le suivi."
cta="Ajouter un investissement"
to="/investissements?new=1"
/>
</>
);
return (
<>
<div className="topbar">
+18 -1
View File
@@ -597,7 +597,7 @@ export default function Plateformes() {
const netMode = displayMode === 'net';
const prevYearLabel = selectedYear ? Number(selectedYear) - 1 : new Date().getFullYear() - 1;
if (!loading && platOptions.length === 0) {
if (!loading && plats.length === 0) {
return (
<>
<div className="topbar">
@@ -608,6 +608,23 @@ export default function Plateformes() {
);
}
if (!loading && platOptions.length === 0) {
return (
<>
<div className="topbar">
<h2><PageIcon name="plateforme" />Plateformes</h2>
</div>
<EmptyState
icon="📊"
title="Aucun investissement pour le moment"
message="Vos plateformes sont configurées, mais aucun investissement n'y a encore été ajouté. Ajoutez un investissement pour voir apparaître les données de vos plateformes."
cta="Ajouter un investissement"
to="/investissements?new=1"
/>
</>
);
}
return (
<>
<div className="topbar">
+12
View File
@@ -768,6 +768,18 @@ export default function Remboursements() {
<EmptyState />
</>
);
if (platLoaded && !loading && !modalOpen && allRows.length === 0) return (
<>
<div className="topbar"><h2>Remboursements</h2></div>
<EmptyState
icon="📋"
title="Aucun remboursement pour le moment"
message="Vos plateformes sont configurées, mais aucun remboursement n'a encore été enregistré. Ajoutez un remboursement pour voir apparaître vos données."
cta="Ajouter un remboursement"
to="/remboursements?new=1"
/>
</>
);
return (
<>
<div className="topbar">
+16
View File
@@ -156,6 +156,12 @@ export default function TaxReport() {
const [activeTab, setActiveTab] = useState('2042');
const [detailExpanded, setDetailExpanded] = useState(false);
const [cerfaExpanded, setCerfaExpanded] = useState(false);
const [hasPlateformes, setHasPlateformes] = useState(true); // true par défaut pour éviter un flash du mauvais message
/* ── Plateformes configurées ? (pour distinguer "pas de plateforme" de "pas encore de données") ── */
useEffect(() => {
api.get('/plateformes').then(p => setHasPlateformes((p || []).length > 0)).catch(() => {});
}, []);
/* ── Chargement des années disponibles ── */
useEffect(() => {
@@ -253,11 +259,21 @@ export default function TaxReport() {
if (!loading && data && availableYears.length === 0) return (
<>
<div className="topbar"><h2>Fiscalité</h2></div>
{hasPlateformes ? (
<EmptyState
icon="📋"
title="Aucune donnée fiscale pour le moment"
message="Vos plateformes sont configurées, mais aucun remboursement n'a encore été enregistré. Ajoutez un remboursement pour voir apparaître votre récapitulatif fiscal."
cta="Ajouter un remboursement"
to="/remboursements?new=1"
/>
) : (
<EmptyState
icon="📋"
title="Aucune donnée fiscale disponible"
message="Vous n'avez pas encore de données fiscales à déclarer. Ajoutez des plateformes et des remboursements pour voir apparaître votre récapitulatif fiscal."
/>
)}
</>
);
return (