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

📦 Модули (PRD Overview)

10 модулей платформы Red Petroleum EV

Каждый модуль имеет отдельный PRD, приоритет и статус готовности

10Модулей
6P0 (MVP)
39PRD документов

Обзор модулей

# Модуль Приоритет Backend Frontend Статус
1 Auth P0 ✅ Done ✅ Done 🟢 Готов
2 Balance P0 ✅ Done ✅ Done 🟢 Готов
3 Charging P0 ✅ Done ✅ Done 🟢 Готов
4 Guest P0 ✅ Done ✅ Done 🟢 Готов
5 Sandbox P0 ✅ Done 🟢 Готов
6 OCPP Logs P0 ✅ Done 🟡 Partial 🟡 Частично
7 Partner P1 ✅ Done 🟡 Partial 🟡 Частично
8 Tariffs P1 🟡 Partial 🔴 Not started 🟡 Частично
9 Corporate P2 🔴 Not started 🔴 Not started 🔴 Не начат
10 Booking P2 🔴 Not started 🔴 Not started 🔴 Не начат

Приоритеты

P0 — MVP (обязательно для запуска)

Модуль Описание Ключевые фичи
Auth SMS OTP аутентификация Вход по телефону, JWT + refresh, RBAC
Balance Баланс и оплата Пополнение Namba One, HMAC-SHA512, webhook
Charging Зарядка Start/stop, realtime WS, лимиты, резервирование
Guest Гостевая зарядка Без регистрации через QR, оплата через web
Sandbox Симулятор станций Виртуальные OCPP станции для тестов
OCPP Logs Логирование Все OCPP события для диагностики

P1 — Расширенный функционал

Модуль Описание Ключевые фичи
Partner Кабинет партнёра Доход, статистика, управление станциями
Tariffs Динамические тарифы Время суток, тип коннектора, мощность

P2 — Будущее развитие

Модуль Описание Ключевые фичи
Corporate Корпоративные клиенты Общий баланс, лимиты сотрудников, постоплата
Booking Бронирование Резервирование коннектора на 30 мин

Граф зависимостей

flowchart TD Auth["🔐 Auth\nP0 ✅"] Balance["💰 Balance\nP0 ✅"] Charging["⚡ Charging\nP0 ✅"] Guest["🌐 Guest\nP0 ✅"] Sandbox["🧪 Sandbox\nP0 ✅"] Logs["📋 OCPP Logs\nP0 🟡"] Partner["👤 Partner\nP1 🟡"] Tariffs["💲 Tariffs\nP1 🟡"] Corporate["🏢 Corporate\nP2 🔴"] Booking["📅 Booking\nP2 🔴"] Auth --> Balance Auth --> Charging Auth --> Partner Auth --> Corporate Balance --> Charging Balance --> Guest Charging --> Logs Charging --> Booking Tariffs --> Charging Tariffs --> Guest Tariffs --> Corporate Sandbox --> Charging Partner --> Logs style Auth fill:#22C55E,color:#000 style Balance fill:#22C55E,color:#000 style Charging fill:#22C55E,color:#000 style Guest fill:#22C55E,color:#000 style Sandbox fill:#22C55E,color:#000 style Logs fill:#F59E0B,color:#000 style Partner fill:#F59E0B,color:#000 style Tariffs fill:#F59E0B,color:#000 style Corporate fill:#EF4444,color:#fff style Booking fill:#EF4444,color:#fff

Детали по модулям

Auth — SMS OTP

  • Провайдер: Nikita SMS (замена WhatsApp из EvPower)
  • Процесс: Телефон → SMS OTP → JWT (access 15 мин + refresh 7 дней)
  • Cookie: HTTP-only evp_access, evp_refresh, XSRF-TOKEN
  • RBAC: 7 ролей с проверкой на каждом эндпоинте
  • Особенность: Динамический COOKIE_DOMAIN (fix для multi-domain)

Balance — Namba One

  • Интеграция: HMAC-SHA512 подпись, payment links, refund API
  • Webhook: JSON-уведомления (PAYMENT_ORDER / REFUND_ORDER)
  • Верификация: IP whitelist + webhook secret
  • Суммы: Preset (500, 1000, 2000) или кастомная

Charging — OCPP Core

  • Протокол: OCPP 1.6J (основной) + 2.0.1 (новые станции)
  • Резервирование: 95% лимита или 90% баланса
  • Авто-стоп: При 95% от лимита
  • Ночной тариф: -20% (23:00-06:00)
  • Чеки: PDF генерация после каждой сессии

Guest — Безбарьерный вход

  • Процесс: QR на станции → Web страница → Оплата → Зарядка
  • Без регистрации: Только номер телефона для SMS чека
  • Конверсия: Привязка гостевых сессий при регистрации

Tariffs — Динамическое ценообразование

  • Время суток: День (15 сом), ночь (12 сом), пик (18 сом)
  • Тип коннектора: DC дороже AC
  • Мощность: Выше мощность → выше цена
  • Корпоративный: Индивидуальный по договору