Zum Hauptinhalt springen

Bautagebuch

Das Bautagebuch ist das zentrale Dokumentationssystem für alle Arbeiten auf der Baustelle. Es verbindet die Dokumentation durch Mitarbeiter (Worker-App) mit der Verwaltung und Genehmigung durch das Büro.

Zwei Perspektiven

Mitarbeiter (Worker-App)

Mitarbeiter erstellen Tagesberichte über den Dokumentation-Wizard in der Worker-App. Der 7-Schritte-Wizard führt durch:

  1. Projekt/Aufgabe auswählen
  2. Arbeitszeiten erfassen
  3. Fotos aufnehmen
  4. Sprachnotizen aufzeichnen (KI-Transkription)
  5. Material dokumentieren
  6. Unterschrift-Typ wählen (Selbst oder Extern)
  7. Unterschrift leisten

Mehr zum Dokumentation-Wizard

Büro / Projektleitung (Bautagebuch-Controlling)

Die zentrale Bautagebuch-Verwaltung (Hauptmenü → Bautagebuch) bietet:

  • Projektübergreifende Übersicht aller Einträge mit Echtzeit-Statusanzeige
  • Projekt-Combobox mit Suche, Typfilter (Großprojekte / Kleinprojekte) und "Alle Projekte"-Option
  • Filter nach Status, Eintragstyp, Zeitraum und Budget-Position
  • Detail-Dialog mit Fotos, Sprachaufnahmen, Maschinen, Materialien und Unterschriften
  • Nachträge als Unter-Zeilen unter dem Originaleintrag gruppiert
  • KI-Berichte als eigener Tab für KI-Zusammenfassungen und PDF-Exporte
  • PDF-Export pro Projekt (Gesamt, Wochen-, Monats- oder Zeitraumbericht)
Routing: Wer sieht was?

Die URL /diary leitet automatisch weiter: Worker gelangen zur Worker-App (/worker/diary), alle anderen Rollen zur Verwaltungsansicht (/bautagebuch). Einzelne Einträge (/diary/[id]) werden für Worker zur Detailansicht, für Manager zur Genehmigungszentrale weitergeleitet.


Eintragstypen

EintragstypBeschreibungErstellt von
ArbeitsscheinStandard-Bautagebucheintrag mit Zeiten, Fotos, MaterialMitarbeiter (Worker-App)
Arbeitsnachweis ExternDokumentation mit externer Unterschrift (Bauleiter vor Ort)Mitarbeiter (Worker-App)
NachtragErgänzung zu einem bestehenden Eintrag (innerhalb 24h)Mitarbeiter (Worker-App)

Genehmigungsprozess

Status-Workflow

Mitarbeiter erstellt Eintrag (Worker-App)

┌─────────┴─────────┐
↓ ↓
Selbst-Signatur Externe Signatur
↓ + Co-Signatur
↓ ↓
Status: "Ausstehend" Status: "Genehmigt"
↓ (sofort, kein Review)
Büro/PL prüft

┌───┼───────────┐
↓ ↓ ↓
Ge- Korrektur Ab-
neh- anfordern lehnen
migen ↓ ↓
↓ Zurück an Dokumentiert,
Kosten MA keine Buchung
gebucht ↓
MA korrigiert
+ signiert erneut

┌───┴───┐
↓ ↓
Akzep- Wider-
tiert spruch
↓ ↓
Erneut Manager
in GZ löst auf

Status-Übersicht

StatusBadge-FarbeBedeutung
Entwurf (draft)--Noch nicht unterschrieben
Ausstehend (pending)GelbUnterschrieben, wartet auf Prüfung
Eingereicht (submitted)GelbExterne Signatur vorhanden, wartet auf Worker-Co-Sign
Genehmigt (approved)GrünErfolgreich freigegeben, Kosten gebucht
Abgelehnt (rejected)RotNicht akzeptiert, keine Buchung
Korrektur angefragt (correction_requested)GelbZurück beim Mitarbeiter
Widerspruch (disputed)LilaMitarbeiter hat Korrektur abgelehnt

