diff --git a/prisma/migrations/20260303000000_add_user_notes/migration.sql b/prisma/migrations/20260303000000_add_user_notes/migration.sql new file mode 100644 index 0000000..fcac282 --- /dev/null +++ b/prisma/migrations/20260303000000_add_user_notes/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "orders" ADD COLUMN "user_notes" TEXT; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 03b2d33..1dba27e 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -11,6 +11,7 @@ model Order { userId Int @map("user_id") userEmail String? @map("user_email") userName String? @map("user_name") + userNotes String? @map("user_notes") amount Decimal @db.Decimal(10, 2) rechargeCode String @unique @map("recharge_code") status OrderStatus @default(PENDING) diff --git a/src/app/admin/page.tsx b/src/app/admin/page.tsx index 2d20e32..f4689f6 100644 --- a/src/app/admin/page.tsx +++ b/src/app/admin/page.tsx @@ -12,6 +12,7 @@ interface AdminOrder { userId: number; userName: string | null; userEmail: string | null; + userNotes: string | null; amount: number; status: string; paymentType: string; diff --git a/src/app/api/admin/orders/route.ts b/src/app/api/admin/orders/route.ts index 5e59262..df7e82c 100644 --- a/src/app/api/admin/orders/route.ts +++ b/src/app/api/admin/orders/route.ts @@ -34,6 +34,7 @@ export async function GET(request: NextRequest) { userId: true, userName: true, userEmail: true, + userNotes: true, amount: true, status: true, paymentType: true, diff --git a/src/components/admin/OrderTable.tsx b/src/components/admin/OrderTable.tsx index 43c4c23..20e7b36 100644 --- a/src/components/admin/OrderTable.tsx +++ b/src/components/admin/OrderTable.tsx @@ -5,6 +5,7 @@ interface Order { userId: number; userName: string | null; userEmail: string | null; + userNotes: string | null; amount: number; status: string; paymentType: string; @@ -48,7 +49,9 @@ export default function OrderTable({ orders, onRetry, onCancel, onViewDetail, da 订单号 - 用户 + 用户名 + 邮箱 + 备注 金额 状态 支付方式 @@ -71,10 +74,11 @@ export default function OrderTable({ orders, onRetry, onCancel, onViewDetail, da {order.id.slice(0, 12)}... - -
{order.userName || '-'}
-
{order.userEmail || `ID: ${order.userId}`}
+ + {order.userName || `#${order.userId}`} + {order.userEmail || '-'} + {order.userNotes || '-'} ¥{order.amount.toFixed(2)} diff --git a/src/lib/order/service.ts b/src/lib/order/service.ts index 8613bab..8f31487 100644 --- a/src/lib/order/service.ts +++ b/src/lib/order/service.ts @@ -102,6 +102,7 @@ export async function createOrder(input: CreateOrderInput): Promise