diff --git a/src/pages/order/detail.tsx b/src/pages/order/detail.tsx index eff607f..4d3bc2f 100644 --- a/src/pages/order/detail.tsx +++ b/src/pages/order/detail.tsx @@ -41,6 +41,13 @@ const DELIVERY_STATUS_MAP: Record = { 30: '部分发货', } +// 配送方式映射: 0=快递配送, 1=无需发货/自提, 2=商家送货 +const DELIVERY_TYPE_MAP: Record = { + 0: '快递配送', + 1: '自提', + 2: '商家送货', +} + /** 根据订单状态计算展示用的状态标签 */ const getOrderDisplayStatus = (order: ShopOrder): { title: string; bgColor: string; subtitle: string } => { const { payStatus, deliveryStatus, orderStatus, payType } = order @@ -245,7 +252,8 @@ const OrderDetailPage: React.FC = () => { const displayStatus = getOrderDisplayStatus(order) const phase = getOrderPhase(order) - const isExpress = order.deliveryType === 0 || order.deliveryType === undefined + // deliveryType: 0=快递配送, 1=无需发货/自提, 2=商家送货 + const isExpress = order.deliveryType === 0 || order.deliveryType === 2 || order.deliveryType === undefined const goodsCount = order.orderGoods?.reduce((sum, g) => sum + (g.totalNum || 1), 0) || 0 return ( @@ -274,13 +282,16 @@ const OrderDetailPage: React.FC = () => { {isExpress ? ( - 📦 + {order.deliveryType === 2 ? '🛵' : '📦'} {order.realName || '未知'} {order.mobile || order.phone || '-'} {order.address || '未填写收货地址'} + {order.deliveryType === 2 && order.expressMerchantName && ( + 配送门店: {order.expressMerchantName} + )} {(order.sendStartTime || order.sendEndTime) && ( 期望配送: {order.sendStartTime?.slice(0, 10)} ~ {order.sendEndTime?.slice(0, 10)} @@ -389,6 +400,10 @@ const OrderDetailPage: React.FC = () => { 发货状态 {DELIVERY_STATUS_MAP[order.deliveryStatus ?? 10]} + + 配送方式 + {DELIVERY_TYPE_MAP[order.deliveryType ?? 0] || '未知'} + 创建时间 {formatTime(order.createTime)}