4Angebotsreife Version — vollständiger Funktionsumfang nach Requirements v0.9, UX für Baustelle und Büro geschärft
4aTablet in der Werkstatt — quer, 1194 × 834
Offline — Einträge werden lokal gespeichert und automatisch synchronisiert. Stand: 16:40
Z Zeiterfassung Münchwilen TG {{ syncLabel }}

Wer erfasst Zeit?

Montag, 31. August 2026 · Namen antippen, dann PIN.

{{ doneCount }} von 8 haben heute erfasst
Stand: {{ standLabel }}Tablet-01 Büro-Login →
{{ selectedInitials }}

{{ selectedName }}

{{ selectedRole }}

PIN (4–6 Ziffern)

{{ pinError }}

5 Fehlversuche → 60 s Sperre.
Offline-Anmeldung auf diesem Gerät möglich. PIN vergessen? Das Büro setzt sie zurück.
{{ selectedInitials }} {{ selectedName }}
{{ syncLabel }} Auto-Logout {{ logoutIn }}
Eintrag fehlt: Do, 20.08.Vortage kann nur das Büro ergänzen.

Montag, 31. August 2026

Nur der heutige Tag ist editierbar — Vortage korrigiert das Büro.

Heute
VonBisBaustelleDauer
{{ b.dur }}
{{ i.kind }}{{ i.text }}
{{ f.label }}
{{ f.value }}
{{ absenceCode }}

{{ absenceTitle }}

{{ absenceText }}

Gutschrift
8:18
Saldo ±
0:00
Tagesstatus

Ferien werden über «Mein Monat → Ferien beantragen» beantragt und vom Büro gesetzt.

Angewendete Regeln
Spesen (abgeleitet){{ spesenLabel }}

{{ saveHint }}

✓

Danke, {{ selectedFirst }}. Tag gespeichert.

{{ doneSummary }}

{{ doneSync }}

Automatische Abmeldung in {{ doneCountdown }} s

{{ b.label }}
{{ b.value }}
{{ b.sub }}

August 2026

Nur Ansicht {{ balanceStand }}
DatumTagBlöcke / BaustelleIstSoll±Status
{{ r.date }} {{ r.dow }} {{ r.detail }} {{ r.ist }} {{ r.soll }} {{ r.diff }} {{ r.status }}
Meine Anträge
{{ q.type }}{{ q.status }}
{{ q.range }}
{{ q.days }}
Begründung Büro: {{ q.reason }}

Noch keine Anträge.

{{ tp.title }}
{{ tp.value }}
Stunde
Minute
{{ tp.minLabel }}
:00:15:30:45:59
Baustelle wählen
{{ bp.blockLabel }}
Zuletzt verwendet
Alle aktiven Baustellen
Keine Baustelle gefunden. Neue Baustellen legt das Büro an.
Antrag
Absenz beantragen
{{ fr.monthLabel }} {{ fr.hint }}
{{ d }}

Grau: Wochenende, Vergangenheit oder Feiertag TG (F). Diese Tage zählen nicht als Ferientage.

Zeitraum
{{ fr.rangeLabel }}
{{ fr.daysLabel }}
Saldo heute
12.5 T
Danach
{{ fr.afterLabel }}

Das Büro sieht den Antrag sofort. Genehmigte Tage erscheinen als Status U in deinem Monat; eine Ablehnung kommt immer mit Begründung.

