Files
buchhaltung/NEBENKOSTEN_IMPLEMENTATION.md
2026-04-26 07:51:39 +02:00

3.2 KiB
Raw Permalink Blame History

Nebenkostenabrechnung - Implementation Complete

Erstellte Dateien

Datenbank (Migrationen)

  1. backend/database/migrations/001_nebenkostenabrechnung.sql

    • Tabellen: objekte, mieter, mietvertraege, objektkosten, vorauszahlungen, nebenkostenabrechnungen, abrechnungspositionen
    • Indizes und Trigger
  2. backend/database/migrations/002_nebenkosten_beispieldaten.sql

    • 3 Beispiel-Objekte: Wilster, Segeberg, Zingelstraße 14
    • 5 Beispiel-Mieter
    • 3 Mietverträge
    • Beispielkosten und Vorauszahlungen für 2024

Backend

  1. backend/routes/nebenkosten.js
    • API-Endpunkte für alle CRUD-Operationen
    • Berechnungslogik für Abrechnungen
    • PDF-Export mit Entwurf-Wasserzeichen

Frontend

  1. frontend/src/api-nebenkosten.js

    • API-Client für Objekte, Mieter, Abrechnungen
  2. frontend/src/components/nebenkosten/Objekte.jsx

    • Objekt-Verwaltung mit Formular
    • CRUD-Operationen
  3. frontend/src/components/nebenkosten/Mieter.jsx

    • Mieter-Verwaltung
  4. frontend/src/components/nebenkosten/Nebenkostenabrechnung.jsx

    • Abrechnungs-Erstellung
    • Vorschau mit Berechnungen
    • PDF-Download

Integration

  1. backend/server.js (modifiziert)

    • Import: const nebenkostenRoutes = require('./routes/nebenkosten');
    • Routes: nebenkostenRoutes(app);
  2. frontend/src/App.jsx (modifiziert)

    • Neue Tabs: "Objekte", "Mieter", "NK-Abrechnung"
    • Import der neuen Komponenten

Features

Objekt-Verwaltung

  • Name, Adresse, PLZ, Ort, Wohnfläche, Bemerkung
  • CRUD: Anlegen, Bearbeiten, Löschen

Mieter-Verwaltung

  • Name, E-Mail, Telefon, Adresse
  • CRUD: Anlegen, Bearbeiten, Löschen

Mietverträge (implizit in API)

  • Mieter-Zuordnung zu Objekt
  • Wohnfläche, Kaltmiete, Vorauszahlung
  • Vertragsbeginn/-ende

Kosten pro Objekt

  • Kategorien: Grundsteuer, Heizung, Wohngeld, Handwerker, Wasser, Müll, Versicherung, Sonstiges
  • Verteilung nach qm/Personen/Zählern
  • CRUD über API

Vorauszahlungen

  • Monatliche Vorauszahlungen pro Mieter
  • Bulk-Erstellung für ganze Jahr

Abrechnung

  • Flexibler Zeitraum (Standard: 1.1. - 31.12.)
  • Pro-rata-Berechnung möglich
  • Berechnung: (Gesamtkosten / Gesamtfläche) × Mieterfläche
  • Abzug: Summe Vorauszahlungen
  • Ergebnis: Nachzahlung oder Gutschrift

PDF Export

  • Firmenlogo und Daten (Täger IT)
  • Übersicht aller Kosten
  • Berechnung pro Mieter
  • Entwurf-Modus mit Wasserzeichen

Verwendung

  1. Datenbank-Migrationen ausführen:

    docker-compose exec db psql -U postgres -d buchhaltung -f /migrations/001_nebenkostenabrechnung.sql
    docker-compose exec db psql -U postgres -d buchhaltung -f /migrations/002_nebenkosten_beispieldaten.sql
    
  2. Frontend neu bauen:

    cd frontend && npm run build
    
  3. Backend neu starten:

    docker-compose restart backend
    

Navigation

  • Objekte: Immobilien/Objekte verwalten
  • Mieter: Mieter verwalten
  • NK-Abrechnung: Neue Abrechnung erstellen, Vorschau berechnen, PDF exportieren

Architektur

  • Objekte haben Mieter über Mietverträge
  • Kosten werden Objekten zugeordnet
  • Vorauszahlungen sind Mieter + Objekt + Jahr + Monat
  • Abrechnungen erstellen Positionen pro Mieter