// app/api/events/[id]/results/route.ts import { query } from '@/lib/db'; import { NextResponse } from 'next/server'; export const dynamic = 'force-dynamic'; export async function GET( request: Request, { params }: { params: { id: string } } ) { try { const standingsSql = ` SELECT tcs.team_id, t.name as team_name, tcs.total_points, tcs.races_participated, tcs.best_finish, json_agg( json_build_object( 'driver_guid', u.driver_guid, 'driver_name', u.driver_name, 'position', er.position, 'points_awarded', er.points_awarded, 'laps_completed', er.laps_completed, 'dnf', er.dnf ) ORDER BY er.position ASC ) as drivers FROM team_championship_standings tcs JOIN teams t ON tcs.team_id = t.id LEFT JOIN event_results er ON tcs.event_id = er.event_id AND tcs.team_id = er.team_id LEFT JOIN users u ON er.driver_guid = u.driver_guid WHERE tcs.event_id = $1 GROUP BY tcs.team_id, t.name, tcs.total_points, tcs.races_participated, tcs.best_finish ORDER BY tcs.total_points DESC, tcs.best_finish ASC `; const standings = await query(standingsSql, [params.id]); return NextResponse.json({ standings }); } catch (error) { console.error('[Event Results API] Error:', error); return NextResponse.json({ error: 'Failed to fetch results' }, { status: 500 }); } }