Detaillierte Informationen zum Genehmigungsprozess finden Sie unter Genehmigungszentrale.


Bautagebuch-Controlling (Verwaltungsansicht)

Die Verwaltungsansicht unter /bautagebuch ist der zentrale Arbeitsplatz für Manager, Projektleiter und Backoffice.

Tab: Einträge

Die Eintragsliste zeigt alle Bautagebucheinträge mit folgenden Informationen:

SpalteInhalt
DatumArbeitstag und Uhrzeit des ersten Arbeitseinsatzes
ProjektZugeordnetes Projekt
TitelÜberschrift und Kurzbeschreibung des Eintrags
TypArbeitsschein oder Extern
StatusAusstehend / Genehmigt / Abgelehnt
AutorName des Mitarbeiters
MedienAnzahl Fotos, Sprachaufnahmen und Maschinen

Nachträge (Amendments)

Nachträge werden als eingerückte Unter-Zeilen direkt unter dem Originaleintrag angezeigt. Am Originaleintrag erscheint ein Badge wie "+1 Nachtrag". Nachträge sind farblich abgesetzt (bernsteinfarben) und mit einem Pfeil-Symbol gekennzeichnet.

Statistiken

Unterhalb der Tabelle zeigt eine Schnellstatistik:

  • Gesamtanzahl Einträge
  • Anzahl Fotos und Sprachaufnahmen
  • Anzahl eingesetzter Maschinen
  • Offene und genehmigte Einträge (im Header)

Detail-Dialog

Ein Klick auf einen Eintrag öffnet einen Dialog mit:

  • Beschreibung des Eintrags (Volltext)
  • Anwesende Mitarbeiter als Badges
  • Unterschriften mit eingebetteten Signatur-Grafiken und Zeitstempeln
  • Fotos mit Lightbox-Ansicht zum Vergrößern
  • Sprachaufnahmen mit Transkription und Audio-Player
  • Maschinen mit Betriebsstunden
  • Zusammenfassung (Priorität, Eintragstyp, Status, Medien-Zähler)

Tab: KI-Berichte

Der KI-Berichte-Tab ist verfügbar, wenn ein einzelnes Projekt ausgewählt ist. Er bietet:

Berichtstypen

TypFormatBeschreibung
KI-ZusammenfassungMarkdownKI analysiert alle Einträge und erstellt professionelle Zusammenfassung
WochenberichtPDFAlle Einträge einer Kalenderwoche
MonatsberichtPDFAlle Einträge eines Monats
GesamtberichtPDFAlle Einträge des Projekts
ZeitraumberichtPDFEinträge eines frei wählbaren Zeitraums

Schnellaktionen

Vier vordefinierte Schnellaktionen auf Karten:

  • KI: Diese Woche -- KI-Zusammenfassung der aktuellen Woche
  • KI: Dieser Monat -- KI-Zusammenfassung des aktuellen Monats
  • Gesamtexport -- Komplettes PDF des Projekts
  • PDF: Aktueller Monat -- Monats-PDF mit Fotos

KI-Zusammenfassungen

Die KI analysiert Bautagebuch-Einträge und erstellt:

  • Fortschrittsübersicht
  • Materialauswertung
  • Personalübersicht
  • Empfehlungen

Zusammenfassungen werden als Markdown gespeichert und können jederzeit als PDF exportiert werden.

PDF-Exporte

PDF-Exporte enthalten:

  • Firmenlogo
  • Alle Einträge mit eingebetteten Unterschriften
  • Materialien und Wetterdaten
  • Optional: Foto-Timeline (chronologisch am Ende)
  • Optional: Inline-Fotos bei jedem Eintrag

Bei großen Projekten läuft die Erstellung als Hintergrund-Job (Inngest). Der Download startet automatisch, sobald das PDF fertig ist.

Vorschau-Statistiken

Beim Erstellen eines neuen Berichts zeigt eine Vorschau:

  • Anzahl Einträge im gewählten Zeitraum
  • Anzahl Fotos, Materialien und beteiligte Mitarbeiter

Filter und Suche

Hauptfilter (immer sichtbar)