{{ toast }}
UX-Entscheide Tablet
1Ziel «unter 1 Minute pro Eintrag»: Namen → PIN (4 Ziffern reichen, kein OK) → «Wie am Freitag» → Speichern. Drei Tipps im Normalfall.
2Karten zeigen, wer heute schon erfasst hat — der Vorarbeiter sieht auf einen Blick, wer noch fehlt.
3Validierung inline statt Fehlermeldung beim Speichern: Ende vor Start und Überlappung blockieren; fehlende Baustelle und > 12 h warnen nur.
4Tagesstatus K / Unf / F ersetzt die Blöcke komplett — kein leeres Formular, Gutschrift Sollzeit sichtbar. Bei Krank wird eine Bemerkung verlangt.
5Nach dem Speichern eine klare Endseite mit grossem «Abmelden — nächste Person» und Auto-Abmeldung: geteiltes Tablet, kein Zugriff auf fremde Daten.
6Offline (Tweak): gelber Balken, Sync-Pille «Ausstehend», Salden mit «Stand» statt als Wahrheit. Der Monteur muss nichts anders machen.
7Anträge mit Status und Büro-Begründung direkt im Monat — kein Nachfragen im Büro nötig.
4bBackoffice Web-App — 1440 × 900
Z Zeiterfassung
{{ n.group }}
RS R. SteinemannBüro · Admin

{{ oTitle }}

August 2026
MitarbeiterAnstellungIst MTDSoll MTDGleitzeitFerien RestOffene TageAuffälligkeitenHeute
{{ r.initials }}{{ r.name }} {{ r.type }} {{ r.ist }} {{ r.soll }} {{ r.gz }} {{ r.ferien }} {{ r.anom }} {{ r.today }}
Monatslohn · 100 % · Soll 8:18/Tag
DatumTagBlöcke / BaustelleIstSoll±SpesenStatus
{{ r.date }} {{ r.dow }} {{ r.detail }} {{ r.ist }} {{ r.soll }} {{ r.diff }} {{ r.spesen }} {{ r.status }}
Monatstotal
{{ t.label }}{{ t.value }}

Jede Büro-Änderung landet im Audit-Log mit Benutzer, Zeitstempel, Begründung und Vorher/Nachher-Wert.

Marco Bühler · 2026

Übertrag 2025: Gleitzeit +6:12 · Ferien +2.5 T
Gleitzeitsaldo kumuliert
Balken = Monatssaldo Ist − Soll · Linie oben = Stand Ende Monat
{{ y.cum }}
{{ y.m }}
MonatArbeitstageIstSollSaldoKumuliertFerienKrankSpesen-T.Zustand
{{ y.m }} {{ y.wd }} {{ y.ist }} {{ y.soll }} {{ y.saldo }} {{ y.cum }} {{ y.fer }} {{ y.sick }} {{ y.sp }} {{ y.st }}
NameAdresseKundeLuftlinieSpesenStunden AugStatus
{{ s.name }} {{ s.addr }} {{ s.client }} {{ s.km }} {{ s.spesen }} {{ s.hours }} {{ s.status }}

Spesen werden ab {{ cfg.spesenKm }} km Luftlinie von Münchwilen TG vorgeschlagen (Einstellungen). Deaktivierte Baustellen verschwinden vom Tablet, die Historie bleibt.

Kürzlich entschieden
{{ q.name }}{{ q.status }} {{ q.range }}
Keine offenen Anträge.
{{ req.type }} eingereicht am {{ req.submitted }}

{{ req.name }}

{{ req.range }} · {{ req.days }}

{{ f.label }}
{{ f.value }}
Wer ist im selben Zeitraum weg?
{{ o }} Niemand — volles Team verfügbar
{{ req.note }}

{{ req.approveHint }} Eine Ablehnung braucht eine Begründung, die der Mitarbeiter sieht.

Sync-Prüfung

Nichts wird stillschweigend überschrieben — die Büro-Version bleibt live, bis hier entschieden ist
Keine offenen Sync-Fälle. Alle Geräte sind konsistent.
{{ v.kind }} {{ v.who }} {{ v.when }} {{ v.device }}

{{ v.text }}

{{ v.aLabel }}
{{ v.a }}
{{ v.bLabel }}
{{ v.b }}

Mitarbeiter

8 aktiv
NameAnstellungPensumSoll/TagFerienanspruchÜbertrag FerienÜbertrag GleitzeitSpracheEintrittPIN
{{ e.initials }}{{ e.name }} {{ e.type }} {{ e.pensum }} {{ e.soll }} {{ e.fer }} {{ e.ferCarry }} {{ e.gzCarry }} {{ e.lang }} {{ e.entry }}

