diff --git a/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx b/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx index 12910326..666748cf 100644 --- a/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx +++ b/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx @@ -471,7 +471,7 @@ export default function WorkOrdersPanel() { function requestDeleteWorkOrder(row: WorkOrder) { modal.confirm({ - title: `确认删除工单 ${row.workOrderNo}?`, + title: `确认删除订单 ${getDisplayOrderNo(row)}?`, content: '删除后工单将从列表中移除,且不可恢复。仅未分配、待完善或已取消且无拼单参与的工单可删除。', okText: '确认删除', @@ -516,7 +516,7 @@ export default function WorkOrdersPanel() { ) : null} - {row.platformOrderId} · {row.workOrderNo} + {getDisplayOrderNo(row)} ) @@ -782,7 +782,7 @@ export default function WorkOrdersPanel() { setKeywordInput(event.target.value)} onPressEnter={searchOrders} @@ -852,7 +852,7 @@ export default function WorkOrdersPanel() { - - {detailOrder.workOrderNo} - - {detailOrder.platformOrderId || '-'} + {getDisplayOrderNo(detailOrder)} {detailOrder.orderId || '-'} @@ -1038,7 +1035,7 @@ export default function WorkOrdersPanel() { { setEditOrder(null) @@ -1126,7 +1123,7 @@ export default function WorkOrdersPanel() { { setDeductOrder(null) @@ -1484,6 +1481,10 @@ function formatUserPaymentAmount(order: WorkOrder): string { return paymentFen === null ? '-' : formatMoney(paymentFen) } +function getDisplayOrderNo(order: Pick | null | undefined): string { + return String(order?.platformOrderId || '').trim() || '-' +} + /** 用户付款金额(分);未知返回 null(不参与超价提示) */ function getUserPaymentFen(order: WorkOrder): number | null { const material = asRecord(order.material) @@ -1523,7 +1524,7 @@ function ProductNameEditableCell({ clickTimerRef.current = null } if (!editable) return - setDraft(order.productName || order.workOrderNo) + setDraft(order.productName || '') setEditing(true) } @@ -1558,7 +1559,7 @@ function ProductNameEditableCell({ onClick={handleClick} onDoubleClick={handleDoubleClick} > - {order.productName || order.workOrderNo} + {order.productName || '未命名商品'} ) } diff --git a/apps/frontend/src/pages/worker/WorkerHallPage.tsx b/apps/frontend/src/pages/worker/WorkerHallPage.tsx index f3c142c7..53a2175c 100644 --- a/apps/frontend/src/pages/worker/WorkerHallPage.tsx +++ b/apps/frontend/src/pages/worker/WorkerHallPage.tsx @@ -252,7 +252,7 @@ export default function WorkerHallPage() { } onChange={(event) => { const nextKeyword = event.target.value @@ -353,16 +353,16 @@ export default function WorkerHallPage() {
setDetailOrder(order)} > - {order.productName || order.workOrderNo} + {order.productName || '未命名商品'} {order.categoryName || '默认分类'} - 订单号:{order.platformOrderId || order.workOrderNo} + 订单号:{getDisplayOrderNo(order)}
@@ -471,7 +471,7 @@ export default function WorkerHallPage() { {detailOrder.categoryName || '-'} - - {detailOrder.workOrderNo} - - {detailOrder.platformOrderId || '-'} + {getDisplayOrderNo(detailOrder)} {formatMoney(detailOrder.rewardAmount)} @@ -678,6 +675,10 @@ function resolvePublishedTime(order: WorkOrder) { return order.publishedAt || order.createdAt || order.updatedAt } +function getDisplayOrderNo(order: Pick | null | undefined): string { + return String(order?.platformOrderId || '').trim() || '-' +} + function asRecord(value: unknown): Record { return value && typeof value === 'object' && !Array.isArray(value) ? (value as Record) diff --git a/apps/frontend/src/pages/worker/WorkerOrdersPage.tsx b/apps/frontend/src/pages/worker/WorkerOrdersPage.tsx index 63c35909..7bcf3fa7 100644 --- a/apps/frontend/src/pages/worker/WorkerOrdersPage.tsx +++ b/apps/frontend/src/pages/worker/WorkerOrdersPage.tsx @@ -270,17 +270,17 @@ export default function WorkerOrdersPage() { setDetailOrder(row)} - title={row.productName || row.workOrderNo} + title={row.productName || '未命名商品'} ellipsis > - {row.productName || row.workOrderNo} + {row.productName || '未命名商品'} {row.categoryName ? {row.categoryName} : null} {row.myShare ? 拼单 : null} - - {row.workOrderNo} + + {getDisplayOrderNo(row)} 接单:{formatDateTime(row.assignedAt)} @@ -518,7 +518,7 @@ export default function WorkerOrdersPage() { } onChange={(event) => { const nextValue = event.target.value @@ -584,7 +584,7 @@ export default function WorkerOrdersPage() { {detailOrder.categoryName || '-'} - - {detailOrder.workOrderNo} - - {detailOrder.platformOrderId || '-'} + {getDisplayOrderNo(detailOrder)} @@ -731,7 +728,7 @@ export default function WorkerOrdersPage() { { @@ -851,6 +848,10 @@ function hasSubmittedAcceptance(order: WorkOrder) { return order.status === 'pending_acceptance' } +function getDisplayOrderNo(order: Pick | null | undefined): string { + return String(order?.platformOrderId || '').trim() || '-' +} + function canCancelOrder(order: WorkOrder) { return !order.myShare && order.status === 'in_progress' }