FilterOptionen
ProjektAlle Projekte / Einzelnes Projekt (mit Suche und Typfilter)
StatusAlle / Ausstehend / Genehmigt / Abgelehnt

Erweiterte Filter (aufklappbar)

FilterOptionen
EintragstypAlle / Arbeitsschein / Extern
Von / BisDatumsbereich
Budget-PositionEinträge einer bestimmten LV-Position

Projektauswahl

Die Projektauswahl bietet:

  • Suchfeld zum schnellen Finden von Projekten
  • Typfilter: Alle / Großprojekte / Kleinprojekte
  • Projektanzahl pro Typ
  • Auto-Auswahl bei nur einem verfügbaren Projekt

PDF-Export (Schnellexport)

Neben den KI-Berichten gibt es einen Schnellexport-Button in der Eintragsansicht (bei ausgewähltem Projekt).

Exporttypen

TypBeschreibung
GesamtauszugAlle Einträge des Projekts
WochenauszugEinträge einer bestimmten Kalenderwoche
MonatsauszugEinträge eines bestimmten Monats
DatumsbereichFrei wählbarer Zeitraum

Optionen

  • Fotos bei Einträgen anzeigen: Thumbnail-Galerie direkt unter jedem Eintrag
  • Foto-Timeline am Ende: Chronologische Übersicht aller Fotos am Ende des PDFs
  • Im Projekt speichern: Hintergrund-Export (zuverlässiger bei großen Projekten) oder Direkt-Download

Bautagebuch-Audit (Admin)

Unter Admin → Bautagebuch-Audit (/admin/diary-audit) finden Administratoren eine Überwachungsansicht für blockierte Einträge.

Überwachte Kategorien

KategorieSchwellenwertBeschreibung
Korrektur ausstehend> 7 TageWorker hat Korrektur nicht bearbeitet
Streitfall> 14 TageWorker hat Korrektur abgelehnt, Widerspruch ungelöst
Warte auf Genehmigung> 3 TageManager hat nicht genehmigt
Korrektur-Schleife> 2 KorrekturrundenEintrag wurde mehrfach korrigiert

Funktionen

  • Summary-Karten mit Anzahl pro Kategorie (klickbar als Filter)
  • Suche nach Titel, Mitarbeiter oder Projekt
  • Tabelle mit Status, Titel, Mitarbeiter, blockiert seit (in Tagen), Anzahl Korrekturen, Grund
  • Erinnerungs-Badge wenn automatische Erinnerung gesendet wurde
  • Eskalations-Badge bei eskalierten Einträgen
  • Direktlinks zum Eintrag und zur Genehmigungszentrale
  • Auto-Refresh alle 60 Sekunden
Automatische Erinnerungen

Das System sendet automatisch Erinnerungen an Mitarbeiter bei ausstehenden Korrekturen und eskaliert an Administratoren bei überschrittenen Schwellenwerten.


Korrektur-Workflow

Ablauf

  1. Manager identifiziert Problem im Eintrag
  2. Manager fordert Korrektur an (mit Grund und optionalen Vorschlägen)
  3. Mitarbeiter erhält Benachrichtigung
  4. Mitarbeiter kann:
    • Korrektur übernehmen und erneut signieren
    • Korrektur ablehnen (Widerspruch einlegen)
  5. Bei Widerspruch kann der Manager:
    • Original akzeptieren (Worker hatte Recht)
    • Neue Korrektur senden (mit angepassten Vorschlägen)
    • Final ablehnen (Eintrag wird endgültig abgelehnt)

Korrektur-Limits

  • Maximum 3 Korrektur-Runden pro Eintrag
  • Nach Erreichen des Limits wird der Eintrag an die Administration eskaliert
  • Eskalierte Einträge erscheinen im Bautagebuch-Audit

Immutabilitätsregeln

Nach der Genehmigung gelten strenge Regeln zum Schutz der Datenintegrität:

WasÄnderbar?Anmerkung
ArbeitszeitenNeinVom Mitarbeiter unterschrieben (§16 ArbZG)
Beschreibung/InhaltNeinInhalt ist nach Genehmigung fixiert
Material (Inhalt)NeinNur über den Korrektur-Workflow
StundensätzeJaPreise können jederzeit angepasst werden
MaterialkostenJaPreise können jederzeit angepasst werden

