From aebe4f9528f8f37c9694e9026a2689b1b50d20c8 Mon Sep 17 00:00:00 2001 From: liuyihe <2513762445@qq.com> Date: Mon, 12 Oct 2026 13:43:37 +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 --- src/api/relabel.js | 2 + src/api/return-packing.js | 4 + src/components/ReturnBoxMergeWork.vue | 35 ++++-- src/components/ReturnLabelConfirmation.vue | 31 +++++ src/components/ReturnRelabelPackWork.vue | 41 +++++++ src/pages/relabel/relabel.vue | 107 +++++++++++------ src/pages/return-counting/return-counting.vue | 14 ++- src/pages/return-packing/return-packing.vue | 17 ++- src/pages/return-receipt/return-receipt.vue | 30 ++--- src/utils/return-relabel.js | 25 ++++ tests/relabel-active-task.test.mjs | 4 +- tests/relabel-quick-sku.test.mjs | 2 +- tests/relabel-return-bulk.test.mjs | 112 +++++++++++------- tests/relabel-return-carton-mixed.test.mjs | 14 +++ tests/relabel-return-pack.test.mjs | 31 +++++ tests/return-box-merge-work.test.mjs | 12 +- tests/return-counting-page.test.mjs | 30 +++++ tests/return-label-confirmation.test.mjs | 20 ++++ tests/return-packing-completion.test.mjs | 14 ++- tests/return-receipt-page.test.mjs | 74 ++++++++++-- tests/warehouse-workflows.test.mjs | 4 +- 21 files changed, 482 insertions(+), 141 deletions(-) create mode 100644 src/components/ReturnLabelConfirmation.vue create mode 100644 src/components/ReturnRelabelPackWork.vue create mode 100644 src/utils/return-relabel.js create mode 100644 tests/relabel-return-carton-mixed.test.mjs create mode 100644 tests/relabel-return-pack.test.mjs create mode 100644 tests/return-label-confirmation.test.mjs diff --git a/src/api/relabel.js b/src/api/relabel.js index a04e836..117342b 100644 --- a/src/api/relabel.js +++ b/src/api/relabel.js @@ -4,6 +4,7 @@ const BASE = '/pda/v1/last-leg/relabel-tasks' const encoded = (value) => encodeURIComponent(String(value || '').trim()) export const scanRelabelSku = async (no, payload) => normalizeRelabel(await overseasRequest('POST', `${BASE}/${encoded(no)}/skus/scan`, payload)) export const completeReturnRelabelSku = async (no, payload) => normalizeRelabel(await overseasRequest('POST', `${BASE}/${encoded(no)}/return-skus/complete`, payload)) +export const packReturnRelabelCartons = async (no, payload) => normalizeRelabel(await overseasRequest('POST', `${BASE}/${encoded(no)}/return-cartons/pack`, payload)) export const completeReturnRelabelSkuTotal = async (no, payload) => normalizeRelabel(await overseasRequest('POST', `${BASE}/${encoded(no)}/return-skus/complete-total`, payload)) function asList(value) { return Array.isArray(value) ? value : [] } @@ -11,6 +12,7 @@ function asList(value) { return Array.isArray(value) ? value : [] } export function normalizeRelabel(value = {}) { const items = asList(value.items).map((item) => ({ ...item, itemId: String(item.itemId || ''), skuCode: String(item.skuCode || ''), + returnCartonId: item.returnCartonId == null ? null : String(item.returnCartonId), returnQuantity: Number(item.returnQuantity || 0), newSkuCode: String(item.newSkuCode || ''), operationType: String(item.operationType || 'CARTON_LABEL'), expectedPackages: Number(item.expectedPackages || 0), relabelledPackages: Number(item.relabelledPackages || 0), skippedPackages: Number(item.skippedPackages || 0), exceptionPackages: Number(item.exceptionPackages || 0) diff --git a/src/api/return-packing.js b/src/api/return-packing.js index c5f42b3..8b3340d 100644 --- a/src/api/return-packing.js +++ b/src/api/return-packing.js @@ -108,3 +108,7 @@ export async function mergeReturnCartons(request) { export async function getReturnCartonLabel(cartonMark) { return normalizeReturnLabel(await overseasRequest('GET', `${BASE}/cartons/${encoded(cartonMark)}/label`)) } + +export async function confirmReturnLabel(cartonMark) { + return normalizeReturnLabel(await overseasRequest('POST', `${BASE}/cartons/${encoded(cartonMark)}/confirm-label`)) +} diff --git a/src/components/ReturnBoxMergeWork.vue b/src/components/ReturnBoxMergeWork.vue index 9afb349..b6f519f 100644 --- a/src/components/ReturnBoxMergeWork.vue +++ b/src/components/ReturnBoxMergeWork.vue @@ -1,12 +1,12 @@