import { NextResponse } from 'next/server'; import { supabaseAdmin } from '@/lib/supabase'; // POST /api/admin/jobs - Create a new job (ServiceRecord) export async function POST(request: Request) { try { const body = await request.json(); const { vehicleId, metadata } = body; // Create the ServiceRecord (status defaults to 0 = pending) const { data: serviceRecord, error: recordError } = await supabaseAdmin .from('ServiceRecords') .insert({ vehicle: vehicleId, metadata: metadata || null, status: 0, // Pending }) .select() .single(); if (recordError) { console.error('Supabase error creating ServiceRecord:', recordError); return NextResponse.json( { error: 'Failed to create service record', details: recordError.message }, { status: 500 } ); } return NextResponse.json( { message: 'Job created successfully', serviceRecord }, { status: 201 } ); } catch (error) { console.error('Error creating job:', error); return NextResponse.json( { error: 'Failed to create job' }, { status: 500 } ); } } // GET /api/admin/jobs - Get all jobs export async function GET() { try { const { data, error } = await supabaseAdmin .from('ServiceRecords') .select(` *, Vehicles (*) `) .order('created_at', { ascending: false }); if (error) { console.error('Supabase error:', error); return NextResponse.json( { error: 'Failed to fetch jobs', details: error.message }, { status: 500 } ); } return NextResponse.json(data || []); } catch (error) { console.error('Error fetching jobs:', error); return NextResponse.json( { error: 'Failed to fetch jobs' }, { status: 500 } ); } }