Files
SDSStundenerfassung/SCHNELLSTART.md
Carsten Graf 17838c4f1e FirstCommit
2026-01-22 01:13:28 +01:00

111 lines
3.0 KiB
Markdown

# Schnellstart-Anleitung
## Installation in 3 Schritten
### 1. Projekt entpacken
Entpacken Sie das Projekt-Archiv in einen beliebigen Ordner auf Ihrem Server.
### 2. Dependencies installieren
Öffnen Sie ein Terminal/Kommandozeile im Projekt-Ordner und führen Sie aus:
```bash
npm install
```
Dies installiert alle benötigten Pakete:
- express (Webserver)
- sqlite3 (Datenbank)
- bcryptjs (Passwort-Verschlüsselung)
- express-session (Session-Verwaltung)
- ejs (Template Engine)
- pdfkit (PDF-Generierung)
- body-parser (Request-Verarbeitung)
### 3. Server starten
```bash
npm start
```
Die Anwendung ist nun unter `http://localhost:3000` erreichbar.
## Erster Login
### Als Administrator
- URL: `http://localhost:3000`
- Benutzername: `admin`
- Passwort: `admin123`
Nach dem Login können Sie:
- Neue Mitarbeiter anlegen
- Rollen vergeben (Mitarbeiter, Verwaltung, Admin)
- Benutzer verwalten
### Als Verwaltung
- URL: `http://localhost:3000`
- Benutzername: `verwaltung`
- Passwort: `verwaltung123`
Nach dem Login können Sie:
- Eingereichte Stundenzettel einsehen
- PDFs erstellen und herunterladen
## Wichtige Hinweise
⚠️ **Passwörter ändern!**
Bitte ändern Sie die Standard-Passwörter nach der ersten Anmeldung!
⚠️ **Firewall-Einstellungen**
Stellen Sie sicher, dass Port 3000 in Ihrer Firewall geöffnet ist, falls Sie von anderen Computern darauf zugreifen möchten.
⚠️ **Produktiv-Einsatz**
Für den Produktiv-Einsatz empfehlen wir:
- HTTPS verwenden (z.B. mit nginx als Reverse Proxy)
- Starke Passwörter verwenden
- Regelmäßige Backups der Datenbank erstellen
## Port ändern
Falls Port 3000 bereits belegt ist, können Sie den Port ändern:
1. Öffnen Sie `server.js`
2. Ändern Sie die Zeile `const PORT = 3000;` auf den gewünschten Port
3. Speichern und Server neu starten
## Datenbank-Speicherort
Die SQLite-Datenbank wird automatisch als `stundenerfassung.db` im Projekt-Verzeichnis erstellt.
**Backup erstellen:**
Kopieren Sie einfach die Datei `stundenerfassung.db` an einen sicheren Ort.
## Problemlösung
### Server startet nicht
- Prüfen Sie, ob Port 3000 bereits belegt ist
- Prüfen Sie, ob Node.js installiert ist: `node --version`
- Prüfen Sie, ob alle Dependencies installiert sind: `npm install`
### Login funktioniert nicht
- Löschen Sie die Datei `stundenerfassung.db` und starten Sie den Server neu
- Die Datenbank wird dann mit den Standard-Benutzern neu erstellt
### PDF-Download funktioniert nicht
- Prüfen Sie die Browser-Konsole auf Fehler
- Stellen Sie sicher, dass Popups für die Seite erlaubt sind
## Workflow
1. **Admin** legt neue Mitarbeiter an
2. **Mitarbeiter** melden sich an und erfassen ihre Stunden
3. Mitarbeiter sehen ihre Woche (Montag-Sonntag)
4. Einträge werden automatisch beim Ausfüllen gespeichert
5. Am Ende der Woche: "Woche abschicken" klicken
6. **Verwaltung** sieht eingereichte Stundenzettel im Postfach
7. Verwaltung kann PDFs erstellen und herunterladen
## Support
Bei Fragen oder Problemen:
- Prüfen Sie die ausführliche README.md
- Kontaktieren Sie Ihre IT-Abteilung