// app/api/devices/[id]/history/route.ts import { NextResponse } from 'next/server'; import { prisma } from '@/lib/prisma'; export async function GET( _req: Request, { params }: { params: { id: string } }, ) { // In der URL ist "id" = inventoryNumber const inventoryNumber = decodeURIComponent(params.id); try { const history = await prisma.deviceHistory.findMany({ where: { deviceId: inventoryNumber }, include: { changedBy: true, }, orderBy: { changedAt: 'desc', }, }); // Auf das Format für DeviceHistorySidebar mappen const payload = history.map((entry) => ({ id: entry.id, changeType: entry.changeType, changedAt: entry.changedAt.toISOString(), changedBy: entry.changedBy?.name ?? entry.changedBy?.username ?? entry.changedBy?.email ?? null, })); // Auch bei leerer Liste 200 + [] zurückgeben return NextResponse.json(payload); } catch (err) { console.error('[GET /api/devices/[id]/history]', err); return NextResponse.json({ error: 'INTERNAL_ERROR' }, { status: 500 }); } }