Bei extern unterschriebenen Einträgen (Arbeitsnachweis Extern) ist zusätzlich der gesamte Arbeitsinhalt gesperrt -- Materialien, Maschinen und Fotos können vom Manager nicht ergänzt werden, nur Preise bleiben editierbar.


Kosten-Übernahme ins Budget

Genehmigte Bautagebuch-Einträge fließen automatisch ins Herzstück (Budget):

Was wird gebucht?

KostenartBerechnungZiel
PersonalkostenArbeitsstunden x StundensatzprojectExpenses (Typ: labor)
MaterialkostenMenge x StückpreisprojectExpenses (Typ: material)

Stundensatz-Ermittlung

Der Stundensatz wird in folgender Reihenfolge ermittelt:

  1. Vom Manager bei Genehmigung manuell angegeben
  2. Aus der zugeordneten Budget-Position (wenn Einheit "Stunde")
  3. Aus dem Standard-Stundensatz des Mitarbeiters (Profil-Einstellung)

ArbZG-Compliance-Prüfung

Bei der Genehmigung prüft das System automatisch die Einhaltung des Arbeitszeitgesetzes:

  • §3 ArbZG: Maximale Arbeitszeit von 10 Stunden/Tag
  • §4 ArbZG: Mindestpausenzeiten
  • §5 ArbZG: Mindestruhezeit von 11 Stunden zwischen Schichten
  • §3 ArbZG: Maximale Wochenarbeitszeit (48h Durchschnitt über 24 Wochen)

Bei Verstößen wird die Genehmigung blockiert und eine detaillierte Fehlermeldung mit Gesetzesreferenz angezeigt.

Nachträge und Kosten

Nachträge (Amendments) sind textliche Ergänzungen zum Originaleintrag. Sie erzeugen keine separaten Personalkosten, um Doppelbuchungen zu vermeiden. Die Arbeitszeit des Originals bleibt maßgeblich.


Für wen?

RolleBautagebuch-ControllingKI-BerichtePDF-ExportBautagebuch-AuditEinträge erstellen
AdminAlle ProjekteJaJaJaNein
BackofficeZugewiesene ProjekteJaJaJaNein
ProjektleiterZugewiesene ProjekteJaJaNeinNein
MitarbeiterKein Zugriff (Weiterleitung zu Worker-App)NeinNeinNeinJa (Worker-App)

Zusammenhaenge mit anderen Modulen

Das Bautagebuch ist kein isoliertes Dokumentationssystem. Es ist der zentrale Dateneingang fuer das gesamte Kostensystem der Anwendung. Jeder Eintrag durchlaeuft einen mehrstufigen Lebenszyklus, der am Ende Kosten im Budget erzeugt und Compliance-Dokumente archiviert. Nachfolgend wird der komplette Datenfluss Schritt fuer Schritt erklaert.

Kompletter Datenfluss: Vom Eintrag bis zur Kostenbuchung

Schritt 1 -- Eingang: Worker erstellt Eintrag

Der Mitarbeiter erstellt einen Eintrag ueber den Dokumentation-Wizard in der Worker-App (7 Schritte). Dabei werden folgende Daten erfasst:

  • Arbeitszeiten: Beginn, Ende, Pause (pro Arbeitseinheit)
  • Material: Name, Menge, Einheit, Preis (optional, wird haeufig erst vom Manager zugewiesen)
  • Maschinen: Aus dem Maschinenpark via QR-Code-Scan -- Betriebsstunden werden manuell eingegeben
  • Fotos: Direkt aus der Kamera oder Galerie
  • Sprachnotizen: Mit KI-Transkription
  • Unterschrift: Selbst-Signatur oder externe Signatur (Schritt 6+7)

Je nach Signatur-Typ erhaelt der Eintrag einen unterschiedlichen Status:

  • Selbst-Signatur: Status wird "Ausstehend" (pending) -- der Eintrag muss in der Genehmigungszentrale geprueft werden
  • Externe Signatur: Status wird "Genehmigt" (approved) -- der Eintrag ist sofort genehmigt, weil eine externe Person (z.B. Bauleiter) vor Ort unterschrieben hat

