| from fastapi import APIRouter, HTTPException | |
| from app.models.risk_models import RiskResponse | |
| from app.services.risk_service import get_system_risk | |
| router = APIRouter() | |
| async def get_risk(): | |
| try: | |
| risk = get_system_risk() | |
| except NotImplementedError: | |
| raise HTTPException( | |
| status_code=501, | |
| detail="This endpoint is deprecated and not implemented") | |
| except Exception as e: | |
| raise HTTPException(status_code=500, detail=str(e)) | |
| if risk < 0.3: | |
| status = "low" | |
| elif risk < 0.6: | |
| status = "moderate" | |
| elif risk < 0.8: | |
| status = "high" | |
| else: | |
| status = "critical" | |
| return RiskResponse(system_risk=risk, status=status) | |
| async def get_risk_history(): | |
| import random | |
| import datetime | |
| now = datetime.datetime.now() | |
| data = [{"time": (now - datetime.timedelta(hours=i)).isoformat(), | |
| "risk": round(random.uniform(0.2, 0.8), 2)} for i in range(24, 0, -1)] | |
| return data | |