Ticket ของฉัน
รอชำระเงิน
} {pending.map((checkout) =>Ticket ที่ชำระเงินแล้ว
{tickets.length === 0 &&ยังไม่มี Ticket
} {tickets.map(({ ticket, amount }) =>import Link from "next/link"; import { and, desc, eq, gt, isNull } from "drizzle-orm"; import { redirect } from "next/navigation"; import { connection } from "next/server"; import { getDb } from "@/db"; import { commissionCheckouts, commissionTickets } from "@/db/schema"; import { CommissionLiveRefresh } from "@/components/commission/live-refresh"; import { CommissionSignOut } from "@/components/commission/sign-out"; import { SiteHeader } from "@/components/public/site-header"; import { Badge } from "@/components/ui/badge"; import { Card, CardAction, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { getCustomerSession } from "@/lib/auth/server"; import { CHECKOUT_DURATION_MS, checkoutNow } from "@/lib/commission/checkout-expiration"; export const instant = false; export default async function CommissionTicketsPage() { await connection(); const session = await getCustomerSession(); if (!session) redirect("/login?next=%2Fcommission%2Ftickets"); const [tickets, pending] = await Promise.all([ getDb().select({ ticket: commissionTickets, amount: commissionCheckouts.amountBaht }) .from(commissionTickets).innerJoin(commissionCheckouts, eq(commissionTickets.checkoutId, commissionCheckouts.id)) .where(eq(commissionTickets.userId, session.user.id)).orderBy(desc(commissionTickets.updatedAt)).limit(50), getDb().select({ id: commissionCheckouts.id, amount: commissionCheckouts.amountBaht, createdAt: commissionCheckouts.createdAt }).from(commissionCheckouts) .leftJoin(commissionTickets, eq(commissionTickets.checkoutId, commissionCheckouts.id)) .where(and(eq(commissionCheckouts.userId, session.user.id), isNull(commissionTickets.id), gt(commissionCheckouts.createdAt, new Date(checkoutNow() - CHECKOUT_DURATION_MS)))) .orderBy(desc(commissionCheckouts.createdAt)).limit(20), ]); return
ยังไม่มี Ticket
} {tickets.map(({ ticket, amount }) =>