From b14bf62abb3480d95beee8314fcb08c0d893813b Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期一, 22 九月 2025 14:18:19 +0800
Subject: [PATCH] 文件下发,回传文件处理的查看下载

---
 src/views/tasks/machinereturnfileop.vue |   54 ++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 44 insertions(+), 10 deletions(-)

diff --git a/src/views/tasks/machinereturnfileop.vue b/src/views/tasks/machinereturnfileop.vue
index 3af182e..ea61970 100644
--- a/src/views/tasks/machinereturnfileop.vue
+++ b/src/views/tasks/machinereturnfileop.vue
@@ -15,11 +15,14 @@
                 <el-button type="primary" :disabled="this.selectedList.length==0" plain @click="exportExcel">瀵煎嚭鍒癊XCEL</el-button>
             </template>
             <template #menu="scope">
-                <el-button type="primary" text size="default"
-                    @click.stop="handleAction(scope.row, scope.index)">瀹℃壒
-                </el-button>
+                <el-button type="primary" text size="default" @click.stop="showContent(scope.row)">鏌ョ湅</el-button>
+                <el-button type="primary" text size="default" @click.stop="download(scope.row, scope.index)">涓嬭浇</el-button>
             </template>
         </avue-crud>
+
+        <el-dialog title="绋嬪簭鍐呭" append-to-body v-model="fileViewModel">
+            <div v-html="appContent" class="app-content"></div>
+        </el-dialog>
     </basic-container>
 </template>
 
@@ -28,7 +31,7 @@
 import { exportBlob } from '@/api/common';
 import { getToken } from '@/utils/auth';
 import NProgress from 'nprogress';
-import { downloadXls } from '@/utils/util';
+import { downloadXls,downloadFile } from '@/utils/util';
 import 'nprogress/nprogress.css';
 export default {
     name: 'MachineReturnFileOp',
@@ -43,23 +46,22 @@
             query: {status:1},
             loading: true,
             data: [],
+            fileViewModel:false,
+            appContent:'',
             option: {
                 addBtn: false,
                 editBtn: false,
                 delBtn: false,
                 columnBtn: false,
                 tip: false,
-                // simplePage: true,
                 searchShow: true,
                 searchMenuSpan: 6,
                 dialogWidth: '60%',
-                // tree: true,
                 border: true,
                 index: true,
                 selection: true,
-                // viewBtn: true,
-                menuWidth: 100,
-                menu: false,
+                menuWidth: 110,
+                menu: true,
                 dialogClickModal: false,
                 column: [
                     
@@ -67,12 +69,14 @@
                         label: '鏂囦欢鍚嶇О',
                         prop: 'name',
                         search:true,
+                        searchSpan:4
                     },
                     {
                         label: '瀵煎嚭鐘舵��',
                         prop: 'status',
                         search:true,
                         type:'select',
+                        searchSpan:4,
                         dicData:[
                             {
                                 label: '鏈鍑�',
@@ -124,7 +128,7 @@
                         valueFormat: 'YYYY-MM-DD HH:mm:ss',
                         search: true,
                         searchRange: true,
-                        searchSpan: 8,
+                        searchSpan: 10,
                         hide: false,
                     },
 					{
@@ -140,6 +144,36 @@
         }
     },
     methods: {
+        showContent(row) {
+            this.fileViewModel = true;
+            this.appContent = '';
+            axios({
+                url: '/blade-mdm/ossfile/file-content',
+                method: 'get',
+                params: {ossFileName: row.ossName}
+            }).then(
+                res => {
+                    console.log(res)
+                    if(res.data.code === 200) {
+                        this.appContent = res.data.data;
+                    } else {
+                        this.appContent = '绋嬪簭鍐呭鍔犺浇澶辫触'
+                    }
+            });
+        },
+        download(row){
+            exportBlob(
+            `/blade-mdm/machinefile/filehandle/download-by-id?id=${row.id}&${this.website.tokenHeader}=${getToken()}`,
+            
+            ).then(res => {
+            
+                let name = res.headers['content-disposition'].split('filename=')[1]
+                //console.log(res.headers['content-disposition'].split('filename=')[1]);
+                name = decodeURI(name)
+                downloadFile(res.data, `${name}`);
+                NProgress.done();
+            });
+        },
         selectionChange (list) {
             this.selectedList = list;
         },

--
Gitblit v1.9.3