Назначение
Справочник тенантов для автокомплита. Возвращает ограниченный набор полей (TenantId, Type, Inn, Ogrn, Name) с фильтрацией по термину и пагинацией.
Цели
- Поиск тенантов по термину (OR Contains по ContactEmail, ContactPhoneNumber, Inn, Ogrn, Kpp, Name)
- Ограничение количества записей для UI автокомплита
- Сортировка по дате создания (DESC)
Query: LookupTenantsListQuery
Входные данные
| Поле | Тип | Обязательное | Описание |
|---|
| Term | string? | Нет | Поисковый термин (OR Contains по ContactEmail, ContactPhoneNumber, Inn, Ogrn, Kpp, Name) |
| Paging | PagingQuery | Да | Постраничная навигация |
Result: LookupTenantsListQueryResult
| Поле | Тип | Обязательное | Описание |
|---|
| Entries | PagingResult<LookupTenantsListQueryResultEntry> | Да | Список тенантов с пагинацией |
ResultEntry: LookupTenantsListQueryResultEntry
| Поле | Тип | Обязательное | Описание |
|---|
| TenantId | Guid | Да | Идентификатор тенанта |
| Type | TenantType | Да | Тип тенанта |
| Inn | string | Да | ИНН |
| Ogrn | string | Да | ОГРН |
| Name | string | Да | Название юр. лица |
Бизнес-логика
Основной сценарий
- Вызвать
tenantEntityRepository.Filter с BuildQuery и сортировкой по CreatedAt (DESC).
- BuildQuery: при непустом Term — OR Contains по ContactEmail, ContactPhoneNumber, LegalEntity.Inn, LegalEntity.Ogrn, LegalEntity.Kpp, LegalEntity.Name (ToLower).
- Сформировать Entries из TenantEntity.
- Вернуть результат.
Альтернативные сценарии
- Ошибок не предусмотрено: пустой результат при отсутствии совпадений.
Диаграмма алгоритма
Связанные сущности
API
Admin API: LookupTenantsList