- Исправлены TypeScript ошибки в Step3Payment.tsx (типизация, неиспользуемые импорты) - Добавлены недостающие зависимости: aiomysql, pymysql, python-multipart - Обновлен requirements.txt с актуальными версиями - Добавлены новые API endpoints: policy check, file upload - Добавлен policy_service для работы с MySQL - Все сервисы успешно запущены и работают - Обновлен SESSION_LOG с документацией процесса
46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
"""
|
|
Policy API Routes - Проверка полисов
|
|
"""
|
|
from fastapi import APIRouter, HTTPException
|
|
from pydantic import BaseModel
|
|
from ..services.policy_service import policy_service
|
|
|
|
router = APIRouter(prefix="/api/v1/policy", tags=["Policy"])
|
|
|
|
|
|
class PolicyCheckRequest(BaseModel):
|
|
"""Запрос на проверку полиса"""
|
|
voucher: str
|
|
inn: str | None = None
|
|
|
|
|
|
@router.post("/check")
|
|
async def check_policy(request: PolicyCheckRequest):
|
|
"""
|
|
Проверить полис в БД
|
|
|
|
- **voucher**: Номер полиса
|
|
- **inn**: ИНН (опционально)
|
|
|
|
Returns:
|
|
- found: true/false
|
|
- policy_data: данные полиса если найден
|
|
"""
|
|
policy = await policy_service.check_policy(request.voucher, request.inn)
|
|
|
|
if policy:
|
|
return {
|
|
"success": True,
|
|
"found": True,
|
|
"message": "Полис найден в базе",
|
|
"policy_data": policy
|
|
}
|
|
else:
|
|
return {
|
|
"success": True,
|
|
"found": False,
|
|
"message": "Полис не найден. Загрузите скан полиса.",
|
|
"policy_data": None
|
|
}
|
|
|