quotes.json 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. {
  2. "list": {
  3. "statusAll": "Все",
  4. "statusAttention": "Требует внимания",
  5. "statusDraft": "Черновик",
  6. "statusSent": "Отправлено",
  7. "statusAccepted": "Принято",
  8. "statusRejected": "Отклонено",
  9. "statusConverted": "Конвертировано",
  10. "searchPlaceholder": "Поиск предложений...",
  11. "newQuote": "Новое предложение",
  12. "columnQuoteNumber": "Предложение №",
  13. "columnTitle": "Название",
  14. "columnCustomer": "Клиент",
  15. "columnVehicle": "Транспортное средство",
  16. "columnStatus": "Статус",
  17. "columnDate": "Дата",
  18. "columnTotal": "Итого",
  19. "noQuotes": "Предложения не найдены."
  20. },
  21. "page": {
  22. "quote": "Предложение",
  23. "save": "Сохранить",
  24. "pdf": "PDF",
  25. "email": "Эл. почта",
  26. "share": "Поделиться",
  27. "delete": "Удалить",
  28. "deleteTitle": "Удалить предложение",
  29. "deleteDescription": "Это предложение будет безвозвратно удалено.",
  30. "saved": "Предложение сохранено",
  31. "unsavedChanges": "Несохранённые изменения",
  32. "saveFirst": "Сначала сохраните изменения",
  33. "failedSave": "Не удалось сохранить предложение",
  34. "failedDelete": "Не удалось удалить",
  35. "failedPdf": "Не удалось сгенерировать PDF",
  36. "selectVehicle": "Выберите транспортное средство",
  37. "convertTitle": "Конвертировать предложение в заказ-наряд",
  38. "convertDescription": "Будет создана новая запись обслуживания (заказ-наряд) из этого предложения. Выберите транспортное средство для заказ-наряда.",
  39. "convertChoiceDescription": "Выберите транспортное средство, затем создайте новый заказ-наряд из этого предложения или добавьте его в уже открытый.",
  40. "convertNew": "Создать новый заказ-наряд",
  41. "convertExisting": "Добавить в существующий заказ-наряд",
  42. "convertExistingHint": "Запчасти, работы и файлы из предложения добавляются в заказ-наряд. То, что в нём уже есть, остаётся без изменений.",
  43. "convertNoOpenWorkOrders": "У этого транспортного средства нет открытых заказ-нарядов.",
  44. "convertSelectWorkOrder": "Выберите заказ-наряд",
  45. "convertAdd": "Добавить в заказ-наряд",
  46. "convertConflicts": {
  47. "heading": "Перед добавлением решите, что сохраняет заказ-наряд",
  48. "checking": "Сверяем предложение с заказ-нарядом...",
  49. "unanswered": "Выберите, что сохраняет заказ-наряд, прежде чем добавить предложение.",
  50. "discount": {
  51. "title": "Скидка",
  52. "summary": "У заказ-наряда скидка {percent}%, сейчас это {jobAmount}. В предложении скидка {quoteAmount}.",
  53. "keepJob": "Оставить скидку {percent}% и отбросить {quoteAmount} из предложения",
  54. "combine": "Превратить {percent}% в {jobAmount} и добавить {quoteAmount} из предложения, всего {total}"
  55. },
  56. "tax": {
  57. "title": "Налог",
  58. "summary": "Заказ-наряд рассчитан с {job}. Предложение было рассчитано с {quote}.",
  59. "keepJob": "Оставить налог заказ-наряда. Строки предложения переносятся по предложенным суммам.",
  60. "useQuote": "Перевести заказ-наряд на налог предложения. Всё в нём пересчитывается.",
  61. "inclusive": "{rate}% налога включено в строки",
  62. "exclusive": "{rate}% налога начисляется сверху",
  63. "components": "{rate}% налога ({names})"
  64. },
  65. "warranty": {
  66. "title": "Гарантия",
  67. "summary": "В заказ-наряде указано {job}. В предложении, принятом клиентом, указано {quote}.",
  68. "keepJob": "Оставить гарантию заказ-наряда",
  69. "useQuote": "Использовать гарантию предложения, как её принял клиент",
  70. "none": "ничего о гарантии",
  71. "notIncluded": "без гарантии мастерской",
  72. "included": "гарантия включена",
  73. "includedWithTerms": "гарантия включена, {terms}",
  74. "months": "{count, plural, one {# месяц} few {# месяца} other {# месяцев}}",
  75. "mileage": "{count} {unit}"
  76. }
  77. },
  78. "convert": "Конвертировать",
  79. "convertToWorkOrder": "Конвертировать в заказ-наряд",
  80. "cancel": "Отмена",
  81. "failedConvert": "Не удалось конвертировать",
  82. "changesRequested": "Запрошены изменения",
  83. "quoteAccepted": "Предложение принято",
  84. "markResolved": "Отметить как решённое",
  85. "responseResolved": "Ответ клиента обработан",
  86. "entityLabel": "Предложение",
  87. "tabs": {
  88. "details": "Детали",
  89. "images": "Изображения",
  90. "documents": "Документы"
  91. },
  92. "customFieldsInvalid": "Заполните все обязательные пользовательские поля",
  93. "customFieldsSaveFailed": "Не удалось сохранить пользовательские поля"
  94. },
  95. "form": {
  96. "newQuote": "Новое предложение",
  97. "editQuote": "Редактировать предложение",
  98. "cancel": "Отмена",
  99. "createQuote": "Создать предложение",
  100. "updateQuote": "Обновить предложение",
  101. "created": "Предложение создано",
  102. "updated": "Предложение обновлено",
  103. "failedCreate": "Не удалось создать предложение",
  104. "failedUpdate": "Не удалось обновить предложение"
  105. },
  106. "parts": {
  107. "title": "Запчасти",
  108. "addPart": "Добавить запчасть",
  109. "partNumber": "Арт. №",
  110. "category": "Категория",
  111. "name": "Название",
  112. "namePlaceholder": "Название *",
  113. "qty": "Кол-во",
  114. "unitPrice": "Цена за ед.",
  115. "total": "Итого",
  116. "subtotal": "Подитог запчастей: {amount}",
  117. "deleteRow": "Удалить строку",
  118. "excludeFromTotal": "Не включать в итог",
  119. "addFromInventory": "Со склада",
  120. "unitCost": "Себестоимость",
  121. "markupPercent": "Наценка %",
  122. "nameMissingHint": "Строки без названия детали не сохраняются."
  123. },
  124. "labor": {
  125. "title": "Работа",
  126. "addLabor": "Добавить работу",
  127. "fromPresets": "Из шаблонов",
  128. "description": "Описание",
  129. "descriptionPlaceholder": "Описание *",
  130. "hours": "Часы",
  131. "rate": "Ставка ({currency}/ч)",
  132. "total": "Итого",
  133. "subtotal": "Подитог работ: {amount}",
  134. "addService": "Добавить сервис",
  135. "qty": "Кол-во",
  136. "qtyOrHours": "Услуга / Часы",
  137. "hourlyTag": "н/ч",
  138. "serviceTag": "усл.",
  139. "hourlyHint": "Почасовая: оценка по нормо-часам (часы × ставка/час). Нажмите для изменения.",
  140. "serviceHint": "Услуга: фиксированная цена за единицу. Нажмите для изменения.",
  141. "deleteRow": "Удалить строку",
  142. "excludeFromTotal": "Не включать в итог"
  143. },
  144. "notes": {
  145. "title": "Заметки",
  146. "public": "Публичные",
  147. "internal": "Внутренние",
  148. "publicPlaceholder": "Описание предложения, видимое клиенту...",
  149. "internalPlaceholder": "Внутренние заметки (не видны клиенту)...",
  150. "publicHelper": "Отображается в документе предложения",
  151. "internalHelper": "Видно только вашей команде"
  152. },
  153. "sidebar": {
  154. "sharedLink": {
  155. "title": "Общая ссылка",
  156. "sharedOn": "Опубликовано {date}",
  157. "notViewed": "Ещё не просмотрено",
  158. "viewedTimes": "Просмотрено {count, plural, one {# раз} few {# раза} other {# раз}}",
  159. "lastViewed": "Последний раз {date}",
  160. "copyLink": "Копировать ссылку",
  161. "linkCopied": "Ссылка скопирована"
  162. }
  163. },
  164. "details": {
  165. "title": "Детали предложения",
  166. "titleLabel": "Название *",
  167. "titlePlaceholder": "Смета на ремонт автомобиля",
  168. "status": "Статус",
  169. "statusDraft": "Черновик",
  170. "statusSent": "Отправлено",
  171. "statusAccepted": "Принято",
  172. "statusRejected": "Отклонено",
  173. "validUntil": "Действительно до",
  174. "viewInspection": "Просмотреть связанный осмотр",
  175. "vehicle": "Транспортное средство",
  176. "customer": "Клиент",
  177. "selectVehicle": "Выберите транспортное средство...",
  178. "selectCustomer": "Выберите клиента...",
  179. "none": "Нет",
  180. "clearVehicle": "Убрать автомобиль",
  181. "clearCustomer": "Убрать клиента"
  182. },
  183. "totals": {
  184. "title": "Итоги",
  185. "parts": "Запчасти",
  186. "labor": "Работа",
  187. "subtotal": "Подитог",
  188. "subtotalInclTax": "Подитог (с НДС)",
  189. "discount": "Скидка",
  190. "discountNone": "Нет",
  191. "discountPercentage": "Процент",
  192. "discountFixed": "Фиксированная",
  193. "tax": "Налог",
  194. "taxIncluded": "Налог (вкл.)",
  195. "total": "Итого",
  196. "inclusiveModeHint": "Цены позиций вводятся с НДС. Итоги показывают разбивку: без НДС + НДС."
  197. },
  198. "shareDialog": {
  199. "title": "Поделиться предложением",
  200. "description": "Создайте публичную ссылку, по которой любой сможет просмотреть и скачать это предложение без входа в систему.",
  201. "notifyTitle": "Уведомить {name}",
  202. "email": "Эл. почта",
  203. "noEmail": "(эл. почта не указана)",
  204. "sms": "SMS",
  205. "noPhone": "(телефон не указан)",
  206. "sendNotification": "Отправить уведомление",
  207. "revokeLink": "Отозвать ссылку",
  208. "generateLink": "Создать публичную ссылку",
  209. "emailSent": "Письмо отправлено",
  210. "failedEmail": "Не удалось отправить письмо",
  211. "smsSent": "SMS отправлено",
  212. "failedSms": "Не удалось отправить SMS",
  213. "copyLink": "Копировать ссылку"
  214. },
  215. "images": {
  216. "title": "Изображения предложения",
  217. "dropzone": "Перетащите изображения сюда или нажмите для выбора",
  218. "uploading": "Загрузка...",
  219. "formats": "JPG, PNG, WebP — макс. 10МБ каждое",
  220. "uploadingImages": "Загрузка изображений...",
  221. "limitReached": "Лимит изображений достигнут ({count}/{max})",
  222. "upgradePrompt": "Обновите тариф для загрузки дополнительных изображений.",
  223. "onlyAllowed": "Допускаются только изображения JPG, PNG и WebP. {names} пропущены.",
  224. "onlyUploading": "Загружается только {count} изображений для соблюдения лимита.",
  225. "uploadingCount": "Загрузка изображений: {count}...",
  226. "uploadedCount": "Загружено изображений: {count}",
  227. "uploadFailed": "Загрузка не удалась",
  228. "failedUploadFile": "Не удалось загрузить {name}",
  229. "failedSaveFile": "Не удалось сохранить {name}",
  230. "deleted": "Изображение удалено",
  231. "failedDelete": "Не удалось удалить изображение",
  232. "failedUpdate": "Не удалось обновить",
  233. "description": "Описание...",
  234. "pdf": "PDF"
  235. },
  236. "documents": {
  237. "title": "Документы",
  238. "dropzone": "Перетащите файлы сюда или нажмите для выбора",
  239. "uploading": "Загрузка...",
  240. "formats": "PDF, CSV, TXT — макс. 10МБ каждый",
  241. "uploadingDocuments": "Загрузка документов...",
  242. "limitReached": "Лимит документов достигнут ({count}/{max})",
  243. "upgradePrompt": "Обновите тариф для загрузки дополнительных файлов.",
  244. "onlyUploading": "Загружается только {count} файлов для соблюдения лимита.",
  245. "uploadingCount": "Загрузка файлов: {count}...",
  246. "uploadedCount": "Загружено файлов: {count}",
  247. "uploadFailed": "Загрузка не удалась",
  248. "failedUploadFile": "Не удалось загрузить {name}",
  249. "failedSaveFile": "Не удалось сохранить {name}",
  250. "deleted": "Файл удалён",
  251. "failedDelete": "Не удалось удалить файл",
  252. "failedUpdate": "Не удалось обновить",
  253. "pdf": "PDF"
  254. },
  255. "statusLabels": {
  256. "draft": "Черновик",
  257. "sent": "Отправлено",
  258. "accepted": "Принято",
  259. "rejected": "Отклонено",
  260. "expired": "Истекло",
  261. "converted": "Конвертировано",
  262. "changes_requested": "Запрошены изменения"
  263. }
  264. }