Add Paperless Finance Report Tool - Complete implementation

A Python CLI tool for generating financial reports from Paperless-ngx:

- Phase 1 (MVP): Config handling, Paperless API client with auth and
  pagination, custom fields extraction, tag-based summation, CLI output
- Phase 2 (Grouping): Multiple grouping criteria (tag, correspondent,
  category, payment type, month, quarter, year), percentage distribution
- Phase 3 (Reports): HTML reports with Chart.js diagrams (doughnut, bar,
  line charts), PDF export via WeasyPrint, JSON and CSV export
- Phase 4 (Comfort): Automatic tag ID resolution, disk caching with
  diskcache, colorized logging, comprehensive error handling

Features:
- Flexible date filtering (year, month, date range)
- Period comparison with change analysis
- Swiss franc formatting (CHF with apostrophe separators)
- Interactive HTML reports with sortable tables and document links
- Multiple output formats (CLI, HTML, PDF, JSON, CSV)
This commit is contained in:
Claude
2025-12-07 10:09:10 +00:00
parent 3134418e6a
commit d2dd837f26
13 changed files with 3824 additions and 0 deletions
+24
View File
@@ -0,0 +1,24 @@
"""
Paperless Finance Report Tool
Generiert Finanzberichte aus Paperless-ngx Dokumenten.
"""
__version__ = '1.0.0'
__author__ = 'Your Name'
from config import Config, get_config
from paperless_client import PaperlessClient, PaperlessAPIError
from extractor import DocumentExtractor, DataAggregator, FinanceDocument
from report_generator import ReportGenerator
__all__ = [
'Config',
'get_config',
'PaperlessClient',
'PaperlessAPIError',
'DocumentExtractor',
'DataAggregator',
'FinanceDocument',
'ReportGenerator',
]