"use server"; import { revalidatePath } from "next/cache"; import { prisma } from "@/lib/prisma"; import { logAdminAction } from "@/lib/audit-log"; import { requireAdmin, str, fail } from "./_shared"; import { setFlash } from "@/lib/flash"; export async function updateBusinessInquiryStatusAction(formData: FormData): Promise { const admin = await requireAdmin(); const id = str(formData, "id"); const status = str(formData, "status"); if (!["NEU", "IN_BEARBEITUNG", "ABGESCHLOSSEN", "ABGELEHNT"].includes(status)) return fail("/admin/anfragen", "Ungültiger Status."); await prisma.businessInquiry.update({ where: { id }, data: { status: status as "NEU" | "IN_BEARBEITUNG" | "ABGESCHLOSSEN" | "ABGELEHNT" }, }); await logAdminAction(admin, { action: "business_inquiry.status_change", entityType: "BusinessInquiry", entityId: id, detail: status, }); revalidatePath("/admin/anfragen"); await setFlash("success", "Status der Anfrage gespeichert."); }