Mehr zu Signatur-Typen

Schritt 2 -- Genehmigung: Manager prueft in der Genehmigungszentrale

Eintraege mit Selbst-Signatur erscheinen in der Genehmigungszentrale. Der Manager (Admin, Backoffice oder Projektleiter) prueft Arbeitszeiten, Fotos, Material und Maschinen. Bei der Genehmigung legt der Manager den Stundensatz und die Materialpreise fest und ordnet den Eintrag einer Budget-Position im Herzstueck zu.

Schritt 3 -- Y-Split: Zwei parallele Ergebnisse nach Genehmigung

Nach der Genehmigung passieren zwei Dinge gleichzeitig (der sogenannte Y-Split):

Y-Split Ast 1 -- Kosten fliessen ins Herzstueck

Die Genehmigung loest automatisch die Kostenbuchung aus. Das System berechnet:

  1. Personalkosten = Arbeitszeit (Stunden) x Stundensatz (EUR/h)
    • Der Stundensatz wird in dieser Reihenfolge ermittelt (3-Tier-Fallback):
      1. Vom Manager bei Genehmigung manuell festgelegt
      2. Aus der Budget-Position (wenn die Einheit "Stunde" ist, wird der Einheitspreis als Stundensatz verwendet)
      3. Aus dem Standard-Stundensatz des Mitarbeiters (Benutzer-Profil: defaultHourlyRate)
    • Bei einem bereits zuvor genehmigten Eintrag, der durch den Korrektur-Workflow zurueckkam, bleibt der urspruengliche Stundensatz erhalten
  2. Materialkosten = Menge x Stueckpreis (fuer jede Materialposition einzeln)
  3. Maschinenkosten = Betriebsstunden x Stundensatz der Maschine (aus dem Maschinenpark-Katalog)

Diese Kosten werden als einzelne Datensaetze in die Tabelle projectExpenses geschrieben (Typ: labor, material). Gleichzeitig wird das Aggregat-Feld actualCost auf der zugehoerigen Budget-Aufgabe (projectBudgetTasks) aktualisiert. Das Herzstueck (Soll-Ist-Vergleich) zeigt die neuen IST-Kosten sofort an.

Wichtig: projectExpenses (Einzelposten) und actualCost (Aggregat) sind Spiegel desselben Kostenflusses -- sie duerfen niemals addiert werden.

Y-Split Ast 2 -- ArbZG-Compliance-Dokument

Parallel zur Kostenbuchung wird ein PDF-Arbeitszeitnachweis gemaess ss16 ArbZG generiert. Das System prueft dabei automatisch:

  • ss3 ArbZG: Hoechstarbeitszeit (max. 10 Stunden/Tag, max. 48h Wochendurchschnitt ueber 24-Wochen-Referenzzeitraum)
  • ss4 ArbZG: Mindestpausenzeiten
  • ss5 ArbZG: Mindestruhezeit (11 Stunden zwischen Schichten)
  • ss9 ArbZG: Feiertage

Bei Verstoessen wird die Genehmigung blockiert mit einer detaillierten Fehlermeldung inkl. Gesetzesreferenz. Das PDF wird 2 Jahre archiviert und dann DSGVO-konform geloescht.

Schritt 4 -- Budget-Aggregation im Herzstueck

Nachdem die Kosten in projectExpenses geschrieben wurden, laeuft die Budget-Synchronisation (syncBudgetFromDiaryEntry). Diese Funktion:

  1. Liest alle Expenses, die zu einer Budget-Aufgabe gehoeren
  2. Summiert Personal-, Material- und Maschinenkosten
  3. Schreibt das Ergebnis als actualCost auf die Budget-Aufgabe
  4. Die Aggregation kaskadiert: Aufgabe -> Gewerk -> Budget-Struktur -> Projekt-Gesamtkosten

