111 lines
3.0 KiB
Markdown
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
|