diff --git a/app/(auth)/login/page.tsx b/app/(auth)/login/page.tsx index eb63f70..d455043 100644 --- a/app/(auth)/login/page.tsx +++ b/app/(auth)/login/page.tsx @@ -9,6 +9,7 @@ import { z } from "zod" import { Button } from "@/components/ui/button" import { Input } from "@/components/ui/input" import { Label } from "@/components/ui/label" +import { currentUser } from "@/lib/mock-data" import { useAuthStore } from "@/store/auth" const loginSchema = z.object({ @@ -29,7 +30,7 @@ export default function LoginPage() { const onSubmit = async (_data: z.infer) => { await new Promise((r) => setTimeout(r, 500)) - login() + login(currentUser, ["consumer", "player", "owner"]) router.push("/") } diff --git a/app/(order)/orders/page.tsx b/app/(order)/orders/page.tsx index a51f896..0d31c37 100644 --- a/app/(order)/orders/page.tsx +++ b/app/(order)/orders/page.tsx @@ -7,22 +7,12 @@ import { Badge } from "@/components/ui/badge" import { Button } from "@/components/ui/button" import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs" +import { statusLabels } from "@/lib/constants" import { mockChatSessions, mockOrders } from "@/lib/mock-data" import type { OrderStatus } from "@/lib/types" import { cn } from "@/lib/utils" import { useAuthStore } from "@/store/auth" -const statusLabels: Record = { - pending_payment: "待支付", - pending_accept: "待接单", - in_progress: "进行中", - pending_close: "待结单", - pending_review: "待评价", - disputed: "争议中", - completed: "已完成", - cancelled: "已取消", -} - const statusColors: Record = { pending_payment: "bg-yellow-100 text-yellow-800", pending_accept: "bg-blue-100 text-blue-800", diff --git a/lib/mock-data.ts b/lib/mock-data.ts index 4c4d774..2544362 100644 --- a/lib/mock-data.ts +++ b/lib/mock-data.ts @@ -24,7 +24,7 @@ export const mockUsers: User[] = [ avatar: "/avatars/u1.jpg", role: "consumer", phone: "138****1234", - bio: "下班打两把,周末经常熬夜", + bio: "工作日打两三把,周末偶尔通宵", createdAt: "2025-01-15", }, { @@ -34,7 +34,7 @@ export const mockUsers: User[] = [ avatar: "/avatars/u2.jpg", role: "player", phone: "139****5678", - bio: "主打峡谷双排,逆风也会认真打", + bio: "晚上在线多,逆风不摆,能语音更快", createdAt: "2024-11-20", }, { @@ -44,7 +44,7 @@ export const mockUsers: User[] = [ avatar: "/avatars/u3.jpg", role: "owner", phone: "137****9012", - bio: "白天管店,晚上回消息慢一点", + bio: "店里就三个人,忙的时候回消息会慢点", createdAt: "2024-08-10", }, { @@ -53,7 +53,7 @@ export const mockUsers: User[] = [ nickname: "阿辰", avatar: "/avatars/u4.jpg", role: "player", - bio: "练枪党,报点快,话不多", + bio: "主狙和突破都打,报点直给", createdAt: "2025-02-01", }, { @@ -62,7 +62,7 @@ export const mockUsers: User[] = [ nickname: "甜甜酱", avatar: "/avatars/u5.jpg", role: "player", - bio: "主辅和原神日常,社恐但不摆烂", + bio: "主辅+原神日常,社恐,但会认真打", createdAt: "2025-01-05", }, ] @@ -84,8 +84,8 @@ export const mockServices: PlayerService[] = [ playerId: "u2", gameId: "g1", gameName: "英雄联盟", - title: "LOL双排冲分", - description: "我打野和中路都行,逆风不甩锅,打完会说两句思路", + title: "LOL双排稳一点上分", + description: "主打野/中,前两把先磨合。逆风会讲思路,不闷着。", price: 33, unit: "局", rankRange: "铂金-大师", @@ -96,9 +96,9 @@ export const mockServices: PlayerService[] = [ playerId: "u2", gameId: "g2", gameName: "王者荣耀", - title: "王者补位上星", - description: "单排连跪就来组队,能补位,想冲几星先聊清楚", - price: 29, + title: "王者补位冲星", + description: "连跪想止损就来,射手辅助都能补。冲几星先说,我按你节奏来。", + price: 27, unit: "星", rankRange: "星耀-王者80星", availability: ["每天 18:30-00:30"], @@ -109,8 +109,8 @@ export const mockServices: PlayerService[] = [ gameId: "g3", gameName: "CS2", title: "CS2车队位", - description: "不整花活,先报点再打,节奏比较快", - price: 58, + description: "语音里先报点,残局我来喊。不开喷,失误就下一把拉回来。", + price: 57, unit: "局", rankRange: "白银-超凡", availability: ["每天 15:00-01:00"], @@ -121,8 +121,8 @@ export const mockServices: PlayerService[] = [ gameId: "g1", gameName: "英雄联盟", title: "LOL轻松双排", - description: "主辅位,能聊也能安静打,连跪会及时换玩法", - price: 23, + description: "主辅位,偏保人打法。想聊天就聊,不想说话也行。", + price: 22, unit: "局", availability: ["周末 11:00-23:30"], }, @@ -132,8 +132,8 @@ export const mockServices: PlayerService[] = [ gameId: "g5", gameName: "原神", title: "原神日常清体力", - description: "委托、树脂、活动都能代,做完会发截图", - price: 17, + description: "每日委托、树脂、活动本都能清。做完发截图,不乱动你号。", + price: 19, unit: "次", availability: ["工作日 21:00-24:00", "周末白天可"], }, @@ -185,16 +185,16 @@ export const mockShops: Shop[] = [ owner: mockUsers[2], name: "王者电竞工作室", banner: "/banners/shop1.jpg", - description: "店里人不算多,主打晚间在线,接单后会先确认你的需求", - rating: 4.3, - totalOrders: 210, + description: "晚上在线的人多一点,接单前会先问清楚你想怎么打。", + rating: 4.4, + totalOrders: 68, playerCount: 7, commissionType: "percentage", commissionValue: 15, allowMultiShop: false, allowIndependentOrders: true, dispatchMode: "manual", - announcements: ["晚高峰单子多,排队会慢一点", "这周新加了原神代肝档位"], + announcements: ["晚上9点后单子多,等位可能会慢", "这周加了原神日常代清,截图回传"], templateConfig: { sections: [ { type: "banner", enabled: true, order: 0 },