"use client" import * as React from "react" import { Skeleton } from "@/components/ui/skeleton" import { ShoppingBag } from "lucide-react" import type { GetMerchantOrderResponse } from "@/lib/services" /** * 加载中骨架组件 * 显示活动信息加载中的骨架 */ function LoadingSkeleton() { return (
) } /** * 活动信息组件 * 显示活动信息 */ function OrderContent({ orderInfo, forceMobile = false }: { orderInfo: GetMerchantOrderResponse, forceMobile?: boolean }) { const amount = parseFloat(orderInfo.order.amount).toFixed(2) const feeRateValue = orderInfo.user_pay_config?.fee_rate const feeRate = feeRateValue ? (parseFloat(feeRateValue) * 100).toFixed(2) : '0.00' return (
服务方 {orderInfo.merchant.app_name}

LDC {amount}

{orderInfo.order.order_name}

数量: 1

LDC {amount}

LDC {amount} / 个

积分合计

LDC {amount}

* 包含 {feeRate}% 的服务手续费 (由服务方承担)。
服务手续费率根据服务方等级和平台活动动态调整,不会消耗您(消费者)的积分。

) } /** * 活动信息组件 * 显示活动信息 */ export function PayingInfo({ orderInfo, loading = false, forceMobile = false }: { orderInfo: GetMerchantOrderResponse, loading: boolean, forceMobile?: boolean }) { return (
{loading ? (
) : ( <>
服务方 {orderInfo.merchant.app_name}
LDC {(parseFloat(orderInfo.order.amount)).toFixed(2)}
)}
{loading ? : }
{!loading && (
{orderInfo.order.order_name}
)}
ORDER: {orderInfo?.order?.order_no || 'LOADING...'}
) }