From 0a1d91e42e6c5af96e1108e9ebcc37e99eb3b22c Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 02 四月 2026 15:55:58 +0800
Subject: [PATCH] #路由修复

---
 rsf-design/src/views/system/common/usePrintExportPage.js |   29 ++++++++++++++++++++++-------
 1 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/rsf-design/src/views/system/common/usePrintExportPage.js b/rsf-design/src/views/system/common/usePrintExportPage.js
index c202543..c2242c8 100644
--- a/rsf-design/src/views/system/common/usePrintExportPage.js
+++ b/rsf-design/src/views/system/common/usePrintExportPage.js
@@ -1,12 +1,15 @@
 import { ref } from 'vue'
 import { ElMessage } from 'element-plus'
+import { guardRequestWithMessage } from '@/utils/sys/requestGuard'
+import { $t } from '@/locales'
 
 export function usePrintExportPage({
   downloadFileName,
   requestExport,
   resolvePrintRecords,
   buildPreviewRows,
-  buildPreviewMeta
+  buildPreviewMeta,
+  timeoutMs
 }) {
   const previewVisible = ref(false)
   const previewRows = ref([])
@@ -23,9 +26,15 @@
 
   const handleExport = async (payload) => {
     try {
-      const response = await requestExport(payload)
+      const response = await guardRequestWithMessage(requestExport(payload), null, {
+        timeoutMs,
+        timeoutMessage: $t('message.exportTimeoutStopped')
+      })
+      if (!response) {
+        return
+      }
       if (!response.ok) {
-        throw new Error(`瀵煎嚭澶辫触 (${response.status})`)
+        throw new Error($t('crud.messages.exportFailedWithStatus', { status: response.status }))
       }
 
       const blob = await response.blob()
@@ -37,9 +46,9 @@
       link.click()
       link.remove()
       window.URL.revokeObjectURL(downloadUrl)
-      ElMessage.success('瀵煎嚭鎴愬姛')
+      ElMessage.success($t('crud.messages.exportSuccess'))
     } catch (error) {
-      ElMessage.error(error?.message || '瀵煎嚭澶辫触')
+      ElMessage.error(error?.message || $t('crud.messages.exportFailed'))
     }
   }
 
@@ -52,8 +61,14 @@
     previewMeta.value = {}
 
     try {
-      const records = await resolvePrintRecords(payload)
+      const records = await guardRequestWithMessage(resolvePrintRecords(payload), null, {
+        timeoutMs,
+        timeoutMessage: $t('message.printTimeoutStopped')
+      })
       if (activePrintToken.value !== token) {
+        return
+      }
+      if (!records) {
         return
       }
 
@@ -65,7 +80,7 @@
       if (activePrintToken.value !== token) {
         return
       }
-      ElMessage.error(error?.message || '鎵撳嵃澶辫触')
+      ElMessage.error(error?.message || $t('crud.messages.printFailed'))
     }
   }
 

--
Gitblit v1.9.1