An open API service indexing awesome lists of open source software.

https://github.com/wahke/bereitschaft-einsatzzeiten

Webbasierte Anwendung zur Verwaltung von Bereitschaftseinsätzen mit AIDA-Antrag, KM-Geld, Zeitberechnung und Exportfunktionen.
https://github.com/wahke/bereitschaft-einsatzzeiten

aida bereitschaft excel-export mysql pdf-export php timesheet webapp zeitmanagement

Last synced: 3 months ago
JSON representation

Webbasierte Anwendung zur Verwaltung von Bereitschaftseinsätzen mit AIDA-Antrag, KM-Geld, Zeitberechnung und Exportfunktionen.

Awesome Lists containing this project

README

        

# 📘 Bereitschafts-Zeiterfassungssystem

Ein vollständiges PHP-basiertes Zeiterfassungssystem zur Erfassung und Verwaltung von Bereitschaftsdiensten inkl. intelligenter Zeitberechnung, Exportfunktionen und Benutzerverwaltung.

## Setup
- Downloaden Sie das Release und laden Sie es Hoch
- Rufen Sie die setup.php auf und erstellen Sie die Datenbank
- Löschen Sie die setup.php und Registrieren Sie sich.
- Viel Spass

## ✅ Features

### 👤 Benutzerverwaltung
- Registrierung & Login
- Session-geschützter Zugang
- Admin-Nutzer kann alle Einträge sehen ( nicht in Planung )

### ⏱️ Zeiterfassung
- Manuelle Eingabe von:
- Datum
- Kommen (Startzeit)
- P1 (Endzeit)
- Berechnung von:
- **PE+Zeit** = Kommen - Wegzeit
- **P1+Zeit** = P1 + Wegzeit
- **Differenz** = PE+Zeit bis P1+Zeit ( Funktioniert nicht immer )
- Unterstützte Spezialfälle:
- **PE+Zeit fällt auf Vortag** → automatischer zusätzlicher Eintrag
- **P1+Zeit fällt auf Folgetag** → automatischer zusätzlicher Eintrag
- **Mitternachtseinsatz (Checkbox)** → zwei Einträge (Vortag/Folgetag)
- **Normale Einträge** → ein Eintrag

### 🧠 Intelligente Optionen
- Checkbox „Keine Wegzeit“ für Kommen und/oder P1
- Automatischer Erhalt oder Neuberechnung der Zeit bei Bearbeitung
- Nur geänderte Werte werden neu berechnet

### ⚙️ Einstellungen (pro Benutzer)
- Standard Minus-Zeit (für PE+Zeit)
- Standard Plus-Zeit (für P1+Zeit)
- Kilometer-Wert (für Frais route intérieur-Export)
- Persönliche Angaben für Exporte:
- Name, Qualité, Administration
- Résidence, Domicile, Banque, IBAN

### 📝 Eintragsverwaltung
- Alle Einträge im Dashboard bearbeitbar
- Sofortiges Speichern und Löschen möglich
- Dynamischer Zeilenumbruch im Info-Feld
- AIDA- & Frais route intérieur-Checkboxen

### 📤 Exportfunktionen
#### PDF-Export
- Export aller Einträge mit Icons
- Zeilenumbrüche im Info-Feld
- Erstellt durch: `[Name]` oben rechts

#### Excel-Export (Fiche)
- Basierend auf Vorlage `vorlage.xlsx`
- Nur aktuelle Jahres-Einträge mit Frais route intérieur-Haken
- Berechnung von Strecke abhängig von Mitternacht & Domicile
- KM automatisch halbiert bei nur Hinfahrt/Rückfahrt
- Automatisches Ausfüllen der Benutzerdaten in Kopfbereich

## 📦 Voraussetzungen
- PHP 7.4+
- MySQL
- Composer (für PhpSpreadsheet)
- Webserver (z. B. Apache)

## 📁 Projektstruktur
```
├── setup.php // Setup der Datenbank
├── db.php // Datenbankverbindung
├── eintrag_speichern.php // Hauptlogik für Einträge
├── dashboard.php // Haupt-Dashboard
├── update.php // Update + Löschen in einer Datei
├── export_excel.php // Excel-Export (KM Geld)
├── export_pdf.php // PDF-Export
├── registration.php // Registrierung
├── index.php // Login
├── einstellungen.php // Benutzerbezogene Einstellungen
├── vorlage.xlsx // Excel-Vorlage
├── style.css // Layout und Styles
├── image/ // Icons (aida.png, excel.png, pdf.png)
├── phpoffice/ // Frais route intérieur Export
└── tools/tfpdf/ // FPDF mit Unicode-Unterstützung
```

## 🛡️ Sicherheit
- Prepared Statements gegen SQL-Injection
- Passwort-Hashing mit `password_hash()` / `verify()`
- Session-Schutz auf allen Seiten

## 🧪 TODOs / Weiterentwicklung
- Admin-Oberfläche zur Benutzerverwaltung
- Admin-Nutzer kann alle Einträge sehen
- Mehrsprachigkeit (DE/FR)
- Responsives Design für Mobilgeräte
- **Differenz** = PE+Zeit bis P1+Zeit Bessere Berechnung

---

**© entwickelt mit ❤️ von [wahke.lu](https://wahke.lu)**