优化
This commit is contained in:
@@ -138,7 +138,7 @@ async function exportAllBuy() {
|
||||
actionLoading.value = true; actionError.value = null
|
||||
try {
|
||||
const task = await createPlatformExportTask({
|
||||
exportType: 'LOADING_LIST_BUY_DECLARATION_ITEMS', format: 'XLSX', taskName: `买单报关-${customs.value?.planNo || props.loadingPlanId}`,
|
||||
exportType: 'LOADING_LIST_BUY_DECLARATION_ITEMS', format: 'XLSX', taskName: `买单报关-${customs.value?.planNo || '柜级明细'}`,
|
||||
parameters: { loadingPlanId: String(props.loadingPlanId) },
|
||||
})
|
||||
ElMessage.success(`买单报关导出任务已创建:${task.taskNo}`)
|
||||
|
||||
@@ -11,8 +11,12 @@ import AppDialog from '@/shared/components/AppDialog.vue'
|
||||
import LoadErrorState from '@/shared/components/LoadErrorState.vue'
|
||||
import StatusBadge from '@/shared/components/StatusBadge.vue'
|
||||
import { CarrierScheduleQueryPanel } from '@/modules/port-schedules'
|
||||
import { confirmContainerOutboundDispatch, getContainerOutboundDispatch } from '@/modules/outbound-dispatch/api/platformOutboundDispatch'
|
||||
import type { ContainerOutboundDispatchDetail, ContainerOutboundGateItem } from '@/modules/outbound-dispatch/types'
|
||||
import {
|
||||
confirmContainerOutboundDispatch,
|
||||
getContainerOutboundDispatch,
|
||||
type ContainerOutboundDispatchDetail,
|
||||
type ContainerOutboundGateItem,
|
||||
} from '@/modules/outbound-dispatch'
|
||||
import ContainerCustomsPanel from '../components/ContainerCustomsPanel.vue'
|
||||
import ContainerOverviewPanel from '../components/ContainerOverviewPanel.vue'
|
||||
import {
|
||||
|
||||
@@ -88,7 +88,7 @@ type SmartLoadingCandidateRow = SmartLoadingCandidate & { sourceCandidates: Smar
|
||||
function memberOrderSummaries<T extends { orderId: string; orderNo?: string | null; inboundCode?: string | null }>(members: T[]) {
|
||||
const orders = new Map<string, { label: string; inboundCodes: string[] }>()
|
||||
for (const member of members) {
|
||||
const current = orders.get(member.orderId) || { label: member.orderNo || member.orderId, inboundCodes: [] }
|
||||
const current = orders.get(member.orderId) || { label: member.orderNo || '订单编码待补充', inboundCodes: [] }
|
||||
const inboundCode = member.inboundCode || '入仓码暂缺'
|
||||
if (!current.inboundCodes.includes(inboundCode)) current.inboundCodes.push(inboundCode)
|
||||
orders.set(member.orderId, current)
|
||||
@@ -626,7 +626,7 @@ onMounted(() => { void load(); void loadCustomers() })
|
||||
<span class="container-option__identity">柜次号:{{ displayCabinetNo(item) }}</span>
|
||||
<span>集装箱号:{{ displayActualContainerNo(item) }}</span>
|
||||
<span>渠道:{{ item.channelName || item.channelCode || '渠道待补充' }}</span>
|
||||
<span>仓库:{{ item.warehouseName || item.warehouseId || '仓库待补充' }} · 柜型:{{ item.containerType || '柜型待补充' }}</span>
|
||||
<span>仓库:{{ item.warehouseName || '仓库待补充' }} · 柜型:{{ item.containerType || '柜型待补充' }}</span>
|
||||
<!-- 空柜的操作时机由状态和操作按钮表达,不在每张柜次卡片重复提示。 -->
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -49,7 +49,7 @@ type SmartLoadingCandidateRow = SmartLoadingCandidate & { sourceCandidates: Smar
|
||||
function memberOrderSummaries<T extends { orderId: string; orderNo?: string | null; inboundCode?: string | null }>(members: T[]) {
|
||||
const orders = new Map<string, { label: string; inboundCodes: string[] }>()
|
||||
for (const member of members) {
|
||||
const current = orders.get(member.orderId) || { label: member.orderNo || member.orderId, inboundCodes: [] }
|
||||
const current = orders.get(member.orderId) || { label: member.orderNo || '订单编码待补充', inboundCodes: [] }
|
||||
const inboundCode = member.inboundCode || '入仓码暂缺'
|
||||
if (!current.inboundCodes.includes(inboundCode)) current.inboundCodes.push(inboundCode)
|
||||
orders.set(member.orderId, current)
|
||||
|
||||
Reference in New Issue
Block a user