L12 Zeiterfassung: Mobile Uhr-Leiste, Meine Zeiten, Freigaben und Backoffice-Liste
Laufende-Uhr-Leiste auf allen /m-Seiten, Start/Pause direkt auf den Auftragskarten, Auto-Wechsel-Dialog, Auftragsdetail mit Pause / Für heute beenden / Abschließen-Link und Segmentwechseln, /m/time (Tagesübersicht, Nachtragen, Korrektur vorschlagen), /m/approvals für Teamleiter, /work-orders/time-approvals mit Sammelfreigabe, Zeiten-Tab mit Badges und Inline-Freigabe, Dashboard-Kachel, Texte de/en. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -45,26 +45,92 @@
|
||||
"emergency_completed": "Notdiensteinsatz abgeschlossen",
|
||||
"import_ready_for_review": "Import zur Prüfung",
|
||||
"import_failed": "Fehler bei Dokumentverarbeitung",
|
||||
"sync_failed": "Synchronisationsfehler"
|
||||
"sync_failed": "Synchronisationsfehler",
|
||||
"time_approval_requested": "Zeit zur Freigabe",
|
||||
"time_approved": "Zeit freigegeben",
|
||||
"time_rejected": "Zeit abgelehnt"
|
||||
},
|
||||
"events": {
|
||||
"work_order_assigned": { "title": "Neuer Auftrag {number}", "message": "{title} – {customer} wurde Ihrem Team zugewiesen." },
|
||||
"work_order_changed": { "title": "Auftrag {number} geändert", "message": "{title} – {customer}: Angaben wurden aktualisiert." },
|
||||
"work_order_cancelled": { "title": "Auftrag {number} storniert", "message": "{title} – {customer} wurde storniert." },
|
||||
"work_order_started": { "title": "Auftrag {number} gestartet", "message": "{actor} hat den Einsatz bei {customer} begonnen." },
|
||||
"work_order_daily_report_created": { "title": "Tagesbericht zu {number}", "message": "{actor} hat einen Tagesbericht für {customer} erstellt." },
|
||||
"work_order_technically_completed": { "title": "Auftrag {number} technisch abgeschlossen", "message": "{title} – {customer}: Einsatz vor Ort beendet." },
|
||||
"work_order_signature_missing": { "title": "Unterschrift fehlt: {number}", "message": "{title} – {customer}: Kundenunterschrift liegt nicht vor." },
|
||||
"work_order_missing_required": { "title": "Pflichtangaben fehlen: {number}", "message": "{title} – {customer}: Dokumentation unvollständig." },
|
||||
"work_order_released_for_billing": { "title": "Auftrag {number} zur Abrechnung", "message": "{title} – {customer} ist bereit zur Abrechnung." },
|
||||
"report_submitted": { "title": "Bericht zur Prüfung: {number}", "message": "{actor} hat einen Bericht zu {title} eingereicht." },
|
||||
"report_approved": { "title": "Bericht freigegeben: {number}", "message": "Der Bericht zu {title} wurde freigegeben." },
|
||||
"report_rejected": { "title": "Bericht zurückgewiesen: {number}", "message": "Der Bericht zu {title} braucht eine Korrektur." },
|
||||
"emergency_created": { "title": "Notdiensteinsatz {number} erstellt", "message": "{actor} hat einen Notdiensteinsatz bei {customer} angelegt." },
|
||||
"emergency_completed": { "title": "Notdiensteinsatz {number} abgeschlossen", "message": "{customer}: zur Prüfung und Abrechnung." },
|
||||
"import_ready_for_review": { "title": "Import zur Prüfung bereit", "message": "Die Daten aus {fileName} liegen zur Prüfung vor." },
|
||||
"import_failed": { "title": "Fehler bei Dokumentverarbeitung", "message": "{fileName} konnte nicht verarbeitet werden." },
|
||||
"sync_failed": { "title": "Synchronisation fehlgeschlagen", "message": "Eine Änderung konnte nicht übernommen werden ({reason})." }
|
||||
"work_order_assigned": {
|
||||
"title": "Neuer Auftrag {number}",
|
||||
"message": "{title} – {customer} wurde Ihrem Team zugewiesen."
|
||||
},
|
||||
"work_order_changed": {
|
||||
"title": "Auftrag {number} geändert",
|
||||
"message": "{title} – {customer}: Angaben wurden aktualisiert."
|
||||
},
|
||||
"work_order_cancelled": {
|
||||
"title": "Auftrag {number} storniert",
|
||||
"message": "{title} – {customer} wurde storniert."
|
||||
},
|
||||
"work_order_started": {
|
||||
"title": "Auftrag {number} gestartet",
|
||||
"message": "{actor} hat den Einsatz bei {customer} begonnen."
|
||||
},
|
||||
"work_order_daily_report_created": {
|
||||
"title": "Tagesbericht zu {number}",
|
||||
"message": "{actor} hat einen Tagesbericht für {customer} erstellt."
|
||||
},
|
||||
"work_order_technically_completed": {
|
||||
"title": "Auftrag {number} technisch abgeschlossen",
|
||||
"message": "{title} – {customer}: Einsatz vor Ort beendet."
|
||||
},
|
||||
"work_order_signature_missing": {
|
||||
"title": "Unterschrift fehlt: {number}",
|
||||
"message": "{title} – {customer}: Kundenunterschrift liegt nicht vor."
|
||||
},
|
||||
"work_order_missing_required": {
|
||||
"title": "Pflichtangaben fehlen: {number}",
|
||||
"message": "{title} – {customer}: Dokumentation unvollständig."
|
||||
},
|
||||
"work_order_released_for_billing": {
|
||||
"title": "Auftrag {number} zur Abrechnung",
|
||||
"message": "{title} – {customer} ist bereit zur Abrechnung."
|
||||
},
|
||||
"report_submitted": {
|
||||
"title": "Bericht zur Prüfung: {number}",
|
||||
"message": "{actor} hat einen Bericht zu {title} eingereicht."
|
||||
},
|
||||
"report_approved": {
|
||||
"title": "Bericht freigegeben: {number}",
|
||||
"message": "Der Bericht zu {title} wurde freigegeben."
|
||||
},
|
||||
"report_rejected": {
|
||||
"title": "Bericht zurückgewiesen: {number}",
|
||||
"message": "Der Bericht zu {title} braucht eine Korrektur."
|
||||
},
|
||||
"emergency_created": {
|
||||
"title": "Notdiensteinsatz {number} erstellt",
|
||||
"message": "{actor} hat einen Notdiensteinsatz bei {customer} angelegt."
|
||||
},
|
||||
"emergency_completed": {
|
||||
"title": "Notdiensteinsatz {number} abgeschlossen",
|
||||
"message": "{customer}: zur Prüfung und Abrechnung."
|
||||
},
|
||||
"import_ready_for_review": {
|
||||
"title": "Import zur Prüfung bereit",
|
||||
"message": "Die Daten aus {fileName} liegen zur Prüfung vor."
|
||||
},
|
||||
"import_failed": {
|
||||
"title": "Fehler bei Dokumentverarbeitung",
|
||||
"message": "{fileName} konnte nicht verarbeitet werden."
|
||||
},
|
||||
"sync_failed": {
|
||||
"title": "Synchronisation fehlgeschlagen",
|
||||
"message": "Eine Änderung konnte nicht übernommen werden ({reason})."
|
||||
},
|
||||
"time_approval_requested": {
|
||||
"title": "Zeit zur Freigabe: {number}",
|
||||
"message": "{actor} hat eine Zeit zu {number} nachgetragen oder eine Korrektur beantragt."
|
||||
},
|
||||
"time_approved": {
|
||||
"title": "Zeit freigegeben: {number}",
|
||||
"message": "{actor} hat Ihre Zeit zu {number} freigegeben."
|
||||
},
|
||||
"time_rejected": {
|
||||
"title": "Zeit abgelehnt: {number}",
|
||||
"message": "{actor} hat Ihre Zeit zu {number} abgelehnt: {reason}"
|
||||
}
|
||||
},
|
||||
"fallback": {
|
||||
"unknown": "unbekannt",
|
||||
|
||||
Reference in New Issue
Block a user