From d2a80d7b57325bb29eb8719111ea12d3b5b0ae6e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 16 七月 2026 10:34:22 +0800
Subject: [PATCH] 银川 1.采购申请页面修改 2.添加在线查看附件预览功能 3.修改我的流程页面展示样式流程状态点击报错问题

---
 src/views/bpm/processInstance/detail/modules/operation-button.vue |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/views/bpm/processInstance/detail/modules/operation-button.vue b/src/views/bpm/processInstance/detail/modules/operation-button.vue
index b955d7a..248bc1d 100644
--- a/src/views/bpm/processInstance/detail/modules/operation-button.vue
+++ b/src/views/bpm/processInstance/detail/modules/operation-button.vue
@@ -23,6 +23,8 @@
 import { useUserStore } from '@vben/stores';
 import { isEmpty } from '@vben/utils';
 
+import { FilePreviewModal, useFilePreview } from '#/components/file-preview';
+
 import FormCreate from '@form-create/ant-design-vue';
 import { until, useDebounceFn } from '@vueuse/core';
 import {
@@ -789,6 +791,8 @@
 const imagePreviewVisible = ref(false);
 const imagePreviewUrl = ref('');
 
+const { openPreview: openFilePreview, previewState: filePreviewState } = useFilePreview();
+
 /** 鍒ゆ柇鏂囦欢鏄惁涓哄浘鐗囩被鍨� */
 function isImageUrl(url: string) {
   return /\.(jpg|jpeg|png|gif|bmp|webp|svg)$/i.test(
@@ -811,7 +815,7 @@
     imagePreviewUrl.value = url;
     imagePreviewVisible.value = true;
   } else {
-    window.open(url, '_blank');
+    openFilePreview(url, file?.name);
   }
 }
 
@@ -1552,4 +1556,11 @@
       :src="imagePreviewUrl"
     />
   </div>
+
+  <!-- 鏂囦欢棰勮锛圥DF/Word/Excel/PPT锛� -->
+  <FilePreviewModal
+    v-model:visible="filePreviewState.visible.value"
+    :file-url="filePreviewState.fileUrl.value"
+    :file-name="filePreviewState.fileName.value"
+  />
 </template>

--
Gitblit v1.9.3