"""Per-picker performance stats, computed from their real delivered orders —
no separate tracking table needed, this is all derived from pickker_orders."""

from accounts.supabase_client import get_client


def get_picker_performance(picker_id):
    rows = (
        get_client()
        .table('pickker_orders')
        .select('delivery_address, eta_traffic_min')
        .eq('picker_id', picker_id)
        .eq('status', 'delivered')
        .execute()
        .data
    )
    deliveries = len(rows)
    total_minutes = sum(r.get('eta_traffic_min') or 0 for r in rows)
    places = len({r['delivery_address'] for r in rows if r.get('delivery_address')})
    return {
        'deliveries': deliveries,
        'hours': round(total_minutes / 60, 1),
        'places': places,
    }
