import logging
from typing import Dict, Any, Optional

logger = logging.getLogger(__name__)

class TaskRouter:
    """
    Kernekomponentet for "Giv mig næste opgave"-knappen (Phase 3).
    Udregner den optimale næste opgave ud fra:
    1. Hastesager (SLA warnings etc.) i sags-køen
    2. Medarbejderens ledige tid i kalenderen (skal integreres mod M365)
    3. Kompetenceniveau (tags på sager vs bruger)
    """

    def __init__(self):
        pass

    async def get_next_best_task(self, user_id: int) -> Optional[Dict[str, Any]]:
        """
        Beregner den næste bedste opgave.
        (Dummy-implementering til MVP Bottom Bar)
        """
        logger.info(f"Omsætter opgaveruter for bruger {user_id}")
        
        # P.t. er dette blot en mock respons til at matche bottom barens forventning
        # TODO: Implementér ægte opslag mod databasens sag_queue
        return {
            "case_id": 8192,
            "title": "Netværksudfald i afd. B",
            "priority": "high",
            "estimated_minutes": 30,
            "assigned_reason": "SLA udløber om 40 minutter"
        }
