a26cb772f574e999f867030e8f0ac7d5ec319a88
1. ✅ OCR Progress Bar: - Добавлен polling OCR результатов каждые 3 сек - Визуальный индикатор: 🔍 Обработка OCR... (1/10) - Progress bar с анимацией - Статусы: 🔄 Запуск → 🔍 Обработка → ✅ Завершен - Gemini Vision результаты в Debug панели 2. ✅ Убран некорректный 'Полис найден': - Было: показывался сразу после загрузки файла - Проблема: OCR еще не закончился, может быть шляпа - Решение: убрана зеленая плашка с Step2 - Статус полиса только после реальной проверки 3. ✅ Условные поля для стыковочного рейса: - Если выбран 'miss_connection' → показываются 4 доп поля: • Номер рейса прибытия • Дата рейса прибытия • Номер рейса отправления • Дата рейса отправления - Если выбран 'cancel_flight' → доп поле: • Подтверждение отмены от АК - Для обычных рейсов: только номер рейса Frontend изменения: - Step1Policy: OCR polling, progress bar - Step2Details: условная логика полей (как в erv_ticket) - useState для eventType - handleEventTypeChange для динамики Теперь: ✅ Видно прогресс OCR ✅ Видно результаты Gemini Vision ✅ Условные поля работают ✅ Нет ложных статусов
🚀 ERV Insurance Platform
Современная платформа для страховых обращений
- Backend: Python FastAPI (async)
- Frontend: React 18 + TypeScript
- Database: PostgreSQL + MySQL + Redis
- Queue: RabbitMQ
- Storage: S3 Timeweb Cloud
🎯 Быстрый старт
📍 Визуальный доступ:
После запуска доступны по адресам:
Frontend (форма):
http://147.45.146.17:5173/
Backend API:
http://147.45.146.17:8100/
API Документация (Swagger UI):
http://147.45.146.17:8100/docs ← Интерактивная!
Gitea (Git репозиторий):
http://147.45.146.17:3002/
🔧 Установка и запуск
Backend (FastAPI):
cd backend
# Создаём виртуальное окружение
python3 -m venv venv
source venv/bin/activate
# Устанавливаем зависимости
pip install -r requirements.txt
# Запускаем сервер
uvicorn app.main:app --reload --host 0.0.0.0 --port 8100
Frontend (React):
cd frontend
# Устанавливаем зависимости
npm install
# Запускаем dev сервер
npm run dev -- --host 0.0.0.0 --port 5173
📊 Архитектура
Поток данных:
React (5173) → FastAPI (8100) → [Redis, RabbitMQ, PostgreSQL]
↓
OCR Service (8001)
OpenRouter AI
FlightAware API
↓
PHP Bridge → Vtiger CRM
Что НЕ трогаем:
✅ CRM Vtiger (работает как работала)
✅ MySQL полисы (только READ)
✅ Существующий PHP код
🗄️ Базы данных
| База | Назначение | Хост |
|---|---|---|
| PostgreSQL | Логи, метрики, новые данные | 147.45.189.234:5432 |
| MySQL | Проверка полисов (READ) | localhost:3306 |
| Redis | Кеш, Rate Limiting | localhost:6379 |
📁 Структура проекта
erv_platform/
├─ backend/ ← Python FastAPI
│ ├─ app/
│ │ ├─ main.py
│ │ ├─ api/
│ │ ├─ services/
│ │ └─ models/
│ └─ requirements.txt
│
├─ frontend/ ← React TypeScript
│ ├─ src/
│ │ ├─ components/
│ │ ├─ pages/
│ │ └─ api/
│ └─ package.json
│
└─ .env ← Конфигурация
🔌 API Endpoints
Документы:
POST /api/v1/documents/upload- Загрузка в S3POST /api/v1/documents/scan- OCR + Vision
Рейсы:
GET /api/v1/flights/check- Проверка статуса
Обращения:
POST /api/v1/claims/submit- Создание обращения
Полисы:
GET /api/v1/policies/verify- Проверка полиса
🐛 Отладка
Логи:
# FastAPI
tail -f backend/logs/app.log
# PostgreSQL логи
SELECT * FROM logs ORDER BY created_at DESC LIMIT 50;
📝 Git
# Репозиторий
http://147.45.146.17:3002/negodiy/erv-platform
# Клонирование
git clone http://147.45.146.17:3002/negodiy/erv-platform.git
# Push изменений
git add .
git commit -m "Your message"
git push origin main
Автор: AI Assistant + Фёдор
Дата: 24.10.2025
Description
Languages
TypeScript
61.3%
Python
33.9%
Shell
1.8%
PLpgSQL
1.3%
HTML
1.3%
Other
0.4%