fix(frontend): resolve cross-page selection loss, add destroy-on-close to dialogs, and fix row-key collision in stocktake

This commit is contained in:
DXC
2026-04-02 18:35:11 +08:00
parent 1e2f4953b6
commit edf09508f6
8 changed files with 20 additions and 13 deletions

View File

@ -121,6 +121,7 @@
v-model="showConfirmDialog"
title="⚠️ 确认清除盘点数据"
width="400"
destroy-on-close
:close-on-click-modal="false"
:close-on-press-escape="false"
show-close
@ -237,7 +238,7 @@
height="100%"
stripe
border
row-key="id"
row-key="uniqueKey"
style="width: 100%"
>
<el-table-column prop="sku" label="SKU" width="140" show-overflow-tooltip />
@ -1004,6 +1005,7 @@ const fetchInventoryList = async (silent = false) => {
id: draft?.id || null,
stock_id: item.id,
source_table: item.source_table,
uniqueKey: `${item.source_table}_${item.id}`, // ★ 绝对唯一键解决row-key冲突
sku: item.sku,
material_name: item.material_name,
spec_model: item.spec_model,