From 3e59898b0996b20cd5da8cec92bd89172c28b88e Mon Sep 17 00:00:00 2001 From: liuyihe <2513762445@qq.com> Date: Fri, 4 Sep 2026 14:48:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/UnifiedOrdersView.test.ts | 5 ++-- .../pages/UnifiedOrdersView.vue | 25 ++++++++----------- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/src/modules/unified-orders/pages/UnifiedOrdersView.test.ts b/src/modules/unified-orders/pages/UnifiedOrdersView.test.ts index f4317f72..4b9155f8 100644 --- a/src/modules/unified-orders/pages/UnifiedOrdersView.test.ts +++ b/src/modules/unified-orders/pages/UnifiedOrdersView.test.ts @@ -418,8 +418,9 @@ describe('UnifiedOrdersView contract', () => { expect(source).toContain('const measuredGrossWeight = Number(measurementDetail.value?.actualGrossWeightKg)') expect(source).toContain('const measuredNetWeight = Number(measurementDetail.value?.actualNetWeightKg)') expect(source).toContain('const actualVolume = Number(measurementDetail.value?.actualVolumeCbm)') - expect(source).toContain('feeConfirmWeight.value = measuredGrossWeight > 0') - expect(source).toContain('feeConfirmVolume.value = actualVolume > 0') + expect(source).toContain('feeConfirmWeight.value = Number(actualTotals.gross) > 0') + expect(source).toContain('feeConfirmVolume.value = Number(actualTotals.volume) > 0') + expect(source).toContain("{ source: '实际测量数据', count: actualTotals.count, weight: actualWeight, volume: actualVolume }") const sendFeeSource = source.slice(source.indexOf('async function executeConfirmAndSendFee()'), source.indexOf('function handleOrderSelectionChange')) expect(sendFeeSource).not.toContain('saveInboundMeasurementDraft') expect(sendFeeSource).not.toContain('updateMeasurementCalculationMode') diff --git a/src/modules/unified-orders/pages/UnifiedOrdersView.vue b/src/modules/unified-orders/pages/UnifiedOrdersView.vue index fbcb3e86..dcc4f23c 100644 --- a/src/modules/unified-orders/pages/UnifiedOrdersView.vue +++ b/src/modules/unified-orders/pages/UnifiedOrdersView.vue @@ -199,16 +199,16 @@ const feeConfirmRows = computed(() => { const summary = detail.value?.summary const measuredGrossWeight = Number(measurementDetail.value?.actualGrossWeightKg) const measuredNetWeight = Number(measurementDetail.value?.actualNetWeightKg) - const measuredVolume = Number(measurementDetail.value?.actualVolumeCbm) - const actualWeight = measuredGrossWeight > 0 - ? measuredGrossWeight - : measuredNetWeight > 0 ? measuredNetWeight : null - const actualVolume = measuredVolume > 0 ? measuredVolume : null + const actualTotals = measurementTotals(actualMeasurementRows.value) + const actualWeight = Number(actualTotals.gross) > 0 + ? actualTotals.gross + : measuredGrossWeight > 0 ? measuredGrossWeight : measuredNetWeight > 0 ? measuredNetWeight : null + const actualVolume = Number(actualTotals.volume) > 0 ? actualTotals.volume : null const customerTotals = measurementTotals(customerMeasurementRows.value) return [ { source: '客户下单数据', count: customerTotals.count, weight: customerTotals.gross, volume: customerTotals.volume ?? summary?.expectedVolumeCbm }, { source: '外箱规数据', count: measurementTotals(outerMeasurementRows.value).count, weight: measurementTotals(outerMeasurementRows.value).gross, volume: measurementTotals(outerMeasurementRows.value).volume }, - { source: '实际测量数据', count: measurementDetail.value?.actualPackageCount, weight: actualWeight, volume: actualVolume }, + { source: '实际测量数据', count: actualTotals.count, weight: actualWeight, volume: actualVolume }, ] }) const smartLoadingOpen = ref(false) @@ -1431,15 +1431,10 @@ async function openFeeConfirmDialog() { const actualTotals = measurementTotals(actualMeasurementRows.value) const measuredGrossWeight = Number(measurementDetail.value?.actualGrossWeightKg) const measuredNetWeight = Number(measurementDetail.value?.actualNetWeightKg) - const actualVolume = Number(measurementDetail.value?.actualVolumeCbm) - feeConfirmWeight.value = measuredGrossWeight > 0 - ? measuredGrossWeight - : measuredNetWeight > 0 - ? measuredNetWeight - : Number(actualTotals.gross) > 0 ? Number(actualTotals.gross) : null - feeConfirmVolume.value = actualVolume > 0 - ? actualVolume - : Number(actualTotals.volume) > 0 ? Number(actualTotals.volume) : null + feeConfirmWeight.value = Number(actualTotals.gross) > 0 + ? Number(actualTotals.gross) + : measuredGrossWeight > 0 ? measuredGrossWeight : measuredNetWeight > 0 ? measuredNetWeight : null + feeConfirmVolume.value = Number(actualTotals.volume) > 0 ? Number(actualTotals.volume) : null feeConfirmOpen.value = true }