Diese Datei fixiert die aktuelle Library- und Technologieauswahl des PC-Visit Filetrackers.
>=3.13uvpyproject.tomluv syncuv run main.py ...>=0.27.1
main.py@app.command(...) registriert.>=6.0.0
Observer, FileSystemEventHandler und XML-Eventfilternxml.etree.ElementTree für XML-Verarbeitungcsv für CSV-Dateienpathlib.Path für Pfade und Dateisystemzugriffedataclasses.dataclass für typisierte Rückgabeobjektedatetime und decimal.Decimal für Zeit- und Dauerberechnungenshutil für DateioperationenWeitere externe Libraries werden nur ergänzt, wenn die Standardbibliothek oder die bestehenden Libraries die Aufgabe nicht angemessen lösen können.
main.py ist ausschließlich der Typer-Einstiegspunkt und orchestriert Commands.clients.pyfiles.pymove_files.pyarchive_logs.pysession_details.pysummary.pywatch.pyinfo.pyrun-Funktionen liefern Dataclasses statt unbenannter Tupel zurück.;)latin-1data:
data/clients.csvdata/files.csvdata/session_details.csvdata/summary.csv%USERPROFILE%\AppData\Roaming\pcvisit Data\Session Historysessions*.xml werden ignoriert.Session-Element werden übersprungen.Archiv\<Jahr>.session-details durchsucht zusätzlich den Archivordner.clients: erzeugt bzw. aktualisiert clients.csv.files: ermittelt vorhandene ReceivedFile-Dateien.move-files: aktualisiert zuerst files.csv und verschiebt Dateien nach Desktop\PC-Visit\<Kunde>.archive-logs: archiviert abgeschlossene bzw. alte XML-Logs.session-details: sammelt UserActivity-Einträge.summary: aggregiert session_details.csv und zeigt eine aktuelle Zeitübersicht.info: führt clients, archive-logs, session-details und summary aus.watch: überwacht XML-Dateien und startet bei Änderungen den Move-Ablauf.Neue Commands werden in main.py registriert und erhalten ein eigenes Modul für ihre Fachlogik.
Desktop\PC-Visit wird bei der Suche nach empfangenen Dateien ausgeschlossen.