Перейти к содержанию

Поиск и фильтрация

Раздел описывает глобальный поиск, фильтрацию в списках, сортировку и пагинацию.


Глобальный поиск по проекту

Строка поиска в шапке (рядом с селектором проекта).
Контекст = текущий проект.

Поиск по:
  ├── Сделки: название, лёгкие контактные поля (имя, телефон, email)
  ├── Контакты: имя, телефон, email
  ├── Компании: название, ИНН
  ├── Продажи: номер продажи, название
  ├── Активности: название
  └── Продукты: название

Поведение:
  ├── Поиск начинается после ввода ≥ 2 символов
  ├── Результаты группируются по типу сущности
  ├── Макс. 5 результатов на тип, ссылка «Показать все»
  ├── По клику → переход в карточку сущности
  └── Поиск по подстроке (contains), регистронезависимый

Фильтрация в списках

Каждый список (сделки, контакты, компании, продажаы, активности) имеет панель фильтров.

Сделки (/p/:pid/deals)

Фильтры:
  ├── Стадия воронки (multi-select)
  ├── Воронка (если несколько)
  ├── Ответственный (multi-select)
  ├── Источник (multi-select)
  ├── Дата создания (range)
  ├── Сумма (от — до)
  ├── На стадии более N дней
  ├── Без владельца (требует переназначения)
  └── Передана из проекта (да/нет)

Контакты (/p/:pid/contacts)

Фильтры:
  ├── Компания (multi-select)
  ├── Дата создания (range)
  ├── Создатель (multi-select)
  └── Есть сделки (да/нет)

Компании (/p/:pid/companies)

Фильтры:
  ├── Дата создания (range)
  ├── Создатель (multi-select)
  └── Есть сделки (да/нет)

Продажи (/p/:pid/orders)

Фильтры:
  ├── Тип продажи (multi-select)
  ├── Этап (multi-select)
  ├── Ответственный (multi-select)
  ├── Статус ошибки DLQ (да/нет)
  ├── Дата создания (range)
  └── Связанная сделка

Активности (/p/:pid/activities)

Фильтры:
  ├── Тип (задача / звонок / встреча / заметка)
  ├── Статус (запланирована / в работе / завершена / отменена)
  ├── Просроченные (да/нет)
  ├── Ответственный (multi-select)
  ├── Срок (range)
  └── Привязанная сущность

Сортировка

Все списки поддерживают сортировку по клику на заголовок колонки:

Поведение:
  ├── Клик → сортировка по возрастанию (▲)
  ├── Повторный клик → по убыванию (▼)
  ├── Третий клик → сброс (по умолчанию)
  └── Одновременно только одна колонка сортировки

Сортировка по умолчанию:
  ├── Сделки: по дате создания (новые сверху)
  ├── Контакты/Компании: по имени/названию (A→Z)
  ├── Продажи: по дате создания (новые сверху)
  └── Активности: по сроку (ближайшие сверху)

Пагинация

Все списки:
  ├── По умолчанию: 25 записей на странице
  ├── Варианты: 25 / 50 / 100
  ├── Навигация: кнопки «←» «→» + номера страниц
  └── Общее количество записей: «Показано 1–25 из 342»

Канбан:
  ├── Подгрузка по скроллу внутри колонки (infinite scroll)
  └── По умолчанию: 20 карточек на колонку, далее «Загрузить ещё»

Сохранённые фильтры

v1: не реализуется. Фильтры сбрасываются при уходе со страницы.
    Исключение: последний активный фильтр сохраняется в URL (query params).

v2+: сохранённые представления (views) — именованные комбинации
    фильтров, доступные всем участникам проекта.