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

143 lines
4.6 KiB
Markdown

# Nebenkostenabrechnung - Status Dokumentation
**Datum:** 21.04.2026
**Status:****VOLLSTÄNDIG IMPLEMENTIERT & DEPLOYED**
---
## ✅ IMPLEMENTIERT
### Backend (nebenkosten.js)
- ✅ Objekte-CRUD (GET, POST, PUT, DELETE /api/objekte)
- ✅ Mieter-CRUD (GET, POST, PUT, DELETE /api/mieter)
- ✅ Mietvertraege-CRUD (GET, POST, PUT, DELETE /api/mietvertraege)
- ✅ Objektkosten-CRUD (GET, POST, PUT, DELETE /api/objektkosten)
- ✅ Vorauszahlungen-CRUD (GET, POST, PUT, DELETE /api/vorauszahlungen)
- ✅ Vorauszahlungen Bulk-Erstellung (POST /api/vorauszahlungen/bulk)
- ✅ Nebenkostenabrechnung Übersicht (GET /api/nebenkostenabrechnung/uebersicht)
- ✅ Nebenkostenabrechnung Vorschau (POST /api/nebenkostenabrechnung/vorschau)
- ✅ Nebenkostenabrechnung speichern (POST /api/nebenkostenabrechnung)
- ✅ Alle Abrechnungen abrufen (GET /api/nebenkostenabrechnung)
- ✅ Einzelne Abrechnung mit Positionen (GET /api/nebenkostenabrechnung/:id)
- ✅ Status aktualisieren (PUT /api/nebenkostenabrechnung/:id/status)
- ✅ PDF Export (POST /api/nebenkostenabrechnung/:id/pdf)
### Datenbank-Tabellen
Alle erforderlichen Tabellen werden automatisch erstellt:
-`objekte`
-`mieter`
-`mietvertraege`
-`objektkosten`
-`vorauszahlungen`
-`nebenkostenabrechnungen`
-`abrechnungspositionen`
### Frontend
- ✅ Objekte.jsx - Komplette Objektverwaltung
- ✅ Mieter.jsx - Komplette Mieterverwaltung
- ✅ Nebenkostenabrechnung.jsx - Abrechnung erstellen & Berechnung
- ✅ api-nebenkosten.js - Alle API-Calls mit Zusatzfunktionen
- ✅ App.jsx - Routing eingebunden (Objekte, Mieter, NK-Abrechnung)
### Berechnungslogik
- ✅ Pro-rata Verteilung der Kosten nach Wohnfläche
- ✅ Vorauszahlungen werden verrechnet
- ✅ Nachzahlung/Gutschrift automatisch berechnet
- ✅ PDF-Generation mit Entwurf/Final-Modus
### Deployment
- ✅ Backend Container erfolgreich neu gebaut
- ✅ Neue Tabellen werden automatisch erstellt
- ✅ Alle Routen aktiv
---
## 📦 VERFÜGBARE ENDPUNKTE
| Endpunkt | Methode | Beschreibung |
|----------|-----------|--------------|
| /api/objekte | GET/POST | Alle Objekte / Neues Objekt |
| /api/objekte/:id | PUT/DELETE | Objekt aktualisieren/löschen |
| /api/mieter | GET/POST | Alle Mieter / Neuer Mieter |
| /api/mieter/:id | PUT/DELETE | Mieter aktualisieren/löschen |
| /api/mietvertraege | GET/POST | Mietverträge |
| /api/mietvertraege/:id | PUT/DELETE | Mietvertrag aktualisieren/löschen |
| /api/objektkosten | GET/POST | Kosten |
| /api/objektkosten/:id | PUT/DELETE | Kosten aktualisieren/löschen |
| /api/vorauszahlungen | GET/POST | Vorauszahlungen |
| /api/vorauszahlungen/bulk | POST | 12 Monate auf einmal erstellen |
| /api/nebenkostenabrechnung/vorschau | POST | Berechnung durchführen |
| /api/nebenkostenabrechnung | GET/POST | Abrechnungen abrufen/speichern |
| /api/nebenkostenabrechnung/:id/pdf | POST | PDF erstellen |
---
## 🧪 TEST-ANLEITUNG
### Test 1: Objekt anlegen
1. **Frontend öffnen:** `http://192.168.0.55:3000`
2. **Tab "Objekte" auswählen**
3. **"Neues Objekt" klicken**
4. Daten eingeben:
- Name: "Test Wohnung"
- Adresse: "Musterstraße 1"
- PLZ: "25554"
- Ort: "Wilster"
- Wohnfläche: "85"
5. **"Speichern" klicken**
### Test 2: Mieter anlegen
1. **Tab "Mieter" auswählen**
2. **"Neuer Mieter" klicken**
3. Daten eingeben:
- Name: "Max Mustermann"
- E-Mail: "max@test.de"
4. **"Speichern"**
### Test 3: Abrechnung erstellen
1. **Tab "NK-Abrechnung" auswählen**
2. Objekt auswählen
3. Jahr eingeben (z.B. 2026)
4. **"Abrechnung berechnen" klicken**
5. Ergebnis sollte leer sein (noch keine Kosten)
6. **"Als Entwurf speichern"**
### Test 4: Kosten hinzufügen
Kann über Backend/API erfolgen:
```bash
# Beispiel via curl (von Container aus)
curl -X POST http://localhost:3001/api/objektkosten \
-H "Content-Type: application/json" \
-d '{"objekt_id": "<OBJEKT_ID>", "kategorie": "Heizkosten", "bezeichnung": "Gas 2026", "betrag": 1200, "jahr": 2026}'
```
---
## 📁 DATEIEN
### Backend
- `backend/routes/nebenkosten.js` - Alle API-Routen (600+ Zeilen)
- `backend/server.js` - InitDatabase erweitert
### Frontend
- `frontend/src/components/nebenkosten/Objekte.jsx`
- `frontend/src/components/nebenkosten/Mieter.jsx`
- `frontend/src/components/nebenkosten/Nebenkostenabrechnung.jsx`
- `frontend/src/api-nebenkosten.js`
- `frontend/src/App.jsx` - Navigation erweitert
### Dokumentation
- `NEBENKOSTEN_STATUS.md` - Diese Datei
---
## 🚀 DEPLOYMENT STATUS
```
✅ Container gebaut: buchhaltungs-app-backend:latest
✅ Container gestartet: buchhaltung-backend
✅ Datenbank-Tabellen initialisiert
✅ Backend läuft auf Port 3001
```
**System ist betriebsbereit!**