﻿import { NextRequest, NextResponse } from 'next/server';
import { prisma } from '@/lib/prisma';

export async function GET(request: NextRequest) {
  try {
    const { searchParams } = new URL(request.url);
    const employeeId = searchParams.get('employeeId');
    
    let where: any = {};
    if (employeeId) {
      where.employeeId = employeeId;
    }
    
    const records = await prisma.trainingRecord.findMany({
      where,
      orderBy: { completionDate: 'desc' }
    });
    
    return NextResponse.json(records);
  } catch (error) {
    console.error('Error fetching training records:', error);
    return NextResponse.json({ error: 'Failed to fetch training records' }, { status: 500 });
  }
}

export async function POST(request: NextRequest) {
  try {
    const body = await request.json();
    
    const record = await prisma.trainingRecord.create({
      data: {
        employeeId: body.employeeId,
        employeeName: body.employeeName,
        dept: body.dept,
        courseName: body.courseName,
        provider: body.provider,
        completionDate: new Date(body.completionDate),
        certStatus: body.certStatus || 'Missing',
        hoursAwarded: body.hoursAwarded || 0,
        cost: body.cost || 0,
      }
    });
    
    return NextResponse.json(record, { status: 201 });
  } catch (error) {
    console.error('Error creating training record:', error);
    return NextResponse.json({ error: 'Failed to create training record' }, { status: 500 });
  }
}
