# Rechnungstool Campinghof Bartl Desktop-Programm (Python/Tkinter), das die alte Excel-Rechnungsvorlage ersetzt: Kundendaten + Anzahl eingeben → druckfertige **PDF**-Rechnung im Campinghof-Layout. ## Starten - **Doppelklick** auf `Rechnung starten.bat` - oder im Terminal: `python app.py` ## Bedienung 1. **Kunde** (Name/Anschrift) und **An-/Abreise** eintragen – die Nächte werden automatisch berechnet. 2. Bei den passenden **Leistungen** die **Anzahl** (Tage/Menge) eingeben; bei Personengebühren zusätzlich die **Personen**. 3. Summen (inkl. Steuer-Aufschlüsselung) erscheinen live unten. 4. **PDF erstellen** → die Rechnung landet im Ordner `rechnungen/` und öffnet sich zum Drucken. Die Rechnungsnummer (`JJJJ-NNN`) zählt nach jedem Erstellen automatisch hoch. ## Einstellungen (Menü „Einstellungen") - **Steuersätze & Bettensteuer** – ermäßigter/regulärer USt-Satz; Beherbergungssteuer per Checkbox an/aus + Prozentsatz. Bei aktiver Bettensteuer wird sie auf das Netto der Beherbergungs-Positionen aufgeschlagen und eigen ausgewiesen. - **Leistungskatalog / Preise** – Bezeichnung, USt-Satz und Brutto-Preis je Position. - **Firmendaten & Texte** – Kopf, Bankverbindung, Fußzeile, Danktexte. - **Rechnungsnummer** – Jahr und Zähler setzen. Alle Einstellungen werden in `config.json` gespeichert (neben den Programmdateien). ## Berechnung (wie in der Excel-Vorlage) - Position-Gesamt = `Anzahl × Einzelpreis` (Personengebühren zusätzlich `× Personen`). - Preise sind **brutto**; die USt wird herausgerechnet (7 %: `÷107×7`, 19 %: `÷119×19`). - Optionale **Beherbergungssteuer** = Satz % auf das Netto der Beherbergungs-Positionen. ## Dateien | Datei | Zweck | |-------|-------| | `app.py` | GUI (Eingabe + Einstellungen) | | `berechnung.py` | Rechenkern (eine Quelle für GUI + PDF) | | `pdf_renderer.py` | PDF-Erstellung (reportlab) | | `config.py` | Standardwerte + Laden/Speichern der `config.json` | | `config.json` | gespeicherte Einstellungen (wird beim 1. Start angelegt) | | `rechnungen/` | Ausgabeordner für die PDFs | ## Voraussetzungen - Python 3.10+ - `reportlab` (`pip install reportlab`) - `tkinter` (bei Standard-Windows-Python dabei)