фронт поправлен

This commit is contained in:
gorbenko.pavel
2026-07-31 12:51:48 +05:00
parent fdd3787e43
commit 06b52c5186
25 changed files with 573 additions and 45 deletions
+34 -2
View File
@@ -4,7 +4,7 @@
//
// Строки с подстановкой оформлены функциями, чтобы шаблон и данные не разъезжались.
import { HeadType, ProjectRole, RouteStepStatus, RouteType } from './models';
import { ComparisonOperator, HeadType, ProjectRole, RouteStepStatus, RouteType } from './models';
import { pluralRu } from './utils/plural';
// ---- Подписи enum'ов ----
@@ -38,6 +38,13 @@ export const headTypeLabels: Record<HeadType, string> = {
[HeadType.DirectorTansu]: 'Директор Tansu'
};
export const comparisonOperatorLabels: Record<ComparisonOperator, string> = {
[ComparisonOperator.None]: '—',
[ComparisonOperator.GreaterThan]: 'Больше (>)',
[ComparisonOperator.LessThan]: 'Меньше (<)',
[ComparisonOperator.Equal]: 'Равно (=)'
};
export const texts = {
common: {
home: 'Главная',
@@ -96,6 +103,7 @@ export const texts = {
emptyList: 'Типов заявок пока нет.',
columnName: 'Название',
columnPageUrl: 'Url страницы',
columnSection: 'Раздел',
createTitle: 'Новый тип заявки',
editTitle: 'Редактировать тип заявки',
nameLabel: 'Название',
@@ -103,7 +111,19 @@ export const texts = {
pageUrlLabel: 'Url страницы',
pageUrlHint: 'Страница формы заявки на портале.',
pageUrlPlaceholder: '/pages/business-trip',
validationRequired: 'Заполните имя и Url страницы.',
sectionLabel: 'Раздел',
sectionPlaceholder: 'Например, Кадры',
siteUrlLabel: 'Сайт SharePoint',
siteUrlHint: 'Сайт, где живёт список — например, https://tnsukz.sharepoint.com/sites/hrm.',
siteUrlPlaceholder: 'https://tnsukz.sharepoint.com/sites/hrm',
listNameLabel: 'Список SharePoint',
listNameHint: 'Источник полей (field_name) для условий в шагах маршрута.',
listNamePlaceholder: 'Сначала укажите сайт SharePoint',
listNameLoading: 'Загрузка списков сайта...',
listNameEmpty: 'На этом сайте нет доступных списков',
listNameError: (message: string): string => `Не удалось получить списки сайта: ${message}`,
validationRequired: 'Заполните имя, Url страницы и раздел.',
validationListReference: 'Сайт SharePoint и список должны быть заполнены оба вместе или не заполнены вовсе.',
deleteTitle: 'Удалить тип заявки?',
deleteText: (name: string): string =>
`Тип «${name}» будет удалён безвозвратно. Связанные маршруты могут перестать разрешаться.`
@@ -187,9 +207,21 @@ export const texts = {
headTypeLabel: 'Тип руководителя',
reassignLabel: 'Переназначение',
reassignCheckbox: 'Разрешить переназначать другим согласующим',
conditionLabel: 'Условие видимости шага',
conditionCheckbox: 'Показывать шаг только при выполнении условия',
conditionDisabledHint: 'Недоступно: у типа заявки не указан список SharePoint (list_name).',
conditionFieldNameLabel: 'Поле списка',
conditionFieldNamePlaceholder: 'Выберите столбец списка',
conditionFieldNameLoading: 'Загрузка столбцов списка...',
conditionFieldNameEmpty: 'В списке нет доступных столбцов',
conditionFieldNameError: (message: string): string => `Не удалось получить столбцы списка: ${message}`,
conditionOperationLabel: 'Оператор сравнения',
conditionValueLabel: 'Значение',
conditionValuePlaceholder: 'Например, 1000',
validationOrderNo: 'Порядковый номер шага обязателен.',
validationExecutor: 'Выберите сотрудника-исполнителя.',
validationPosition: 'Укажите должность.',
validationCondition: 'Заполните поле списка, оператор и значение условия.',
deleteTitle: 'Удалить шаг?',
deleteText: (orderNo: number): string => `Шаг #${orderNo} будет удалён безвозвратно.`
},