} function consumeStoredTab(): void { const storedTab = uni.getStorageSync('delivery_orders_tab') as string | null if (storedTab != null && storedTab != '') { uni.removeStorageSync('delivery_orders_tab') applyTab(storedTab) } } function getEmptyText(): string { if (currentTab.value == 'pending_accept') { return '暂无待接单工单' } if (currentTab.value == 'accepted') { return '暂无待出发工单' } if (currentTab.value == 'serving') { return '暂无服务中工单' } if (currentTab.value == 'pending_submit') { return '暂无待提交工单' } if (currentTab.value == 'completed') { return '暂无已完成工单' } if (currentTab.value == 'exception') { return '暂无异常工单' } return '暂无工单' } function formatRiskTags(tags: Array): string { if (tags.length == 0) { return '常规服务' } return tags.join(' / ') } function getPrimaryActionText(status: string): string { if (status == 'pending_accept') { return '立即接单' } if (status == 'accepted') { return '准备出发' } if (status == 'on_the_way' || status == 'arrived') { return '去签到' } if (status == 'checked_in' || status == 'serving' || status == 'pending_submit' || status == 'pending_acceptance') { return '继续服务' } if (status == 'exception_pending') { return '处理异常' } if (status == 'completed' || status == 'settled' || status == 'archived') { return '查看结果' } return '查看详情' } function getPrimaryActionClass(status: string): string { if (status == 'pending_accept') { return 'action-warning' } if (status == 'accepted' || status == 'on_the_way' || status == 'arrived') { return 'action-primary' } if (status == 'checked_in' || status == 'serving' || status == 'pending_submit' || status == 'pending_acceptance') { return 'action-teal' } if (status == 'exception_pending') { return 'action-danger' } if (status == 'completed' || status == 'settled' || status == 'archived') { return 'action-success' } return 'action-default' } function getStatusSurfaceClass(status: string): string { if (status == 'pending_accept') { return 'status-surface-warning' } if (status == 'accepted' || status == 'on_the_way' || status == 'arrived') { return 'status-surface-primary' } if (status == 'checked_in' || status == 'serving' || status == 'pending_submit' || status == 'pending_acceptance') { return 'status-surface-teal' } if (status == 'exception_pending') { return 'status-surface-danger' } if (status == 'completed' || status == 'settled' || status == 'archived') { return 'status-surface-success' } return 'status-surface-default' } async function loadData() { const authResult = await requireDeliveryAuth({ redirectOnFail: true, toastOnFail: true }) if (!authResult.ok) { return } orders.value = await getDeliveryOrders({ tab: currentTab.value, keyword: '' }) } function switchTab(tab: string) { if (currentTab.value == tab) { return } applyTab(tab) loadData() } function goDetail(id: string) { uni.navigateTo({ url: '/pages/mall/delivery/orders/detail?id=' + id }) } function goRoute(id: string) { uni.navigateTo({ url: '/pages/mall/delivery/orders/route?id=' + id }) } function goCheckin(id: string) { uni.navigateTo({ url: '/pages/mall/delivery/orders/checkin?id=' + id }) } function goExecute(id: string) { uni.navigateTo({ url: '/pages/mall/delivery/orders/execute?id=' + id }) } function acceptOrder(id: string) { uni.showModal({ title: '确认接单', content: '接单后将展示完整服务对象信息,并进入待出发状态。', success: async (result) => { if (result.confirm) { await acceptDeliveryOrder(id) uni.showToast({ title: '接单成功', icon: 'success' }) loadData() } } }) } onLoad((options) => { let routeTab = '' if (options != null) { const tab = getDeliveryRouteParam(options as UTSJSONObject, 'tab') if (tab != null && tab != '') { routeTab = tab } } if (routeTab != '') { uni.removeStorageSync('delivery_orders_tab') applyTab(routeTab) } else { consumeStoredTab() } loadData() }) onShow(() => { consumeStoredTab() loadData() })