diff --git a/app/(order)/order/[id]/page.tsx b/app/(order)/order/[id]/page.tsx index c400364..b4845bd 100644 --- a/app/(order)/order/[id]/page.tsx +++ b/app/(order)/order/[id]/page.tsx @@ -2,16 +2,16 @@ import { ArrowLeft, CheckCircle, Clock, Star } from "lucide-react" import Link from "next/link" -import { use, useEffect } from "react" +import { use, useEffect, useState } from "react" import OrderActions from "@/components/order-actions" import { Badge } from "@/components/ui/badge" import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" import { Separator } from "@/components/ui/separator" import { statusLabels } from "@/lib/constants" -import { mockReviews } from "@/lib/mock" import type { OrderStatus } from "@/lib/types" import { useChatStore } from "@/store/chat" import { useOrderStore } from "@/store/orders" +import { useReviewStore } from "@/store/reviews" const normalStatusSteps: OrderStatus[] = [ "pending_payment", @@ -37,6 +37,8 @@ export default function OrderDetailPage({ params }: { params: Promise<{ id: stri const order = useOrderStore((state) => state.orders.find((item) => item.id === id)) const sessions = useChatStore((state) => state.sessions) const ensureOrderSession = useChatStore((state) => state.ensureOrderSession) + const reviews = useReviewStore((state) => state.reviews.filter((item) => item.orderId === id)) + const [nowTs, setNowTs] = useState(Date.now()) useEffect(() => { if (!order) return @@ -44,6 +46,17 @@ export default function OrderDetailPage({ params }: { params: Promise<{ id: stri ensureOrderSession(order) }, [order, ensureOrderSession]) + useEffect(() => { + if (!order) return + if (order.status !== "pending_accept" && order.status !== "pending_close") return + + const timer = setInterval(() => { + setNowTs(Date.now()) + }, 1000) + + return () => clearInterval(timer) + }, [order]) + if (!order) { return (
双方评价已同步公开,可在订单详情查看。
+ + 返回订单详情 + +