From ad7aa2d255df2c4233cd59c3c90102a523ef2e7d Mon Sep 17 00:00:00 2001 From: Lars Date: Fri, 10 Apr 2026 15:26:59 +0200 Subject: [PATCH] feat(csv-import): Add custom row aggregation options in AdminCsvTemplateEditorPage - Introduced a new section for row aggregation settings, allowing users to customize aggregation functions for imported CSV data. - Implemented functionality for users to save custom aggregation configurations and select key fields for aggregation. - Enhanced user interface with detailed instructions and options for managing row aggregation, improving overall usability in template management. --- .../src/pages/AdminCsvTemplateEditorPage.jsx | 185 ++++++++++++++++++ 1 file changed, 185 insertions(+) diff --git a/frontend/src/pages/AdminCsvTemplateEditorPage.jsx b/frontend/src/pages/AdminCsvTemplateEditorPage.jsx index 63ec53e..7f4b302 100644 --- a/frontend/src/pages/AdminCsvTemplateEditorPage.jsx +++ b/frontend/src/pages/AdminCsvTemplateEditorPage.jsx @@ -965,6 +965,191 @@ export default function AdminCsvTemplateEditorPage() { )} + {!aggregateSleepImport && ( +
+
3a. Zeilenaggregation
+ {!modMeta?.fields || Object.keys(modMeta.fields).length === 0 ? ( +

+ Modul-Metadaten laden … bitte Seite kurz offen lassen oder neu laden. +

+ ) : ( + <> +

+ Mehrere CSV-Zeilen mit denselben Werten in den gewählten Schlüsselfeldern werden zu einer + importierten Zeile zusammengefasst. Für alle übrigen zugewiesenen Zielfelder gilt{' '} + eine gemeinsame Funktion. Textfelder werden bei Summe/Mittelwert usw. automatisch + ausgelassen; mit „Erster/Letzter Wert“ sind sie enthalten. +

+ + {modMeta.import_row_processing_default && ( +
+ Modul-Standard (Referenz, wenn Haken oben aus ist) +
+                {JSON.stringify(modMeta.import_row_processing_default, null, 2)}
+              
+
+ )} + {rowAggUseCustom && ( + <> + {modMeta.import_row_processing_default && ( + + )} + {rowAggIrregular ? ( + <> +

+ Diese Vorlage nutzt unterschiedliche Aggregations-Funktionen pro Feld. JSON + anpassen oder vereinheitlichen (pro-Feld-Auswahl folgt in einer späteren Ausbaustufe). +

+