inventory.json 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. {
  2. "searchPlaceholder": "Rechercher des pièces...",
  3. "categoryPlaceholder": "Catégorie",
  4. "allCategories": "Toutes les catégories",
  5. "applyMarkup": "Appliquer la marge",
  6. "addPart": "Ajouter une pièce",
  7. "table": {
  8. "partNumber": "N° pièce",
  9. "name": "Nom",
  10. "category": "Catégorie",
  11. "inStock": "En stock",
  12. "unitCost": "Coût unitaire",
  13. "sellPrice": "Prix de vente",
  14. "supplier": "Fournisseur",
  15. "location": "Emplacement",
  16. "low": "Bas",
  17. "barcode": "Code-barres"
  18. },
  19. "empty": {
  20. "noMatch": "Aucune pièce ne correspond à votre recherche.",
  21. "noParts": "Aucune pièce dans l'inventaire pour l'instant.",
  22. "noLowStock": "Rien n'est actuellement sous son seuil de réapprovisionnement.",
  23. "noReorderPoints": "Aucun seuil n'est défini, donc aucune pièce ne peut être considérée comme basse.",
  24. "configureReorderPoints": "Définir un seuil par défaut"
  25. },
  26. "actions": {
  27. "edit": "Modifier",
  28. "delete": "Supprimer",
  29. "details": "Détails et historique"
  30. },
  31. "deletePart": {
  32. "title": "Supprimer la pièce",
  33. "description": "Supprimer \"{name}\" de l'inventaire ? Cette action est irréversible.",
  34. "confirm": "Supprimer"
  35. },
  36. "bulkDelete": {
  37. "title": "Supprimer les pièces sélectionnées",
  38. "description": "Supprimer {count, plural, one {# pièce} other {# pièces}} de l'inventaire ? Cette action est irréversible.",
  39. "confirm": "Supprimer",
  40. "selected": "{count, plural, one {# pièce sélectionnée} other {# pièces sélectionnées}}",
  41. "clearSelection": "Effacer",
  42. "deleteSelected": "Supprimer ({count})",
  43. "success": "{count, plural, one {# pièce supprimée} other {# pièces supprimées}}"
  44. },
  45. "markup": {
  46. "title": "Appliquer la marge à toutes les pièces",
  47. "multiplierLabel": "Multiplicateur de marge",
  48. "description": "Le prix de vente sera défini à coût x {multiplier} pour les {count} pièces.",
  49. "percentage": "({percent}% de marge)",
  50. "cancel": "Annuler",
  51. "apply": "Appliquer",
  52. "overrideExisting": "Remplacer les prix de vente existants",
  53. "overrideExistingHint": "Toutes les pièces seront mises à jour, y compris celles ayant déjà un prix de vente.",
  54. "skipExistingHint": "Seules les pièces sans prix de vente seront mises à jour."
  55. },
  56. "errors": {
  57. "multiplierPositive": "Le multiplicateur doit être supérieur à 0",
  58. "deleteFailed": "Impossible de supprimer la pièce",
  59. "applyFailed": "Impossible d'appliquer la marge",
  60. "saveFailed": "Impossible d'enregistrer la pièce",
  61. "error": "Erreur"
  62. },
  63. "scanBarcode": "Scanner",
  64. "barcodeScan": {
  65. "title": "Pièce scannée",
  66. "notFound": "Aucune pièce trouvée pour le code-barres \"{barcode}\"",
  67. "createNew": "Créer une nouvelle pièce",
  68. "addStock": "Ajouter au stock",
  69. "editPart": "Modifier la pièce",
  70. "currentStock": "Stock actuel : {quantity}",
  71. "addedStock": "{amount} ajoutés au stock",
  72. "customAmount": "Qté...",
  73. "scanParts": "Scanner des pièces"
  74. },
  75. "form": {
  76. "editPart": "Modifier la pièce",
  77. "addNewPart": "Ajouter une nouvelle pièce",
  78. "supplierLink": "Lien fournisseur",
  79. "supplierLinkPlaceholder": "https://fournisseur.com/produit/...",
  80. "fetch": "Récupérer",
  81. "fetchFailed": "Échec de la récupération",
  82. "fetchError": "Impossible de récupérer les métadonnées de l'URL",
  83. "image": "Image",
  84. "dropOrClick": "Déposez une image ou cliquez",
  85. "replace": "Remplacer",
  86. "upload": "Télécharger",
  87. "camera": "Caméra",
  88. "aiAnalyze": "IA Auto-remplir",
  89. "aiAnalyzing": "Analyse de l'image...",
  90. "aiAnalyzeSuccess": "Champs remplis depuis l'image",
  91. "aiAnalyzeFailed": "Impossible d'analyser l'image",
  92. "imageUploading": "Téléchargement de l'image...",
  93. "imageUploaded": "Image téléchargée",
  94. "imageUploadFailed": "Impossible de télécharger l'image",
  95. "imageTypeError": "Seules les images JPEG, PNG, WebP et AVIF sont autorisées",
  96. "imageSizeError": "L'image doit faire moins de 5 Mo",
  97. "partNumber": "Numéro de pièce",
  98. "partNumberPlaceholder": "BRK-001",
  99. "barcode": "Code-barres",
  100. "barcodePlaceholder": "123456789012",
  101. "nameLabel": "Nom *",
  102. "namePlaceholder": "Jeu de plaquettes de frein",
  103. "category": "Catégorie",
  104. "categoryPlaceholder": "Sélectionner une catégorie...",
  105. "categorySearch": "Rechercher ou créer...",
  106. "categoryCreate": "Créer \"{name}\"",
  107. "categoryNone": "Aucune catégorie",
  108. "location": "Emplacement",
  109. "locationPlaceholder": "Étagère A-3",
  110. "quantity": "Quantité",
  111. "minQty": "Qté min.",
  112. "unit": "Unité",
  113. "unitPlaceholder": "pcs, l, kg...",
  114. "unitSuggestions": "pcs,jeu",
  115. "unitSearch": "Rechercher ou saisir...",
  116. "unitCreate": "Utiliser \"{name}\"",
  117. "unitGroupCount": "Comptage",
  118. "unitGroupMetric": "Métrique",
  119. "unitGroupImperial": "Impérial",
  120. "unitCost": "Coût unitaire",
  121. "sellPrice": "Prix de vente",
  122. "supplier": "Fournisseur",
  123. "supplierPlaceholder": "AutoParts SARL",
  124. "supplierPhone": "Téléphone fournisseur",
  125. "supplierPhonePlaceholder": "(555) 123-4567",
  126. "supplierEmail": "E-mail fournisseur",
  127. "supplierEmailPlaceholder": "orders@autoparts.com",
  128. "description": "Description",
  129. "descriptionPlaceholder": "Description de la pièce...",
  130. "cancel": "Annuler",
  131. "saveChanges": "Enregistrer les modifications",
  132. "addPart": "Ajouter une pièce"
  133. },
  134. "openMenu": "Ouvrir le menu",
  135. "history": {
  136. "title": "Historique du stock",
  137. "description": "Toutes les modifications enregistrées de {name}, les plus récentes d'abord.",
  138. "empty": "Aucun mouvement de stock enregistré.",
  139. "when": "Date",
  140. "change": "Variation",
  141. "balance": "Solde",
  142. "usedOn": "Utilisé sur",
  143. "by": "Par",
  144. "reasons": {
  145. "service_record": "Ordre de travail",
  146. "service_record_deleted": "Ordre supprimé",
  147. "quote_conversion": "Devis converti",
  148. "manual_adjustment": "Ajustement manuel",
  149. "bulk_markup": "Marge en masse"
  150. },
  151. "backToInventory": "Inventaire",
  152. "reason": "Motif",
  153. "allReasons": "Tous les motifs"
  154. },
  155. "suggestions": {
  156. "title": "Depuis votre stock",
  157. "inStock": "{quantity} en stock",
  158. "outOfStock": "En rupture de stock",
  159. "onBackorder": "En réapprovisionnement ({count})"
  160. }
  161. }