PdfManagement

PdfManagement ist eine Anwendung, die zur Unterstützung der Buchhaltung entwickelt wurde. Das Hauptziel des Projekts ist es, GetMyInvoices als primäres Tool abzulösen und die Bearbeitung von Dokumenten deutlich zu beschleunigen. PdfManagement ermöglicht den Import von PDF-Dateien mithilfe der GetMyInvoices API und speichert diese in Azure Blob Storage. Zusätzlich werden die Meta-Informationen der Dateien als JSON in einer MongoDB gespeichert. Durch die Integration einer GraphQL-Schnittstelle können die Dokumente anhand von Tags, Unternehmen und Dokumententypen abgefragt werden. Das Frontend wird derzeit mit Retool getestet. In einem ersten Schritt wurde ein erheblicher Performance-Gewinn erzielt. Die Web API wurde in .Net Core 7 mit Hotchocolate als GraphQL-Server implementiert. Azure Cognitive Search wird als Textsuchfunktion verwendet.

 

Komponentenbasierte Datei-Archivierung

Es wurden zur Archivierung von Transferdateien mehrere Komponenten erstellt. Ziel ist unabhängig von den bestehenden Prozessen zu arbeiten. des Weiteren sollten zur Laufzeit Konfigurationen und Komponenten hinzugefügt werden können. Die Verarbeitung von neuen Dateien sollen, nachdem sie in eine Queue eingetragen werden, sofort durchgeführt werden.

Die Dateien selbst sollen inhaltlich geprüft werden können, damit dann weitere Information extrahieren und abspeichern kann.

Ziel ist es ebenso diese Dateien mit den extrahierten Informationen zu durchsuchen.

Dateimonitor,

welcher auf neue Dateien prüft und diese in eine Queue zur Verarbeitung überträgt. Dieser stellt sicher, das Dateien abschließend geschrieben wurden und fügt diese dann in eine Queue an.

Datenbank,

zur Speicherung von relevanten Informationen der Archivdateien. Welche auch weitere Informationen zu den Dateien beinhaltet.

WebApi,

welche zur Verwaltung der Archivdateien verwendet wird. Hier können weitere Informationen und Verknüpfungen hinzugefügt werden oder bei Bedarf aktualisiert oder gelöscht werden.

Windows-Service,

welcher die Dateien aus der Queue zur Verarbeitung entnimmt und mithilfe der WebApi speichert. Der Service kann je Konfiguration dynamisch weitere Komponenten zur Verarbeitung laden und ausführen und somit dann alle erdenklichen informationen extrahiert und gespeichert werden.