PINs werden gehasht gespeichert und sind nie sichtbar. Ein Reset erzeugt eine Einmal-PIN, die beim nächsten Login geändert werden muss. Austritte behalten ihre Historie (5 Jahre Aufbewahrung, ArG).

August 2026 abschliessen

Der Abschluss friert den Monat für alle ein, auch fürs Büro
MitarbeiterIstSoll±ÜbertragFerien bezogenSpesen-TageZustand
{{ c.box }} {{ c.name }} {{ c.ist }} {{ c.soll }} {{ c.diff }} {{ c.carry }} {{ c.ferien }} {{ c.spesen }} {{ c.state }}

Blockierte Zeilen lassen sich erst abschliessen, wenn offene Tage ergänzt und Sync-Fälle entschieden sind. Wiederöffnen ist möglich und wird protokolliert.

Arbeitszeit & Pausen
Sollzeit pro Tag (100 %)8:18
Wochenarbeitszeit GAV41.5 h
Plausibilitätsgrenze pro Tag12:00
Znüni-Pause −30 min (Q1)

{{ znueniHint }}

Spesen (Q2)
Schwelle Luftlinie ab Firmensitz{{ cfg.spesenKm }} km
Pauschale pro Spesen-TagCHF 16.00
Tag mit gemischten Baustellen
Feiertage Thurgau 2026
{{ h.name }}{{ h.date }}
GAV Schreinergewerbe (Q3 — Werte mit Treuhand bestätigen)
Ferienanspruch bis 49 J.25 Tage
Ferienanspruch ab 50 J.27 Tage
Überzeit-Zuschlag ab Grenze25 %
Stundenlohn: Saldo unter 0verhindern + melden (Q4)
Auto-Logout Tablet5 min

Alle Werte sind Konfiguration, nicht Code — bei einer GAV-Änderung passt das Büro sie selbst an. Jede Änderung ist datiert und gilt ab dem gewählten Stichtag.

{{ ed.title }}

{{ ed.pillText }}

Marco Bühler · Korrektur durch das Büro, wird protokolliert.

Arbeitsblöcke
Oder Tagesstatus
Ergebnis
Ist{{ ed.ist }}
Soll8:18
±{{ ed.diff }}
Spesen{{ ed.spesen }}
Verlauf dieses Tages
{{ a.what }}
{{ a.who }}

Antrag ablehnen

{{ req.name }} · {{ req.range }}

Baustelle

Automatisch geokodiert
Luftlinie ab Firmensitz
18.4 km
Spesen-Vorschlag
{{ bsSuggest }}

Monat für {{ readyCount }} Mitarbeiter abschliessen?

Die Totale werden neu berechnet und eingefroren: Ist, Soll, Über-/Minusstunden, Ferienbezug und Übertrag. Der Monat wird für Mitarbeiter und Büro schreibgeschützt. Wiederöffnen ist möglich und wird protokolliert.

{{ oToast }}
UX-Entscheide Büro
1Die Übersicht ist eine To-do-Liste: Kennzahlen sind Links, offene Tage öffnen direkt die Korrektur, «Heute» zeigt, wer noch nicht erfasst hat.
2Korrektur eines Tages im Rapport mit Pflicht-Begründung und sichtbarem Verlauf — der Audit-Trail ist Teil der Arbeit, kein separates Log.
3Sync-Prüfung als eigenes Postfach: Büro-Version vs. Offline-Version nebeneinander, Entscheid mit einem Klick. Deckt §12 vollständig ab (Konflikt, geschlossener Monat, Überlappung).
4Anträge zeigen, wer im selben Zeitraum bereits weg ist — die eigentliche Frage beim Genehmigen.
5Jahresansicht mit Saldo-Verlauf pro Monat ersetzt das Blättern durch zwölf Excel-Blätter.
6Einstellungen machen die offenen Fragen Q1–Q4 zu Schaltern statt zu Programmieraufträgen.
7Monatsabschluss ist blockiert, solange Lücken oder Sync-Fälle offen sind — sauberer Lohnlauf garantiert.