import { Badge } from "@/components/ui/badge"; import { prisma } from "@/lib/prisma"; const statusStyles: Record = { ACCEPTED: "bg-sky-500/20 text-sky-700 border-sky-500/40 dark:bg-sky-500/15 dark:text-sky-300 dark:border-sky-500/30", INPROGRESS: "bg-amber-500/20 text-amber-700 border-amber-500/40 dark:bg-amber-500/15 dark:text-amber-300 dark:border-amber-500/30", COMPLETED: "bg-emerald-500/20 text-emerald-700 border-emerald-500/40 dark:bg-emerald-500/15 dark:text-emerald-300 dark:border-emerald-500/30", }; const statusLabels: Record = { ACCEPTED: "Accepted", INPROGRESS: "In progress", COMPLETED: "Completed", }; export default async function CommissionStatusPage() { const [queueItems, doneItems] = await Promise.all([ prisma.commissionRequest.findMany({ where: { status: { in: ["ACCEPTED", "INPROGRESS"] } }, include: { type: true, option: true, extras: true, customCard: true }, orderBy: { createdAt: "desc" }, }), prisma.commissionRequest.findMany({ where: { status: "COMPLETED" }, include: { type: true, option: true, extras: true, customCard: true }, orderBy: { createdAt: "desc" }, }), ]); return (

Commission Status

Commissions Queue

Accepted and in progress

{queueItems.length > 0 ? ( queueItems.map((item) => (
{item.customerName}
{item.customCard?.name ?? item.type?.name ?? "Custom"} {item.option?.name ?? "Base option"} {item.extras.map((extra) => ( {extra.name} ))} {item.extras.length === 0 ? ( No extras ) : null} {statusLabels[item.status] ?? item.status}
)) ) : (
No public items yet.
)}

Done

{doneItems.length > 0 ? ( doneItems.map((item) => (
{item.customerName}
{item.customCard?.name ?? item.type?.name ?? "Custom"} {item.option?.name ?? "Base option"} {item.extras.map((extra) => ( {extra.name} ))} {item.extras.length === 0 ? ( No extras ) : null} {statusLabels[item.status] ?? item.status}
)) ) : (
No completed items yet.
)}
); }