feat(admin-ui): поиск справочников + счётчик активных записей
Backend: - DictionaryRecordRepository.countActiveGroupedByDictionary — один GROUP BY по всем справочникам с фильтром по scope, без N+1. - DictionaryResponse.recordCount (nullable) + factory from(d, count). - DictionaryDefinitionController передаёт счётчики в list/get, фильтрованные по currentScopes() пользователя. Frontend: - SearchInput над сеткой карточек, client-side filter по name/displayName/description (case-insensitive, useDeferredValue). - Badge "N записей" (i18n plural ru/en) в углу карточки. - "Показано N из M" рядом с поиском. - EmptyState когда поиск пустой.
This commit is contained in:
@@ -61,6 +61,13 @@ i18n
|
||||
'outbox.dlq.empty': 'DLQ пуста — все события публикуются успешно',
|
||||
'header.scope': 'Доступный scope',
|
||||
'dict.list.subtitle': 'Каталоги НСИ ЦУОД ОДХ',
|
||||
'dict.list.search.placeholder': 'Поиск по названию, коду или описанию',
|
||||
'dict.list.search.empty': 'Ничего не найдено',
|
||||
'dict.list.found': 'Показано {{shown}} из {{total}}',
|
||||
'dict.list.recordCount_one': '{{count}} запись',
|
||||
'dict.list.recordCount_few': '{{count}} записи',
|
||||
'dict.list.recordCount_many': '{{count}} записей',
|
||||
'dict.list.recordCount_other': '{{count}} записей',
|
||||
'dict.empty': 'В этом справочнике пока нет записей',
|
||||
'dict.col.businessKey': 'Бизнес-ключ',
|
||||
'dict.col.scope': 'Scope',
|
||||
@@ -227,6 +234,11 @@ i18n
|
||||
'outbox.dlq.empty': 'DLQ empty — all events publish successfully',
|
||||
'header.scope': 'Allowed scope',
|
||||
'dict.list.subtitle': 'Reference data catalogues',
|
||||
'dict.list.search.placeholder': 'Search by name, code or description',
|
||||
'dict.list.search.empty': 'Nothing found',
|
||||
'dict.list.found': 'Showing {{shown}} of {{total}}',
|
||||
'dict.list.recordCount_one': '{{count}} record',
|
||||
'dict.list.recordCount_other': '{{count}} records',
|
||||
'dict.empty': 'No records in this dictionary yet',
|
||||
'dict.col.businessKey': 'Business key',
|
||||
'dict.col.scope': 'Scope',
|
||||
|
||||
Reference in New Issue
Block a user