📦 Модули (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
- Мощность: Выше мощность → выше цена
- Корпоративный: Индивидуальный по договору