From 183b7c10b0b5f366ec63f8ba33e687e0397bdc7d Mon Sep 17 00:00:00 2001 From: Thomas Peterson Date: Mon, 8 Jun 2026 17:22:23 +0200 Subject: [PATCH] UI: Portal-Dashboard nur Reseller-KPI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plattform-Admin sah auf dem Dashboard auch Firmen/Mitarbeiter — jetzt nur noch Reseller (konsistent zur Portal-Navi). Firmen-KPI nur Reseller, Mitarbeiter-KPI nur Reseller/Firma. Co-Authored-By: Claude Opus 4.8 --- frontend/src/views/DashboardView.vue | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/src/views/DashboardView.vue b/frontend/src/views/DashboardView.vue index fae13de..931bbba 100644 --- a/frontend/src/views/DashboardView.vue +++ b/frontend/src/views/DashboardView.vue @@ -27,13 +27,16 @@ async function count(resource: string): Promise { onMounted(async () => { const result: Stat[] = [] + // Plattform-Ebene: nur Reseller (Firmen/Mitarbeiter via „Einloggen als") if (auth.isPlatformAdmin) { result.push({ label: 'Reseller', value: await count('resellers'), to: '/app/resellers', icon: ICON.reseller, tone: 'orange' }) } - if (auth.isResellerAdmin || auth.isPlatformAdmin) { + if (auth.isResellerAdmin) { result.push({ label: 'Firmen', value: await count('companies'), to: '/app/companies', icon: ICON.company, tone: 'blue' }) } - result.push({ label: 'Mitarbeiter', value: await count('employees'), to: '/app/employees', icon: ICON.people, tone: 'orange' }) + if (auth.isResellerAdmin || auth.isCompanyAdmin) { + result.push({ label: 'Mitarbeiter', value: await count('employees'), to: '/app/employees', icon: ICON.people, tone: 'orange' }) + } if (auth.isCompanyAdmin || auth.isResellerAdmin) { result.push({ label: 'Standorte', value: await count('locations'), to: '/app/locations', icon: ICON.pin, tone: 'green' }) result.push({ label: 'Domains', value: await count('domains'), to: '/app/domains', icon: ICON.globe, tone: 'gray' })