Initial commit - Stand 26.04.2026
This commit is contained in:
@@ -0,0 +1,111 @@
|
||||
# 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
|
||||
3. `backend/routes/nebenkosten.js`
|
||||
- API-Endpunkte für alle CRUD-Operationen
|
||||
- Berechnungslogik für Abrechnungen
|
||||
- PDF-Export mit Entwurf-Wasserzeichen
|
||||
|
||||
### Frontend
|
||||
4. `frontend/src/api-nebenkosten.js`
|
||||
- API-Client für Objekte, Mieter, Abrechnungen
|
||||
|
||||
5. `frontend/src/components/nebenkosten/Objekte.jsx`
|
||||
- Objekt-Verwaltung mit Formular
|
||||
- CRUD-Operationen
|
||||
|
||||
6. `frontend/src/components/nebenkosten/Mieter.jsx`
|
||||
- Mieter-Verwaltung
|
||||
|
||||
7. `frontend/src/components/nebenkosten/Nebenkostenabrechnung.jsx`
|
||||
- Abrechnungs-Erstellung
|
||||
- Vorschau mit Berechnungen
|
||||
- PDF-Download
|
||||
|
||||
### Integration
|
||||
8. `backend/server.js` (modifiziert)
|
||||
- Import: `const nebenkostenRoutes = require('./routes/nebenkosten');`
|
||||
- Routes: `nebenkostenRoutes(app);`
|
||||
|
||||
9. `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:**
|
||||
```bash
|
||||
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:**
|
||||
```bash
|
||||
cd frontend && npm run build
|
||||
```
|
||||
|
||||
3. **Backend neu starten:**
|
||||
```bash
|
||||
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
|
||||
Reference in New Issue
Block a user