Zum Hauptinhalt springen

Dokumenten-Center

Zweck

Das Dokumenten-Center (/document-center, mit Sub-Pfad /document-center/folder/:folderId) ist die zentrale Ablage für alle Dokumente — manuell hochgeladene Dateien, automatisch erzeugte Belege und entitaets-spezifische Auto-Folder. Es kombiniert eine hierarchische Ordner-Struktur (Drag-Drop), Multi-Select, Vorschau, AI-gestuetztes Datei-Parsing und ein Aktivitaets-Log pro Operation.

Voraussetzungen

- Berechtigung `view:Document` und `view:DocumentFolder`. - Für Upload zusaetzlich `create:Document`. - AI-Upload erfordert mindestens einen aktiven AI-Provider.

Berechtigungen (CASL)

ActionSubjectWirkungKeycloak-Rolle
viewFE_DocumentCenter, DocumentFolder, DocumentCenter aufrufbar, Ordner und Dokumente lesen
create/update/deleteDocumentFolder, DocumentPflegenAPP_SPEAMCORE_CREATE/UPDATE/DELETE_DOCUMENT_FOLDER, DOCUMENT

Schritt-für-Schritt-Anleitung

Ordner navigieren

  1. Dokumenten-Center (/document-center) öffnen.
  2. Linke Sidebar zeigt den Folder-Tree (Drag-Drop für Reorganisation enabled).
  3. Klick auf Ordner — der Browser-Bereich rechts zeigt die enthaltenen Dokumente.
  4. Klick auf ein Dokument — das Preview-Panel rechts zeigt Vorschau und Metadaten.

Datei hochladen

  • Drag-Drop einer Datei in den Browser-Bereich.
  • Oder über AI-Upload-Dialog — System parst PDF/Image-Inhalte und schlaegt Metadaten vor.

Mehrere Dokumente verschieben

  1. Multi-Select via Checkbox in der Liste.
  2. Drag auf den Ziel-Ordner in der Sidebar — Bulk-Add wird ausgeloest.
  3. Aktivitäten werden im Aktivitaets-Log protokolliert (documentActivityService.logActivity).

Rechtsklick auf ein Dokument öffnet das Context-Menu mit Aktionen: Umbenennen (DocRenameModal), Link teilen (DocShareLinkModal), Löschen.

Listenansicht — document-center

UI-Elemente

Komponente: DocFolderSidebar

Hierarchische Ordnerliste mit Drag-Drop. Pflegen / Verschieben von Ordnern.

Komponente: DocBrowserPanel

Document-Grid (Multi-Select). Drag-Drop für Bulk-Move; Click → Preview.

Komponente: DocPreviewPanel

Vorschau (PDF, Bild) plus Metadaten und Aktionen.

Komponente: AiUploadDialog

Datei-Upload mit AI-Parsing — extrahiert Inhalte und schlaegt Metadaten vor.

Modale: Rename / Share / ContextMenu

DocRenameModal, DocShareLinkModal, DocContextMenu.

Felder und Eingaben

DocumentFolder-Felder:

FeldnamePflichtDatentypBeschreibungWirkung beim AusfuellenVoraussetzung
namejaStringOrdner-Name.Erscheint in der Sidebar und in Reports.
typejaEnumroot, entity, custom.Steuert Verhalten und Auto-Sync mit Entitaet.
parentIdneinUUIDEltern-Ordner.Erstellt Hierarchie.
sourceType + sourceIdneinpolymorphVerknuepfung zu Entitaet (z. B. Workorder, Customer).Auto-Folder wird beim Anlegen der Entitaet erzeugt; Synct sich mit Entitaets-Namen.
icon / colorneinStringUI-Anpassung.Wird in der Sidebar dargestellt.
sortOrderneinIntegerSortierung in der Sidebar.
isSystemneinBooleanSystem-Ordner (nicht loeschbar).UI versteckt Löschen.
departmentIdneinUUIDAbteilungs-Zuweisung.Beeinflusst Sichtbarkeit in der Organization-Tree-Sicht.

Wiederverwendbare Konzepte

Verknuepfungen zu anderen Modulen

  • Aufträge, Kunden, Standorte, Lieferanten, Mitarbeiter, Produkte, Fahrzeuge — alle erzeugen Auto-Folder mit sourceType/sourceId.
  • Belege — generierte PDFs werden automatisch ins Beleg-Folder einsortiert.
  • AI-Provider — für den AI-Upload-Dialog.

Häufige Fehler und Lösungen

FehlerLösung
Aktivitaets-Log fehlt einzelne OperationdocumentActivityService.logActivity ist fire-and-forget — bei Netzwerk-Hicksen kann ein Eintrag fehlen. Operation wird trotzdem ausgeführt.
AI-Upload-Button fehltKein aktiver AI-Provider — siehe Mandanten-Konfiguration.
Ordner nicht loeschbarisSystem = true — System-Ordner sind geschuetzt.
Datei lokal, aber nicht im Browser sichtbarCache-Refresh über „neu laden" oder Folder neu betreten.

API/Schnittstellen

MethodeEndpointZweckCASL
GET/api/document-folders/treeHierarchischer Folder-Baumview DocumentFolder
GET/api/document-folders/:id/documentsDokumente in einem Ordnerview DocumentFolder
POST/api/document-folders/:id/documentsDokument zu Ordner hinzufuegencreate DocumentFolder
POST/api/document-folders/:id/documents/bulkBulk-Add mehrerer Dokumentecreate DocumentFolder
DELETE/api/document-folders/:id/documents/:documentIdDokument aus Ordner entfernendelete DocumentFolder

Versionshinweise

  • 2026-04-29: Initiale Veroeffentlichung mit FE-Tiefen-Standard.