diff --git a/inventory-web/src/views/outbound/Selection.vue b/inventory-web/src/views/outbound/Selection.vue index 9ce2746..7c5f09e 100644 --- a/inventory-web/src/views/outbound/Selection.vue +++ b/inventory-web/src/views/outbound/Selection.vue @@ -8,19 +8,31 @@ (请添加需要出库的物品)
- - 批量移除 - - - 清空货车 - - - - 手动添加库存 - - - 按 BOM 套餐添加 - + + + + 生成预览 & 打印 @@ -47,7 +59,7 @@ row-key="uniqueKey" @selection-change="handleSelectionChange" > - + @@ -88,7 +100,7 @@ @@ -349,6 +361,7 @@ const userStore = useUserStore() // --- 状态变量 --- const selectedItems = ref([]) const selectedRows = ref([]) +const isBulkMode = ref(false) // 按库位路径自然升序排序(优化拣货路径) const sortedSelectedItems = computed(() => { @@ -707,6 +720,14 @@ const confirmBomAdd = async () => { const handleSelectionChange = (val: any[]) => { selectedRows.value = val + if (val.length === 0 && isBulkMode.value) { + isBulkMode.value = false + } +} + +const cancelBulkMode = () => { + isBulkMode.value = false + selectedRows.value = [] } const clearAll = () => { @@ -721,6 +742,7 @@ const clearAll = () => { ).then(() => { selectedItems.value = [] selectedRows.value = [] + isBulkMode.value = false ElMessage.success('已清空拣货车') }).catch(() => {}) } @@ -739,6 +761,7 @@ const batchRemove = () => { const keysToRemove = new Set(selectedRows.value.map(row => row.uniqueKey)) selectedItems.value = selectedItems.value.filter(item => !keysToRemove.has(item.uniqueKey)) selectedRows.value = [] + isBulkMode.value = false ElMessage.success(`已移除 ${keysToRemove.size} 项物品`) }).catch(() => {}) }