Das Herzstueck zeigt dann den Soll-Ist-Vergleich: Geplante Kosten (aus dem Budget-Import) vs. tatsaechliche Kosten (aus genehmigten Bautagebucheintraegen und Zeiteintraegen).

Verbindung zum Dashboard

Offene Genehmigungen (Status "Ausstehend") werden als Badge-Zahl in der Sidebar angezeigt. Diese Zahl wird ueber die API /api/manager/approvals geladen und zeigt die Gesamtanzahl aller ungepruefen Eintraege an. Im Dashboard-Widget "Offene Genehmigungen" erscheint eine zusammenfassende Uebersicht.

Verbindung zur Einsatzplanung

Wenn ein Einsatz in der Einsatzplanung veroeffentlicht und der Worker seine Arbeit in der Worker-App dokumentiert, wird der Bautagebucheintrag mit dem taskAssignmentId des Einsatzes verknuepft. Nach der Genehmigung des Bautagebucheintrags wird der Einsatz-Status automatisch auf "abgeschlossen" gesetzt.

Verbindung zu Rechnungen

Genehmigte Kosten im Herzstueck bilden die Basis fuer Ausgangsrechnungen. Der Leistungsstand (IST-Kosten vs. SOLL-Kosten) bestimmt, welche Betraege abrechenbar sind. Die projectExpenses werden fuer die Rechnungserstellung herangezogen.

Korrektur-Workflow und Kosten

Was passiert mit den Kosten bei einer Korrektur?

Wenn ein bereits genehmigter Eintrag zur Korrektur zurueckgeschickt wird:

  1. Der alte Eintrag bleibt erhalten (Immutabilitaet), aber sein Status wechselt
  2. Die bereits gebuchten Kosten (projectExpenses) werden bei der erneuten Genehmigung automatisch geloescht und neu berechnet (nicht doppelt gebucht)
  3. Die Funktion deleteDiaryLinkedExpenses entfernt alle Expenses, die mit dem Eintrag verknuepft sind
  4. Nach der erneuten Genehmigung werden die Kosten komplett neu berechnet basierend auf den korrigierten Werten
  5. Die Budget-Aggregation (syncBudgetTask) wird fuer alle betroffenen Budget-Aufgaben ausgefuehrt

Bei Preisaenderungen (Stundensatz oder Materialpreise) an einem bereits genehmigten Eintrag werden die alten Expenses ebenfalls geloescht und mit den neuen Preisen neu erstellt -- ohne den gesamten Genehmigungsprozess erneut zu durchlaufen.

Nachtraege im Bautagebuch

Ein Nachtrag (Amendment) ist ein Bautagebucheintrag, der sich auf einen bestehenden Elterneintrag bezieht (parentEntryId). Nachtraege sind textliche Ergaenzungen und erzeugen keine separaten Personalkosten, um Doppelbuchungen zu vermeiden. Die Arbeitszeit des Originaleintrags bleibt massgeblich.

Davon zu unterscheiden sind Nachtrag-Budget-Positionen: Wenn bei der Genehmigung eine neue Nachtrag-Position im Budget erstellt wird (Positionsnummer "NT-001" etc.), fliessen die Kosten des Eintrags in diese separate Nachtrag-Budget-Struktur -- nicht in den Hauptauftrag. Das Herzstueck zeigt Nachtrags-Kosten separat an.

Mehr zu Nachtraegen in der Genehmigungszentrale

Maschinenpark-Verbindung

Wenn ein Worker im Dokumentation-Wizard eine Maschine per QR-Code scannt, werden die Maschinendaten aus dem Maschinenpark-Katalog gezogen (Name, Typ, Status, Stundensatz). Der Worker gibt die Betriebsstunden manuell ein. Nach der Genehmigung werden die Maschinenkosten berechnet als:

Betriebsstunden x Stundensatz der Maschine (aus Katalog) = Maschinenkosten

Diese Kosten fliessen in die Budget-Aggregation ein (machineCost im syncBudgetTask). Nur Maschinen mit einer gültigen machineId (Katalog-Verknuepfung) und einem hourlyRate > 0 werden bei der Kostenberechnung beruecksichtigt.


Verwandte Themen