From e9a1bb4dac53626bc5d5bea24b8e1952d0458e62 Mon Sep 17 00:00:00 2001 From: zetaloop Date: Sat, 25 Apr 2026 21:32:04 +0800 Subject: [PATCH] feat(ui): refine order management pages --- .../dashboard/shop/orders/page.tsx | 65 ++++++++++---- app/(order)/dispute/[id]/page.tsx | 84 ++++++++++++------- 2 files changed, 105 insertions(+), 44 deletions(-) diff --git a/app/(dashboard)/dashboard/shop/orders/page.tsx b/app/(dashboard)/dashboard/shop/orders/page.tsx index 457c499..2c302aa 100644 --- a/app/(dashboard)/dashboard/shop/orders/page.tsx +++ b/app/(dashboard)/dashboard/shop/orders/page.tsx @@ -1,8 +1,9 @@ "use client" -import { Badge } from "@/components/ui/badge" import { Button } from "@/components/ui/button" import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" +import { EmptyState } from "@/components/ui/empty-state" +import { StatusBadge, type StatusBadgeProps } from "@/components/ui/status-badge" import { Table, TableBody, @@ -21,6 +22,17 @@ import { AlertCircle, CheckCircle, Clock, ListOrdered } from "lucide-react" import Link from "next/link" import { useEffect, useMemo, useState } from "react" +const orderStatusVariants: Record = { + pending_payment: "warning", + pending_accept: "info", + in_progress: "success", + pending_close: "info", + pending_review: "info", + disputed: "destructive", + completed: "success", + cancelled: "neutral", +} + export default function ShopOrdersPage() { const { shop, loading, error } = useMyShop() const [orders, setOrders] = useState>>([]) @@ -56,15 +68,27 @@ export default function ShopOrdersPage() { ) if (loading) { - return
加载中...
+ return ( +
+ +
+ ) } if (error) { - return
{error}
+ return ( +
+ +
+ ) } if (!shop) { - return
当前账号没有可管理的店铺
+ return ( +
+ +
+ ) } const totalOrders = shopOrders.length @@ -79,7 +103,7 @@ export default function ShopOrdersPage() {
- + 总订单 @@ -88,7 +112,7 @@ export default function ShopOrdersPage() {
{totalOrders}
- + 进行中 @@ -97,7 +121,7 @@ export default function ShopOrdersPage() {
{activeOrders}
- + 已完成 @@ -106,7 +130,7 @@ export default function ShopOrdersPage() {
{completedOrders}
- + 争议订单 @@ -117,7 +141,7 @@ export default function ShopOrdersPage() {
- + 订单列表 @@ -137,14 +161,19 @@ export default function ShopOrdersPage() { {ordersLoading ? ( - - 加载中... + + ) : shopOrders.length === 0 ? ( - - 暂无订单 + + ) : ( @@ -154,10 +183,14 @@ export default function ShopOrdersPage() { {order.consumerId} {order.playerId} - {statusLabels[order.status]} + + {statusLabels[order.status]} + + + ¥{order.totalPrice} + + {new Date(order.createdAt).toLocaleDateString()} - ¥{order.totalPrice} - {new Date(order.createdAt).toLocaleDateString()} @@ -332,7 +352,7 @@ export default function DisputePage({ params }: { params: Promise<{ id: string } {responseFiles.map((url, index) => (
+ } + />
) } @@ -472,10 +499,10 @@ export default function DisputePage({ params }: { params: Promise<{ id: string } 返回订单 - + - + 发起争议

{order.service.title}

@@ -504,7 +531,7 @@ export default function DisputePage({ params }: { params: Promise<{ id: string } />