evrone.solutions
evrone/
egrocery_
№21
Логистика

Evrone eGrocery

доставка последней мили

Сборка с пикер-приложением, диспетчеризация, PWA курьера, трекинг, слоты.

Консьюмерская доставка. Приём заказа, сборка с пикер-приложением (включая замены товаров — специфика grocery), диспетчеризация курьеров, PWA курьера (маршрут, статусы, фото/код подтверждения), трекинг-ссылка клиенту, зоны и слоты доставки, тарифы.

Что входит в MVP

Заказ → сборка → курьер → трекинг.

Техническое задание

egrocery-tz.md · 3,9 КБ · обновлено 02.08.2026
↓ Скачать ТЗ (.md)

ТЗ: Evrone eGrocery — доставка последней мили

Демонстрационная версия документа · категория «Логистика» · №21

Это демонстрационное техническое задание: оно показывает структуру и глубину документа, который передаётся вместе с прототипом. Боевое ТЗ по этому солюшену готовится и заменит этот файл.

1. Суть решения

Сборка с пикер-приложением, диспетчеризация, PWA курьера, трекинг, слоты.

Консьюмерская доставка. Приём заказа, сборка с пикер-приложением (включая замены товаров — специфика grocery), диспетчеризация курьеров, PWA курьера (маршрут, статусы, фото/код подтверждения), трекинг-ссылка клиенту, зоны и слоты доставки, тарифы.

2. Технологический стек

Слой Решение
Backend Ruby on Rails 8, PostgreSQL
Frontend Hotwire (Turbo + Stimulus), Tailwind CSS
Фоновые задачи Solid Queue
Файлы Active Storage, S3-совместимое хранилище
Деплой Docker, Kamal, production + staging

3. Роли

  • Покупатель
  • Сборщик
  • Курьер
  • Диспетчер

4. Модель данных

4.1. Order

customer_id: references
slot: tstzrange
state: enum # принят, собирается, в пути, доставлен
items: has_many

4.2. Replacement

order_item_id: references
suggested_product_id: references
approved: boolean

4.3. Courier

name: string
vehicle: enum
current_route_id: references, nullable
state: enum

5. Ключевые сценарии

  1. Покупатель выбирает слот доставки в своей зоне
  2. Сборщик комплектует заказ и предлагает замены отсутствующих позиций
  3. Диспетчер распределяет заказы по курьерам
  4. Курьер ведёт маршрут в PWA и подтверждает вручение фото или кодом

6. Интеграции

  • Гео-сервис и маршрутизация
  • Платежи
  • Push-уведомления
  • Товарные остатки

7. Нефункциональные требования

  • Серверный рендеринг, работоспособность ключевых страниц без JavaScript
  • Мобильная адаптивность обязательна
  • Роли и права проверяются на уровне сервера, а не интерфейса
  • Логирование действий пользователей по значимым операциям
  • Покрытие тестами моделей и ключевых сценариев
  • Развёртывание одной командой, окружения production и staging

8. Состав MVP

Заказ → сборка → курьер → трекинг.

9. Критерии приёмки

  1. Все сценарии из раздела 5 проходят end-to-end на тестовом стенде
  2. Роли из раздела 3 видят только то, что им положено
  3. Интеграции из раздела 6 работают через слой адаптеров и переключаются конфигурацией
  4. Прототип разворачивается из репозитория одной командой
  5. Документация по запуску и переменным окружения лежит в README
// расчёт доработок

Какие вам нужны доработки?

Опишите своими словами, что хотите изменить или добавить к прототипу — интеграции, дизайн, новые механики. AI сопоставит запрос с ТЗ солюшена и сразу покажет вилку часов и стоимости.

Оценка считается по ТЗ Evrone eGrocery
Финальную смету подтверждает инженер
Оценка появится через несколько секунд
// заявка

Купить Evrone eGrocery

500 000 ₽
прототип + исходный код + ТЗ

Оставьте контакты — свяжемся, покажем прототип вживую и договоримся о передаче.

Нажимая, вы соглашаетесь с политикой обработки ПД