feat(sprint9): Phase 5 — Berichtszentrale, sidebar reorg, dashboard enhancement
- Sidebar: reorganized into 4 collapsible groups (Betrieb, Kommunikation, Verwaltung, Compliance) - Berichtszentrale: new /reports-center page with report cards grouped by category (Finance, KCanG, DSGVO, Admin), format selector, date range pickers, Behörden-Export dialog with password protection - Dashboard: added Outstanding Payments and Monthly Income KPI cards, Upcoming Events widget, Latest Announcements widget, conditional alert cards - Pricing: fixed mobile overflow at 375px viewport on comparison table - Frontend service: new compliance-reports.ts with React Query hooks for report generation, authority export, and download - i18n: added reportsCenter.* and dashboard widget keys to de.json and en.json
This commit is contained in:
@@ -66,7 +66,15 @@
|
||||
"today": "Today",
|
||||
"trend": "+{value}% vs last month",
|
||||
"quotaUsed": "{value}% used",
|
||||
"distributionCount": "{count} distributions, {grams}g"
|
||||
"distributionCount": "{count} distributions, {grams}g",
|
||||
"outstandingPayments": "Outstanding Payments",
|
||||
"monthlyIncome": "Monthly Income",
|
||||
"thisMonth": "This month",
|
||||
"strainsAvailable": "strains available",
|
||||
"upcomingEvents": "Upcoming Events",
|
||||
"latestAnnouncements": "Latest Announcements",
|
||||
"rsvps": "RSVPs",
|
||||
"viewAll": "View all"
|
||||
},
|
||||
"members": {
|
||||
"title": "Member Management",
|
||||
@@ -1004,5 +1012,100 @@
|
||||
"positions": "Positions",
|
||||
"active": "Active",
|
||||
"inactive": "Inactive"
|
||||
},
|
||||
"reportsCenter": {
|
||||
"title": "Reports Center",
|
||||
"subtitle": "Generate and manage all regulatory and internal reports in one place.",
|
||||
"generate": "Generate",
|
||||
"cancel": "Cancel",
|
||||
"authorityExport": {
|
||||
"title": "Authority Export",
|
||||
"description": "Bundled export of all authority-relevant documents for a calendar year.",
|
||||
"button": "Start Authority Export",
|
||||
"dialogTitle": "Create Authority Export",
|
||||
"dialogDescription": "Creates a password-protected archive with all compliance-relevant reports for the selected year.",
|
||||
"warning": "This export contains sensitive data and will be logged in the audit trail. Only proceed with a legitimate request.",
|
||||
"year": "Report Year",
|
||||
"password": "Archive Password",
|
||||
"passwordPlaceholder": "Enter secure password",
|
||||
"confirm": "Create Export"
|
||||
},
|
||||
"categories": {
|
||||
"finance": "Finance",
|
||||
"kcang": "KCanG Compliance",
|
||||
"dsgvo": "GDPR",
|
||||
"admin": "Administration"
|
||||
},
|
||||
"reports": {
|
||||
"EUER": {
|
||||
"name": "Income Statement",
|
||||
"description": "Simplified income statement for the selected period"
|
||||
},
|
||||
"KASSENBUCH_EXPORT": {
|
||||
"name": "Cash Book Export",
|
||||
"description": "Complete cash book as PDF or CSV"
|
||||
},
|
||||
"BEITRAGSBESCHEINIGUNG": {
|
||||
"name": "Membership Fee Certificate",
|
||||
"description": "Certificate of paid membership fees"
|
||||
},
|
||||
"JAHRESBERICHT_BEHOERDE": {
|
||||
"name": "Annual Authority Report",
|
||||
"description": "Legally required annual report to the responsible authority"
|
||||
},
|
||||
"AUSGABEPROTOKOLL": {
|
||||
"name": "Distribution Log",
|
||||
"description": "Log of all distributions in the period with amounts and recipients"
|
||||
},
|
||||
"VERNICHTUNGSPROTOKOLL": {
|
||||
"name": "Destruction Protocol",
|
||||
"description": "Documentation of proper cannabis destruction"
|
||||
},
|
||||
"TRANSPORTZERTIFIKAT": {
|
||||
"name": "Transport Certificate",
|
||||
"description": "Certificate for approved cannabis transport"
|
||||
},
|
||||
"BESTANDSFUEHRUNG": {
|
||||
"name": "Inventory Report",
|
||||
"description": "Current stock with all inflows and outflows"
|
||||
},
|
||||
"VERARBEITUNGSVERZEICHNIS": {
|
||||
"name": "Processing Register",
|
||||
"description": "Register of all processing activities per Art. 30 GDPR"
|
||||
},
|
||||
"TOM": {
|
||||
"name": "TOM",
|
||||
"description": "Technical and organizational measures per Art. 32 GDPR"
|
||||
},
|
||||
"DSFA": {
|
||||
"name": "DPIA",
|
||||
"description": "Data Protection Impact Assessment per Art. 35 GDPR"
|
||||
},
|
||||
"LOESCHKONZEPT": {
|
||||
"name": "Deletion Policy",
|
||||
"description": "Policy for timely data deletion"
|
||||
},
|
||||
"DATENPANNEN_MELDUNG": {
|
||||
"name": "Data Breach Report",
|
||||
"description": "Template for reporting a data protection violation"
|
||||
},
|
||||
"MITGLIEDERLISTE_REGISTER": {
|
||||
"name": "Member Registry List",
|
||||
"description": "Official member list for the association register"
|
||||
},
|
||||
"VORSTANDSAENDERUNG": {
|
||||
"name": "Board Change Notification",
|
||||
"description": "Notification of board change to the association register"
|
||||
}
|
||||
},
|
||||
"history": {
|
||||
"title": "Generated Reports",
|
||||
"empty": "No reports generated yet. Select a report above to get started.",
|
||||
"report": "Report",
|
||||
"format": "Format",
|
||||
"date": "Date",
|
||||
"user": "Created by",
|
||||
"size": "Size"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user