О системе и ролях
GeoResin — система учёта путевых листов, пробега и расхода топлива. Основной раздел: Путевые листы.
| Роль | Кто это | Что доступно |
|---|---|---|
| Водитель (DRIVER) | Шофёр с учётной записью | Главная с блоком «Контроль на сегодня», свои путевые листы, отметка «на базе», заполнение листов |
| Пользователь (USER) | Диспетчер, бухгалтер, оператор | Все путевые листы (по правам API), создание и редактирование, валидация, экспорт одного листа |
| Администратор (ADMIN) | Полный доступ к системе | Подробно в руководстве администратора |
Роль назначается в Настройках администратором. Водитель без отдельной учётки в справочнике тоже может попадать под контроль — если у него есть email и роль DRIVER.
Вход в систему и профиль
Страница /login: поле «Логин или Email» и пароль (минимум 6 символов). После входа — редирект на главную.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-login.png
Настройки профиля
/settings — просмотр имени, email, логина, роли; смена пароля (нужен текущий пароль).
Вставьте скриншот
Рекомендуемый файл: public/docs/user-settings.png
Главная страница
/dashboard показывает:
- приветствие и имя пользователя;
- блок «Контроль на сегодня» — только для роли DRIVER (см. ниже);
- счётчики: всего листов, черновики, в работе, завершено, с ошибками;
- быстрые действия: создать лист, список, водители/машины (если есть права);
- последние 5 изменённых путевых листов с переходом в карточку.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-dashboard.png
Листы с ошибками валидации подсвечиваются красной рамкой и бейджем с числом ошибок.
Контроль на сегодня (роль Водитель)
На главной у водителя отображается карточка «Контроль на сегодня». Система проверяет за текущую дату:
- отмечен ли водитель как «Сегодня на базе»;
- заполнен ли путевой лист за сегодня (день с полными сегментами и данными).
| Статус | Значение | Нужно действие? |
|---|---|---|
| Всё в порядке / На базе / Лист заполнен | Требования выполнены | Нет |
| Исключение | Отпуск, болезнь (задал администратор) | Нет |
| Лист не завершён | Есть черновик дня, данные неполные | Да — дописать лист |
| Требуется действие | Нет отметки и нет листа за день | Да — «на базе» или лист |
Кнопки в карточке:
- Сегодня на базе — фиксирует, что рейса не было;
- Заполнить путевой лист — переход к активному листу;
- Создать путевой лист — если активного нет.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-compliance-card.png
В выходные дни контроль может не применяться (настройка на сервере). Подробности для администратора — в разделе «Контроль водителей».
Список путевых листов
/waybills — все доступные путевые листы.
Фильтры и сортировка
- Статус — все, черновик, в работе, завершён, архив;
- Общий поиск — ID, водитель, госномер, марка, модель, пункт назначения;
- Марка / модель / пункт / водитель — отдельные поля;
- Даты начала — период «с» и «по»;
- Сортировка — по ID, дате, водителю, машине (возр./убыв.).
Вставьте скриншот
Рекомендуемый файл: public/docs/user-waybills-list.png
На телефоне — карточки, на широком экране — таблица. Кнопка «Создать путевой лист» ведёт на мастер создания.
Создание путевого листа
Мастер /waybills/create — три шага с индикатором прогресса.
Шаг 1 — Основная информация
- Водитель — автоподсказка по ФИО и логину;
- Автомобиль — поиск по госномеру и регистрационному номеру;
- Пункт назначения — обязательное текстовое поле;
- Одометр на начало и остаток топлива — обязательны уже на шаге 1.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-create-step1.png
Шаг 2 — Период
- дата начала — обязательна;
- дата окончания — обязательна, если период не «открытый»;
- флаг открытый период — дата окончания не задаётся (лист без фиксированного конца).
Вставьте скриншот
Рекомендуемый файл: public/docs/user-create-step2.png
Шаг 3 — Проверка
Сводка всех полей. При выборе машины на шаге 1 система могла подставить одометр и топливо из последнего путевого листа этой машины — проверьте значения перед сохранением.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-create-step3.png
После «Создать» открывается карточка нового листа в статусе Черновик.
Статусы путевого листа
| Статус | Когда | Что можно делать |
|---|---|---|
| Черновик (DRAFT) | Сразу после создания | Править начальные данные, начать работу; удалить — только админ |
| В работе (IN_PROGRESS) | После «Начать заполнение» | Добавлять дни, сегменты, завершать, валидировать |
| Требует корректировки | После проверки | Редактировать как «в работе» |
| Завершён (COMPLETED) | После «Завершить» | Экспорт, валидация, вернуть в работу |
| С ошибками (HAS_ERRORS) | Валидация нашла проблемы | Исправить и снова валидировать / в работу |
| Проверен (VALIDATED) | Валидация успешна | Экспорт, при необходимости вернуть в работу |
| Архив (ARCHIVED) | Архивирование | Просмотр; админ может вернуть в черновик |
Вставьте скриншот
Рекомендуемый файл: public/docs/user-status-badges.png
Карточка путевого листа
Страница /waybills/[id] — центр работы с одним листом.
Блоки на странице
- шапка: водитель, машина, пункт, даты, статус;
- начальные показания: одометр, топливо на выезд (редактирование в черновике/работе);
- предупреждение разрыва с предыдущим листом машины (continuation);
- список дней маршрута с километражом и ссылкой на сегменты;
- конечные показания (после расчёта по дням);
- панель Действия.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-waybill-card.png
Действия
| Кнопка | Описание |
|---|---|
| Экспорт в Excel | Скачать лист по шаблону по умолчанию |
| Валидация | Проверить дни, непрерывность, правила сессии |
| Начать заполнение | Черновик → в работе |
| Завершить | Расчёт конца, диалог с одометром и топливом |
| Вернуть в работу | Из завершённого / с ошибками / проверенного |
| Подставить из предыдущего листа | Одометр и топливо с прошлого листа машины |
| Удалить | Только админ, только черновик |
| Вернуть в черновик | Только админ, завершённый/архив |
Вставьте скриншот
Рекомендуемый файл: public/docs/user-waybill-actions.png
Завершение
По кнопке «Завершить» система пересчитывает конечный одометр и остаток топлива по сумме дней. В диалоге можно изменить дату окончания (если период был открытым), одометр и топливо, затем подтвердить.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-waybill-complete-dialog.png
Дни маршрута
Дни добавляются кнопкой на карточке листа (в статусе «в работе»). Каждый день — отдельная запись с суммарным пробегом; пункты «откуда/куда» часто заполняются автоматически из сегментов.
Переход к детализации: «Сегменты →» → /waybills/[id]/days/[dayId].
Вставьте скриншот
Рекомендуемый файл: public/docs/user-waybill-days-list.png
Сегменты и топливо за день
Сегменты маршрута
На странице дня для каждого сегмента:
- Откуда / Куда — текст маршрута;
- Километры — расстояние участка;
- Местность — «В городе» (CITY) или «За городом» (OUTSIDE_CITY) — влияет на норму расхода.
Особенности:
- первый сегмент нового дня может подставить «откуда» из конечной точки предыдущего дня;
- при добавлении следующего сегмента поле «откуда» = «куда» предыдущего (или точка остановки, если предыдущий сегмент — ночёвка с 0 км);
- в полях «Откуда» и «Куда» при вводе предлагаются базы Тарный и Каспийская; можно ввести любой адрес вручную;
- кнопка «Моё местоположение» подставляет адрес по GPS (2GIS), только для поля «Куда»;
- флажок «Остановка / ночёвка (0 км)» — после сегмента с километражом: фиксирует место ночёвки без пробега (в «Куда» — прочерк); не заменяет обычный сегмент с км;
- на первом дне листа может появиться заглушка-сегмент — откройте редактирование и заполните км и маршрут;
- после изменений сегментов конечные показания листа пересчитываются автоматически.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-day-segments.png
Топливо за день
- Заправка за день (л);
- Остаток на конец дня (л, целое число), не больше объёма бака;
- отображаются нормативный и фактический расход;
- при отклонении факта от нормы более 20% — предупреждение на экране.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-day-fuel.png
Нормы л/100 км задаёт администратор по машине и месяцу — см. нормы топлива.
Валидация и типичные ошибки
Валидация на карточке листа запускает проверку на сервере:
- полнота и корректность дней (сегменты, топливо);
- непрерывность одометра/топлива с предыдущим путевым листом той же машины;
- правила сессии (статус, обязательные поля).
Уведомление после проверки может содержать:
- число дней с ошибками;
- текст о разрыве показаний с предыдущим листом;
- ошибки уровня всего листа.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-validation-error.png
Блок continuationError на карточке подсказывает, какие показания не стыкуются с предыдущим листом — используйте «Подставить из предыдущего путевого листа» или исправьте вручную.
Экспорт в Excel
Кнопка Экспорт в Excel на карточке листа формирует файл и предлагает скачать. Используется шаблон по умолчанию; выбор другого шаблона — только в админских Выгрузках.
Вставьте скриншот
Рекомендуемый файл: public/docs/user-export-excel.png
Мобильная работа (водители)
Интерфейс рассчитан на телефон:
- кнопки не ниже 44×44 px;
- поля ввода с размером шрифта от 16 px (без зума на iOS);
- меню-гамбургер в шапке;
- карточка «Контроль на сегодня» с крупными кнопками «На базе» и «Заполнить лист».
Вставьте скриншот
Рекомендуемый файл: public/docs/user-mobile-dashboard.png
Все пользовательские сценарии
Ниже — полный перечень типовых ситуаций. К каждому при необходимости добавьте свой скриншот в public/docs/.
Сценарий 1: Создать и начать заполнять новый путевой лист
- Войти через /login.
- На /dashboard или /waybills нажать создание листа.
- Шаг 1: выбрать водителя и машину, пункт, одометр и топливо.
- Шаг 2: даты (или открытый период).
- Шаг 3: проверить сводку → Создать.
- На карточке при необходимости «Подставить из предыдущего листа».
- «Начать заполнение» → добавить день → «Сегменты».
Вставьте скриншот
Рекомендуемый файл: public/docs/scenario-01-create.png
Сценарий 2: Заполнить рабочий день (сегменты и топливо)
- Открыть лист «В работе».
- Перейти в день → Сегменты.
- Дополнить заглушку первого сегмента или добавить новые участки.
- Проверить сумму км в городе / за городом.
- Внести заправку и остаток топлива.
- Сохранить; дождаться пересчёта листа.
Вставьте скриншот
Рекомендуемый файл: public/docs/scenario-02-day-filled.png
Сценарий 3: Завершить путевой лист и скачать Excel
- Заполнить все дни поездки.
- «Валидация» — устранить замечания.
- «Завершить» — проверить расчётные конечные значения в диалоге.
- Подтвердить завершение.
- «Экспорт в Excel» — сохранить файл.
Сценарий 4: Найти путевой лист в списке
- Открыть /waybills.
- Раскрыть фильтры.
- Ввести критерии (водитель, машина, даты, статус).
- Открыть нужную строку/карточку.
Сценарий 5: Подготовить черновик до выезда
- Создать лист заранее в статусе «Черновик».
- Сверить одометр/топливо с предыдущим листом машины.
- Не нажимать «Начать заполнение» до фактического выезда.
Сценарий 6: Водитель отмечает «Сегодня на базе»
- Войти под учёткой с ролью DRIVER.
- На /dashboard в блоке «Контроль на сегодня» нажать «Сегодня на базе».
- Убедиться, что статус сменился (зелёный бейдж, нет требования действий).
Вставьте скриншот
Рекомендуемый файл: public/docs/scenario-06-at-base.png
Сценарий 7: Исправить лист после ошибок валидации
- Открыть лист с бейджем ошибок или статусом HAS_ERRORS.
- Прочитать continuationError и список проблемных дней.
- Исправить сегменты/топливо в проблемных днях.
- При разрыве показаний — скорректировать начало листа или предыдущий лист.
- Повторить «Валидация» до успешного результата.
Сценарий 8: Вернуть завершённый лист в работу
- Открыть завершённый/проверенный лист.
- «Вернуть в работу».
- Внести правки в дни или показания.
- Снова «Завершить» и при необходимости экспорт.
Сценарий 9: Многодневная командировка
- Создать лист с периодом на несколько дней.
- «Начать заполнение».
- Каждый календарный день: «Добавить день» → сегменты + топливо.
- Проверить накопленный пробег на карточке листа.
- В последний день — завершить с датой окончания.
Сценарий 10: Путевой лист с открытым периодом
- При создании включить «открытый период» (без даты окончания).
- По мере поездок добавлять дни.
- При завершении в диалоге указать фактическую дату окончания.
Сценарий 11: Водитель заполняет лист по напоминанию контроля
- На главной красная рамка «Требуется действие».
- «Создать путевой лист» или «Заполнить путевой лист».
- Заполнить сегменты за сегодня до статуса «Лист заполнен».
Сценарий 12: Цепочка сегментов (несколько рейсов за день)
- В дне добавить сегмент A→B.
- Добавить сегмент B→C — поле «откуда» уже B.
- При смене местности на участке — отредактировать тип (город/трасса).
Сценарий 13: Большое отклонение расхода топлива
- После ввода остатка проверить предупреждение >20%.
- Перепроверить км по сегментам и заправку.
- При ошибке в нормах — сообщить администратору (нормы на /cars/[id]/fuel).
Администрирование и справочники
Заведение водителей, машин, норм топлива, шаблонов Excel, контроль нарушений и массовые выгрузки — в руководстве администратора.