v3.5.1 版本更新
CI / verify (pull_request) Has been cancelled

This commit is contained in:
2026-08-19 15:54:51 +08:00
parent 7dd5fdfb12
commit 233ed0af3b
103 changed files with 5764 additions and 185 deletions
@@ -1,5 +1,6 @@
import { useEffect, useMemo, useState } from 'react';
import { View, Text } from '@tarojs/components';
import '../../styles/order.css';
import Taro, { useDidShow, useRouter, useShareAppMessage, useShareTimeline } from '@tarojs/taro';
import PageShell from '../../components/PageShell';
import SubPageHeader from '../../components/SubPageHeader';
@@ -27,6 +28,7 @@ import {
toWeappShareTimeline,
} from '../../lib/wechat-share';
import { usePageView } from '../../lib/usePageView';
import type { InvoiceStatus } from '@dukang/shared-types';
const isWeapp = process.env.TARO_ENV === 'weapp';
@@ -58,6 +60,7 @@ type OrderDetail = {
deliveryType?: string;
items?: OrderItem[];
wechatConfirm?: WechatConfirmPayload | null;
invoiceStatus?: InvoiceStatus | null;
delivery?: {
provider?: string;
trackingNo?: string;
@@ -150,6 +153,9 @@ export default function OrderDetailPage() {
const canPay = !!order && order.status === 'PENDING_PAY' && !isReship;
const canConfirmReceive =
!!order && !isReship && !isProxy && ['PENDING_RECEIVE', 'DELIVERED'].includes(order.status || '');
const canInvoice =
!!order && !isReship && order.status === 'COMPLETED' && order.invoiceStatus !== 'PENDING' && order.invoiceStatus !== 'ISSUED';
const invoicePending = !!order && !isReship && order.status === 'COMPLETED' && order.invoiceStatus === 'PENDING';
const canViewLogistics =
!!order &&
order.deliveryType !== 'ON_SITE_PICKUP' &&
@@ -403,6 +409,22 @@ export default function OrderDetailPage() {
{confirming ? '提交中…' : '确认收货'}
</View>
) : null}
{canInvoice ? (
<View
className="order-detail-invoice-btn"
onClick={() => Taro.navigateTo({ url: `/pages/invoice-apply/index?orderId=${order.id}` })}
>
</View>
) : null}
{invoicePending ? (
<View
className="order-detail-invoice-status"
onClick={() => Taro.navigateTo({ url: `/pages/invoice-apply/index?orderId=${order.id}` })}
>
</View>
) : null}
</View>
) : null}
</PageShell>