| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318 |
- {
- "page": {
- "notFound": "Serviceeintrag nicht gefunden",
- "updated": "Serviceeintrag aktualisiert",
- "failedUpdate": "Serviceeintrag konnte nicht aktualisiert werden",
- "deleteTitle": "Serviceeintrag löschen",
- "deleteDescription": "Dies löscht diesen Serviceeintrag und alle zugehörigen Daten dauerhaft. Dies kann nicht rückgängig gemacht werden.",
- "deleted": "Serviceeintrag gelöscht",
- "failedDelete": "Löschen fehlgeschlagen",
- "datesExpiredTitle": "Rechnungsdaten abgelaufen",
- "datesExpiredDescription": "Das Rechnungsdatum oder Fälligkeitsdatum ist überschritten. Möchten Sie die Daten vor dem Fortfahren aktualisieren?",
- "datesExpiredUpdate": "Daten aktualisieren und fortfahren",
- "datesExpiredProceed": "Ohne Änderungen fortfahren",
- "datesExpiredSetToday": "Auf heute setzen",
- "customFieldsInvalid": "Bitte füllen Sie alle erforderlichen benutzerdefinierten Felder aus",
- "customFieldsSaveFailed": "Benutzerdefinierte Felder konnten nicht gespeichert werden"
- },
- "header": {
- "tabs": {
- "details": "Details",
- "images": "Bilder",
- "video": "Video",
- "documents": "Dokumente",
- "statusReports": "Statusberichte"
- },
- "save": "Speichern",
- "pdf": "PDF",
- "email": "E-Mail",
- "share": "Teilen",
- "delete": "Löschen",
- "unpaid": "Unbezahlt",
- "unsavedChanges": "Nicht gespeicherte Änderungen",
- "saved": "Gespeichert"
- },
- "basicInfo": {
- "title": "Grundlegende Informationen",
- "invoiceDetails": "Rechnungsdetails",
- "customerInfo": "Kunde & Fahrzeug",
- "paid": "Bezahlt",
- "markPaid": "Als bezahlt markieren",
- "markUnpaid": "Als unbezahlt markieren",
- "vehicle": "Fahrzeug",
- "open": "Öffnen",
- "customer": "Kunde",
- "titleLabel": "Titel *",
- "titlePlaceholder": "Ölwechsel",
- "date": "Datum",
- "type": "Typ",
- "mileage": "Kilometerstand",
- "mileageMarine": "Betriebsstunden",
- "status": "Status",
- "technician": "Techniker",
- "invoiceNumber": "Rechnungsnummer",
- "invoiceDate": "Rechnungsdatum",
- "invoiceDueDate": "Fälligkeitsdatum",
- "typeOptions": {
- "maintenance": "Wartung",
- "repair": "Reparatur",
- "upgrade": "Verbesserung",
- "inspection": "Überprüfung"
- },
- "statusOptions": {
- "pending": "Ausstehend",
- "in_progress": "In Bearbeitung",
- "waiting_parts": "Warten auf Teile",
- "completed": "Abgeschlossen"
- },
- "searchVehicles": "Fahrzeuge durchsuchen...",
- "noVehicleFound": "Kein Fahrzeug gefunden.",
- "techPicker": {
- "placeholder": "Wählen oder geben Sie einen Namen ein...",
- "searchPlaceholder": "Durchsuchen oder Namen eingeben...",
- "useCustom": "\"{search}\" verwenden",
- "typePrompt": "Geben Sie einen Namen ein...",
- "boardTechnicians": "Board-Techniker",
- "teamMembers": "Teamitglieder"
- }
- },
- "parts": {
- "title": "Teile",
- "fromInventory": "Aus Bestand",
- "addPart": "Teil hinzufügen",
- "partNumber": "Teil #",
- "name": "Name",
- "qty": "Menge",
- "unitPrice": "Stückpreis",
- "total": "Gesamt",
- "namePlaceholder": "Name *",
- "subtotal": "Teilesumme: {amount}",
- "inventoryTitle": "Teil aus Bestand auswählen",
- "searchInventory": "Bestand durchsuchen...",
- "inStock": "{quantity} auf Lager",
- "noInventory": "Keine Bestandteile gefunden.",
- "scanBarcode": "Scannen",
- "scanTitle": "Barcode scannen",
- "partFound": "\"{name}\" aus dem Lager hinzugefügt",
- "partNotFound": "Kein Teil für Barcode \"{barcode}\" gefunden"
- },
- "labor": {
- "title": "Arbeit",
- "addLabor": "Arbeit hinzufügen",
- "fromPresets": "Aus Vorlagen",
- "description": "Beschreibung",
- "hours": "Stunden",
- "rate": "Satz ({currency}/Std.)",
- "total": "Gesamt",
- "descriptionPlaceholder": "Beschreibung *",
- "subtotal": "Arbeitssumme: {amount}",
- "addService": "Add Service",
- "qty": "Qty",
- "qtyOrHours": "Unit / Hours",
- "hourlyTag": "HR",
- "serviceTag": "SVC",
- "switchToHourly": "Switch to hourly pricing",
- "switchToService": "Switch to service pricing",
- "switchToHourlyHint": "Hourly: priced by hours worked (hours 00d7 rate/hr). Click to switch.",
- "switchToServiceHint": "Service: priced as a flat fee per unit. Click to switch."
- },
- "totals": {
- "title": "Summen",
- "parts": "Teile",
- "labor": "Arbeit",
- "subtotal": "Zwischensumme",
- "discount": "Rabatt",
- "discountNone": "Keine",
- "discountPercentage": "Prozentsatz",
- "discountFixed": "Festbetrag",
- "tax": "Steuern",
- "total": "Gesamt"
- },
- "notes": {
- "title": "Notizen",
- "public": "Öffentlich",
- "internal": "Intern",
- "publicPlaceholder": "Notizen sichtbar auf der Rechnung...",
- "internalPlaceholder": "Interne Notizen (nicht auf Rechnung angezeigt)...",
- "publicHelper": "Auf der Rechnung und in gemeinsamen Dokumenten angezeigt",
- "internalHelper": "Nur für Ihr Team sichtbar",
- "aiWrite": "AI Schreiben",
- "aiGenerated": "AI-Notizen erfolgreich generiert",
- "aiGenerateFailed": "AI-Notizen konnten nicht generiert werden",
- "aiDialogTitle": "AI Schreiben",
- "aiDialogDescription": "AI analysiert die Teile und Arbeiten in diesem Serviceeintrag und erstellt eine professionelle Beschreibung. Das Ergebnis wird in den aktuell ausgewählten Notiztyp geschrieben.",
- "aiGenerate": "Generieren",
- "aiOverwriteDescription": "Die aktuelle Notiz hat bereits Inhalt. Sie können ihn ersetzen oder den AI-generierten Text darunter anhängen.",
- "aiOverwriteReplace": "Ersetzen",
- "aiOverwriteAppend": "Anhängen",
- "aiOverwriteCancel": "Abbrechen",
- "aiDontShowAgain": "Nicht mehr anzeigen"
- },
- "invoice": {
- "title": "Rechnungszusammenfassung",
- "parts": "Teile",
- "labor": "Arbeit",
- "subtotal": "Zwischensumme",
- "discount": "Rabatt",
- "tax": "Steuern ({rate}%)",
- "total": "Gesamt",
- "paid": "Bezahlt",
- "balanceDue": "Ausstehend",
- "paidBadge": "BEZAHLT",
- "entityLabel": "Rechnung",
- "emailSubject": "Zahlungsbestätigung"
- },
- "payments": {
- "title": "Zahlungen",
- "markUnpaid": "Als unbezahlt kennzeichnen",
- "markPaid": "Als bezahlt kennzeichnen",
- "recordPayment": "Zahlung aufzeichnen",
- "totalPaid": "Insgesamt bezahlt",
- "amount": "Betrag",
- "date": "Datum",
- "method": "Methode",
- "note": "Notiz",
- "notePlaceholder": "Optionale Notiz",
- "savePayment": "Zahlung speichern",
- "methodOptions": {
- "cash": "Bargeld",
- "card": "Karte",
- "transfer": "Überweisung",
- "other": "Sonstige"
- },
- "recorded": "Zahlung aufgezeichnet",
- "markedPaid": "Als bezahlt gekennzeichnet",
- "markedUnpaid": "Als unbezahlt gekennzeichnet",
- "deleted": "Zahlung gelöscht",
- "failedRecord": "Zahlung konnte nicht aufgezeichnet werden",
- "failedStatus": "Zahlungsstatus konnte nicht aktualisiert werden",
- "failedDelete": "Zahlung konnte nicht gelöscht werden",
- "deleteTitle": "Zahlung löschen",
- "deleteDescription": "Dies entfernt diesen Zahlungseintrag.",
- "failedPdf": "PDF-Rechnung konnte nicht erstellt werden"
- },
- "attachments": {
- "deleteTitle": "Anlage löschen",
- "deleteDescription": "Dies löscht diese Anlage dauerhaft. Dies kann nicht rückgängig gemacht werden.",
- "deleted": "Anlage gelöscht",
- "failedDelete": "Löschen fehlgeschlagen",
- "images": "Bilder ({count})",
- "videos": "Videos ({count})",
- "diagnostics": "Diagnoseberichte ({count})",
- "documents": "Dokumente ({count})"
- },
- "share": {
- "title": "Rechnung teilen",
- "description": "Generieren Sie einen öffentlichen Link, der es jedem ermöglicht, diese Rechnung anzusehen und herunterzuladen, ohne sich anzumelden.",
- "notifyTitle": "{name} benachrichtigen",
- "email": "E-Mail",
- "noEmail": "(keine E-Mail vorhanden)",
- "sms": "SMS",
- "noPhone": "(keine Telefonnummer vorhanden)",
- "sendNotification": "Benachrichtigung senden",
- "revokeLink": "Link widerrufen",
- "generateLink": "Öffentlichen Link generieren",
- "emailSent": "E-Mail gesendet",
- "failedEmail": "E-Mail konnte nicht gesendet werden",
- "smsSent": "SMS gesendet",
- "failedSms": "SMS konnte nicht gesendet werden"
- },
- "sidebar": {
- "vehicle": "Fahrzeug",
- "customer": "Kunde",
- "vin": "FIN: {vin}",
- "mileageAtService": "Kilometerstand bei Service: {mileage} {unit}",
- "engineHoursAtService": "Betriebsstunden bei Service: {mileage} {unit}",
- "sharedLink": {
- "title": "Geteilter Link",
- "sharedOn": "Geteilt am {date}",
- "notViewed": "Noch nicht angesehen",
- "viewedTimes": "{count, plural, one {# Mal} other {# Mal}} angesehen",
- "lastViewed": "Zuletzt {date}",
- "copyLink": "Link kopieren",
- "linkCopied": "Link kopiert"
- }
- },
- "images": {
- "title": "Service-Bilder",
- "dropzone": "Bilder hierher ziehen oder zum Durchsuchen klicken",
- "uploading": "Wird hochgeladen...",
- "formats": "JPG, PNG, WebP — max. 10 MB pro Bild",
- "uploadingImages": "Bilder werden hochgeladen...",
- "limitReached": "Bildlimit erreicht ({count}/{max})",
- "upgradePrompt": "Upgrade Ihren Plan, um mehr Bilder hochzuladen.",
- "onlyAllowed": "Nur JPG, PNG und WebP Bilder sind erlaubt. {names} übersprungen.",
- "onlyUploading": "Es werden nur {count} Bild(er) hochgeladen, um das Limit einzuhalten.",
- "uploadingCount": "{count} Bild(er) werden hochgeladen...",
- "uploadedCount": "{count} Bild(er) hochgeladen",
- "uploadFailed": "Hochladen fehlgeschlagen",
- "deleted": "Bild gelöscht",
- "failedDelete": "Bild konnte nicht gelöscht werden",
- "failedUpdate": "Aktualisierung fehlgeschlagen",
- "description": "Beschreibung...",
- "invoice": "Rechnung"
- },
- "videos": {
- "title": "Service-Videos",
- "dropzone": "Videos hierher ziehen oder zum Durchsuchen klicken",
- "uploading": "Wird hochgeladen...",
- "formats": "MP4, WebM, MOV — max. 10 MB pro Video",
- "uploadingVideos": "Videos werden hochgeladen...",
- "uploadingCount": "{count} Video(s) werden hochgeladen...",
- "uploadedCount": "{count} Video(s) hochgeladen",
- "uploadFailed": "Hochladen fehlgeschlagen",
- "deleted": "Video gelöscht",
- "failedDelete": "Video konnte nicht gelöscht werden",
- "failedUpdate": "Aktualisierung fehlgeschlagen",
- "invoice": "Rechnung"
- },
- "documents": {
- "diagnosticTitle": "Diagnoseberichte",
- "documentsTitle": "Dokumente",
- "dropzone": "Dateien hierher ziehen oder zum Durchsuchen klicken",
- "uploading": "Wird hochgeladen...",
- "diagnosticFormats": "PDF, CSV, TXT — max. 10 MB pro Datei",
- "documentFormats": "PDF, DOCX, XLSX, CSV, TXT — max. 10 MB pro Datei",
- "uploadingReports": "Berichte werden hochgeladen...",
- "uploadingDocuments": "Dokumente werden hochgeladen...",
- "diagnosticLimitReached": "Diagnosebericht-Limit erreicht ({count}/{max})",
- "documentLimitReached": "Dokumenten-Limit erreicht ({count}/{max})",
- "upgradePrompt": "Upgrade Ihren Plan, um mehr hochzuladen.",
- "diagnosticLabel": "Diagnosebericht",
- "documentLabel": "Dokument",
- "limitReachedToast": "{label}-Limit erreicht ({count}/{max}). Upgrade Ihren Plan für mehr.",
- "onlyUploading": "Es werden nur {count} Datei(en) hochgeladen, um das Limit einzuhalten.",
- "uploadingCount": "{count} Datei(en) werden hochgeladen...",
- "uploadedCount": "{count} Datei(en) hochgeladen",
- "uploadFailed": "Hochladen fehlgeschlagen",
- "deleted": "Datei gelöscht",
- "failedDelete": "Datei konnte nicht gelöscht werden",
- "failedUpdate": "Aktualisierung fehlgeschlagen",
- "invoice": "Rechnung"
- },
- "schedule": {
- "title": "Zeitplan",
- "date": "Datum",
- "startTime": "Startzeit",
- "endTime": "Endzeit",
- "technician": "Techniker",
- "selectTechnician": "Techniker auswählen...",
- "searchOrCreate": "Techniker suchen oder erstellen...",
- "createTechnician": "\"{name}\" erstellen",
- "creating": "Erstelle...",
- "failedCreate": "Techniker konnte nicht erstellt werden",
- "addNew": "+ Neu hinzufügen",
- "add": "Hinzufügen",
- "newTechPlaceholder": "Technikername...",
- "assign": "Tafel zuweisen",
- "assigned": "Der Arbeitstafel zugewiesen",
- "failedAssign": "Zuweisung fehlgeschlagen",
- "endBeforeStart": "Endzeit muss nach der Startzeit liegen",
- "failedUpdate": "Zeitplan konnte nicht aktualisiert werden",
- "splitCreated": "Auftrag erstreckt sich über mehrere Tage — Fortsetzung für den nächsten Tag erstellt",
- "platformUsers": "Platform Users",
- "customTechnicians": "Custom",
- "readMore": "Mehr erfahren",
- "setDefaults": "Standardwerte"
- }
- }
|