Merge test into dev

This commit is contained in:
2026-09-14 12:06:46 +08:00
43 changed files with 788 additions and 102 deletions
@@ -68,7 +68,8 @@ const labelingModeHint = computed(() => labelingMode.value === 'carton'
? '只替换箱内商品 SKU 标签,保留原箱唛;同一箱唛可以添加多条 SKU 明细。'
: '同一箱同时替换商品 SKU 标签和外箱箱唛;同一箱唛的多条 SKU 使用同一个新 FBA 箱唛和目的仓。')
const submittedRows = ref<Record<string, string>[]>([])
const selectedDetail = ref<Record<string, any> | null>(null)
interface ServiceDetail extends Record<string, unknown> { transferNo?: string; status?: string; estimatedShipAt?: string; actualShipAt?: string; cartons?: TransferCarton[] }
const selectedDetail = ref<ServiceDetail | null>(null)
const selectedRelabelDetail = ref<RelabelDetail | null>(null)
const fbaWarehouses = ref<MerchantWarehouse[]>([])
const operationWarehouses = ref<MerchantWarehouse[]>([])
@@ -569,7 +570,7 @@ async function submit() {
async function openDetail(value: Record<string, string>) {
try {
const detail = props.service === 'labeling' ? await getRelabel(value['0']) : props.service === 'disposal' ? await getDiscard(value['0']) : await getTransfer(value['0'])
selectedDetail.value = { ...value, ...(detail as Record<string, unknown>) as Record<string, string> }
selectedDetail.value = { ...value, ...(detail as ServiceDetail) }
selectedRelabelDetail.value = props.service === 'labeling' ? detail as RelabelDetail : null
mode.value = 'detail'
} catch (error) { ElMessage.error(error instanceof Error ? error.message : '详情加载失败') }
@@ -578,7 +579,7 @@ async function confirmTransferMeasurements() {
const transferNo = String(selectedDetail.value?.transferNo || selectedDetail.value?.['0'] || '')
if (!transferNo) return
try { await ElMessageBox.confirm('确认 PDA 回传的箱数、尺寸、重量和打托数据吗?确认后将按实测数据入库。', '确认实测数据', { confirmButtonText: '确认入库', cancelButtonText: '取消' }) } catch { return }
try { selectedDetail.value = await confirmTransferMeasurement(transferNo) as Record<string, string>; ElMessage.success('实测数据已确认并入库') }
try { selectedDetail.value = await confirmTransferMeasurement(transferNo) as ServiceDetail; ElMessage.success('实测数据已确认并入库') }
catch (error) { ElMessage.error(error instanceof Error ? error.message : '确认失败') }
}
async function printTransferCartons() {