优化
This commit is contained in:
@@ -747,7 +747,7 @@ function selectStatus(status: UnifiedOrderMainStatus | '' | 'MEASUREMENT_REVIEW'
|
||||
if (selectedTab.value === status) return
|
||||
ordersRequestSerial += 1
|
||||
measurementReviewSelected.value = status === 'MEASUREMENT_REVIEW'
|
||||
if (measurementReviewSelected.value) selectedOrders.value = []
|
||||
handleOrderSelectionChange([])
|
||||
if (status === 'MEASUREMENT_REVIEW') {
|
||||
return
|
||||
}
|
||||
@@ -1670,11 +1670,23 @@ function tabCount(value: UnifiedOrderMainStatus | '' | 'MEASUREMENT_REVIEW') {
|
||||
return value ? statusCounts.value[value] : undefined
|
||||
}
|
||||
|
||||
const measurementReviewOrders = ref<UnifiedOrderResource[]>([])
|
||||
let measurementReviewRequestSerial = 0
|
||||
|
||||
/** 保留审核列表对应的原始订单,工具栏操作复用同一客户、入库单和业务资格。 */
|
||||
async function loadMeasurementReviewTasks(pagination: { page: number; size: number }) {
|
||||
const serial = ++measurementReviewRequestSerial
|
||||
const result = await listPlatformUnifiedOrders({ ...orderCountFilters(), mainStatus: 'MEASUREMENT_REVIEW', ...pagination })
|
||||
if (serial === measurementReviewRequestSerial) measurementReviewOrders.value = result.records
|
||||
return { ...result, records: result.records.map(toMeasurementReviewTask) }
|
||||
}
|
||||
|
||||
/** 审核列表勾选映射回原始订单,避免混用其他页签的勾选数据。 */
|
||||
function handleMeasurementReviewSelection(rows: Array<{ id: string }>) {
|
||||
const ids = new Set(rows.map(row => String(row.id)))
|
||||
handleOrderSelectionChange(measurementReviewOrders.value.filter(row => ids.has(String(row.inboundId))))
|
||||
}
|
||||
|
||||
async function loadOrders(refreshCounts = true) {
|
||||
const serial = ++ordersRequestSerial
|
||||
if (refreshCounts) void loadStatusCounts()
|
||||
@@ -2862,7 +2874,14 @@ function orderDialogTitle(action: string, inboundCode?: string | null) {
|
||||
|
||||
<template v-else>
|
||||
<div v-if="measurementReviewSelected" id="unified-orders-results" class="orders-status-toolbar" role="tabpanel">
|
||||
<InboundTaskList ref="measurementReviewList" :task-loader="loadMeasurementReviewTasks" mode="review" title="订单列表" class="is-embedded" @changed="loadStatusCounts">
|
||||
<InboundTaskList ref="measurementReviewList" :task-loader="loadMeasurementReviewTasks" mode="review" title="订单列表" class="is-embedded" @changed="loadStatusCounts" @selection-change="handleMeasurementReviewSelection">
|
||||
<template #toolbar-actions="{ loading: reviewLoading }">
|
||||
<div v-if="can('platform:firstleg:smart-loading:assign')" class="coload-toolbar-action">
|
||||
<el-button type="primary" plain :loading="coLoadSaving" :disabled="reviewLoading || !canCreateCoLoadGroup" aria-label="合柜报关" @click="openCoLoadCreate"><Link2 :size="16" />合柜报关<span v-if="selectedOrders.length">({{ selectedOrders.length }})</span></el-button>
|
||||
</div>
|
||||
<el-button v-if="can('platform:firstleg:inbound:view')" :loading="printingCartonLabels" :disabled="reviewLoading || printingCartonLabels || !selectedCartonLabelOrders.length" @click="printSelectedCartonLabels"><Printer :size="16" />打印箱唛<span v-if="selectedCartonLabelOrders.length">({{ selectedCartonLabelOrders.length }})</span></el-button>
|
||||
<el-button v-if="can('platform:firstleg:smart-loading:list')" type="primary" @click="smartLoadingOpen = true"><PackageOpen :size="16" />智能装柜</el-button>
|
||||
</template>
|
||||
<template #status-tabs>
|
||||
<div ref="statusTabList" class="status-tabs density-status-tabs workbench-list-tabs" role="tablist" aria-label="订单主状态" :aria-busy="statusCountsLoading">
|
||||
<button
|
||||
|
||||
Reference in New Issue
Block a user