Изменения
2026-09-18
Заголовок раздела «2026-09-18»-
Вход в админку — на своей странице (#541, #544, backend PickUpper#944). Раньше при входе браузер уезжал на страницу Keycloak и возвращался обратно; теперь логин и пароль вводятся прямо в админке, на одной странице с выбором языка и темы, и Keycloak не показывается. Сама учётная запись, роли и приглашения не изменились — это по-прежнему Keycloak, просто без его страницы. Вместе с этим — новый логотип, боковое меню и меню аккаунта в шапке (выход — там).
-
Для разработчиков: новый пуш в ветку или PR отменяет устаревший прогон CI, деплой никогда не прерывается на середине (#543); гейт первого экрана — 500 KB вместо 200, как тревога на класс ошибок, а не на пару килобайт фичи (#544).
2026-09-12
Заголовок раздела «2026-09-12»- Планирование: рейс без остановок доставки больше не показывает «0 кг · 0 ₼ · факт» — там прочерки и пометка «исходов нет» (#909, backend PickUpper#912). Гейт вместимости и карточка рейса теперь считают одно и то же — то, что едет в машине одновременно, а не сумму всего за день; перестановка остановок проверяется на вместимость (backend PickUpper#913).
2026-09-12
Заголовок раздела «2026-09-12»-
Цифры груза в планировании (#897, backend #899/#908, admin #510/#511). В очереди у каждой заявки видны сумма, вес и объём, а над списком — итог по всей очереди за период с пометкой, сколько заявок осталось без веса или объёма. На карточке рейса — вес, объём, сумма и две полосы загрузки машины: отдельно по весу и по объёму, потому что упереться можно в любую меру.
-
Загрузка считается так, как её решает планировщик (#900, #901, #910). Вес и объём на карточке — это максимум одновременно в кузове, а не оборот за день: доставленное место освобождает объём, забираемое садится по пути, при обмене старая и новая вещь не едут вместе, а отказанный груз едет до склада. Процент — доля самого заполненного отсека с учётом навыков и числа мест; если груз не раскладывается вовсе, об этом говорится прямо. Проверка при подтверждении рейса и при перестановке стопов теперь судит по тому же правилу, что и карточка.
-
История рейсов честная (#906, #909). Завершённый рейс показывает факт по отметкам водителя, отменённый — ничего, он никогда не грузился. Рейс без стопов доставки (забор, обмен, возврат от клиента) показывает прочерк и «исходов нет» вместо нулей: у таких стопов пока нет словаря исходов.
-
Отчёт по рейсам перестал удваивать частично возвращённую строку в плане, а загрузка в отчёте и на карточке — теперь одна и та же цифра (#898).
-
Числа читаются одинаково на всех экранах (#904): меры, проценты и деньги форматируются одним правилом, а не тремя разными, как раньше в заказах, отчётах и планировании.
-
Справочник API показывает документ интегратора, а не только основной (backend #893).
2026-09-08
Заголовок раздела «2026-09-08»-
Панель показателей: километры и топливо «рейсов сегодня» приходят одним запросом итогов отчёта вместо запроса на каждый рейс (#215, backend #891); теперь это плановые километры по стопам и плановое топливо по расходу машины.
-
Равномерная нагрузка водителей в политике планирования: автоплан помнит рейсы за неделю и предлагает работу сначала тем, кто ездил меньше (backend #890, демо п.4).
-
Отчёты (#873, backend #887): новый раздел для диспетчера и администратора — рейсы за период одной таблицей, как в месячной аналитике прежней системы (водитель, машина, день, 43 колонки по группам «Рейс / Время / Маршрут / Заказы / Загрузка / Деньги»), строка «Итого», фильтры по водителю, машине и складу, экспорт в Excel и две сводки — по водителям и по машинам. В настройках компании — «Цена литра топлива», из неё считается стоимость маршрута.
-
Заявки знают свой рейс и экипаж. Колонка «Рейс · водитель» в таблице, фильтры «Водитель» и «Машина» (и в экспорте Excel), полоса «Экипажи» со счётчиками по водителям и «Без экипажа» над таблицей, число заявок у каждого статуса в фильтре, строка «Рейс по плану» в карточке рядом с «Назначено» (#872, backend #889).
2026-09-07
Заголовок раздела «2026-09-07»-
Ревизия после демо, первый блок. Форма гео-зоны не наезжает на карту (#447); очередь и карта обновляются после отмены рейса и возврата заявки (#448); фильтры и заголовки «Заявок» на 1440/1280 (#449); «Такой страницы нет» внутри оболочки, аккаунт-меню «кто вошёл, роль, компания» (#450, #465); пустой тенант ведёт в онбординг, шаг «Настройки тенанта» закрывается сам (#451, backend #877).
-
Заявки: поле «Поиск» по номеру, клиенту, телефону и адресу вместо точного «Внешний ID» — и в экспорте (#467, backend #880); «В планирование» из карточки, бейдж источника ERP/вручную (#459).
-
Планирование: итоги выбранных заявок (сумма, вес, объём, стопы), имя рейса «водитель · машина», вкладка «Завершённые», фильтр по машине (#458). Мониторинг: только рейсы в работе, запланированные — за галочкой (#453).
-
Справочники: поиск, сортировка, страницы и полезные колонки (#460); подписи без «ID», выбор цвета тега, аккаунт водителя по email (#461); хаб с иконками по разделам (#464).
-
Доступ: отозвать роль и деактивировать пользователя из списка (#462). Настройки: часовой пояс, валюта и локаль из словарей, поле «Страна» (#457, backend #879). Аудит на языке читателя: словарь событий, роли, «Система», UUID-фильтры свёрнуты (#455).
-
Даты в языке интерфейса, «Soraqçalar» в азербайджанском, язык до входа — из браузера (#456).
-
Водитель: «Сегодня» и «Просроченные» по дате рейса (#454, backend #878); поздний 401 из офлайн-очереди больше не превращается в «конфликт» (#452).
-
Второй промоушен того же дня. Диспетчер: «Начать рейс» и «Завершить рейс» в карточке рейса, завершение только при закрытых стопах (#469, backend #882). Справочники: склад на карте — точка кликом и перетаскиванием, «Найти на карте по адресу» (#470, backend #883); счётчики записей на хабе (#474). Оболочка: мобильная раскладка — рейл на планшете, off-canvas меню на телефоне (#466). Водитель: клиент, адрес, телефон и «Позвонить» на стопе, позиции груза с названиями товаров (#468, #471, backend #881, #884); экран профиля — язык, версия, «Выйти» убран из шапки (#473).
-
Третий промоушен того же дня. Заявки: «Новая заявка» — клиент по поиску (имя, телефон, внешний ID), выбор адреса клиента, внешний ID, теги, подсказка на пустом тенанте (#481). Справочники: маска телефона в формах водителя и клиента, номера хранятся в одном виде (#482); импорт из CSV с шаблоном и проверкой колонок, экспорт в CSV (#483). Настройки: границы карты редактируются (#484); у рейса в планировании — кнопка «Открыть» (#484). Отчёт за ночь после демо в
claudedocs/reports/(#477, #485). -
Четвёртый промоушен того же дня. Планирование: период по умолчанию «сегодня и завтра», диапазон не больше недели, пресеты «сегодня / сегодня и завтра / вчера / завтра / 7 дней» (#488); рейсы одного водителя — одна карточка с именем и фамилией, рейсы строками, раскрывающийся список «Заказы в машине» с позициями по заявкам (#489, backend #871).
2026-09-06
Заголовок раздела «2026-09-06»- Документация продукта — большое обновление (#424). Разделы по читателям: «Обзор», «Диспетчеру», «Администратору», «Водителю», «Интеграция», «Как устроено» — на русском и азербайджанском. Интерактивные схемы архитектуры и шести сценариев (LikeC4), скриншоты настоящего staging, словарь на 30 терминов с подсказками в тексте. Справочники статусов, причин неназначения, кодов ошибок и событий генерируются из кода и спецификации; страницы несут штамп «проверено: версия · дата».
2026-09-02
Заголовок раздела «2026-09-02»-
Интейк честнее: повторный
syncобновляет строки, пока заявка не на рейсе, иначе 409 вместо тихой потери; отменённая заявка воскрешается повторной отправкой (backend #808). Неположительное количество и ссылки на несуществующие товар/склад — 400 на входе (backend #809). -
Консоль оператора платформы: компании, карточка, жизненный цикл, приглашение первого администратора (backend #798, admin #389).
-
Отвязка учётной записи водителя — ошибочная привязка исправима (backend #799, admin #390).
-
Аудит системы: журнал с курсором, фильтры с бэкенда, водитель как актор, доступ диспетчера (#378–#387, backend #791–#796).
-
Сайт документации (этот) — первая версия.