diff --git a/bms-front/src/views/ar/bill/components/GenerateBillDialog.vue b/bms-front/src/views/ar/bill/components/GenerateBillDialog.vue index 2382cb29..0fc159b2 100644 --- a/bms-front/src/views/ar/bill/components/GenerateBillDialog.vue +++ b/bms-front/src/views/ar/bill/components/GenerateBillDialog.vue @@ -318,21 +318,23 @@ function queryGeneratePreview() { const query = buildGenerateQuery() resetPreview() previewQuery.value = query - fetchPreview() + fetchPreview(true) }) } -function fetchPreview() { +function fetchPreview(initializeSelectionMode = false) { previewLoading.value = true previewArBill(buildPreviewQuery()).then(res => { syncingPageSelection = true previewRows.value = res.rows || [] previewTotal.value = Number(res.total) || 0 previewTotalAmount.value = Number(res.totalAmount) || 0 - // 查询到可生成订单后默认采用“全选查询结果”模式;如需排除订单,再通过排除入口维护。 - selectionMode.value = previewTotal.value > 0 - ? AR_BILL_SELECTION_MODE.ALL_MATCHED - : AR_BILL_SELECTION_MODE.EXPLICIT + // 仅首次查询默认全选;翻页请求保留用户当前的选择模式。 + if (initializeSelectionMode) { + selectionMode.value = previewTotal.value > 0 + ? AR_BILL_SELECTION_MODE.ALL_MATCHED + : AR_BILL_SELECTION_MODE.EXPLICIT + } previewSearched.value = true nextTick(syncPageSelection) }).finally(() => {