From df97bab9fcb3e6044ad736cd7483498f61f0feb4 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期三, 04 十一月 2026 10:50:32 +0800
Subject: [PATCH] 增加回款日期修改

---
 src/main.js |   48 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 47 insertions(+), 1 deletions(-)

diff --git a/src/main.js b/src/main.js
index 6ecaa60..14f631d 100644
--- a/src/main.js
+++ b/src/main.js
@@ -18,7 +18,9 @@
 // 杩愯鏃朵富棰樺眰 + 缁勪欢榛樿澶栬锛氬繀椤绘櫄浜� element-ui 涓� ruoyi.scss锛屽惁鍒欒鐩栦笉鐢熸晥
 import '@/assets/styles/theme-runtime.scss'
 import '@/assets/styles/element-override.scss'
+import '@/assets/styles/pdf-resize-dialog.scss'
 import App from './App'
+import FilePreview from '@/components/FilePreview/index.vue'
 import store from './store'
 import router from './router'
 import directive from './directive' //directive
@@ -43,6 +45,7 @@
 import FileUpload from "@/components/FileUpload"
 // 鍥剧墖涓婁紶缁勪欢
 import ImageUpload from "@/components/ImageUpload"
+import AttachmentPreviewPane from "@/components/AttachmentPreviewPane/index.vue"
 // 瀛楀吀鏍囩缁勪欢
 import DictTag from '@/components/DictTag'
 // 澶撮儴鏍囩缁勪欢
@@ -90,6 +93,30 @@
 Vue.component('Editor', Editor)
 Vue.component('FileUpload', FileUpload)
 Vue.component('ImageUpload', ImageUpload)
+Vue.component('AttachmentPreviewPane', AttachmentPreviewPane)
+
+// 闄勪欢鍐呭祵棰勮锛氭墍鏈夋姤閿�椤靛叡鐢�
+Vue.mixin({
+  data() {
+    return {
+      embeddedFile: null,
+      pdfFullscreen: false
+    }
+  },
+  methods: {
+    openEmbeddedPreview(item) {
+      if (!item) return
+      const ext = String(item.name || '').toLowerCase().split('.').pop()
+      const type = ext === 'pdf'
+        ? 'pdf'
+        : ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp'].includes(ext)
+          ? 'image'
+          : 'other'
+      this.embeddedFile = { name: item.name, url: item.url, type }
+      this.pdfVisible = true
+    }
+  }
+})
 
 Vue.use(directive)
 Vue.use(plugins)
@@ -116,9 +143,28 @@
 
 Vue.config.productionTip = false
 
-new Vue({
+// 鍓嶇鏋勫缓鏍囪瘑锛氱敤浜庣‘璁ゆ祻瑙堝櫒瀹為檯鍔犺浇鐨勬槸鍝竴鐗堜唬鐮�
+window.__APP_BUILD__ = '2026-11-03-PDF-PREVIEW-17'
+
+const app = new Vue({
   el: '#app',
   router,
   store,
   render: h => h(App)
 })
+
+// 鏂囦欢棰勮锛欰pp 鍐呮寕杞界殑鍏ㄥ眬缁勪欢锛岄伩鍏嶅湪搴旂敤澶栨墜宸� $mount
+let fallbackPreview = null
+Vue.prototype.$previewFile = (files, index = 0) => {
+  if (app.$refs.filePreview) {
+    app.$refs.filePreview.open(files, index)
+    return
+  }
+  // 鍏滃簳锛欰pp 鍐呯粍浠跺皻鏈寕杞芥椂锛屼粛淇濊瘉鏈夐瑙堝叆鍙�
+  if (!fallbackPreview) {
+    const FilePreviewCtor = Vue.extend(FilePreview)
+    fallbackPreview = new FilePreviewCtor().$mount()
+    document.body.appendChild(fallbackPreview.$el)
+  }
+  fallbackPreview.open(files, index)
+}

--
Gitblit v1.9.3