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 | 150 +++++++++++++++++++++++++++++++++++---------------
1 files changed, 105 insertions(+), 45 deletions(-)
diff --git a/src/views/tasks/machinereturnfileop.vue b/src/views/tasks/machinereturnfileop.vue
index 214d1e5..ea61970 100644
--- a/src/views/tasks/machinereturnfileop.vue
+++ b/src/views/tasks/machinereturnfileop.vue
@@ -1,25 +1,28 @@
<!--
* @Date: 2025-06-18 09:17:09
* @LastEditors: gaoshp
- * @LastEditTime: 2025-07-20 12:27:48
+ * @LastEditTime: 2025-08-13 21:23:34
* @FilePath: /mdmweb/src/views/tasks/machinereturnfileop.vue
-->
<template>
<basic-container>
- <avue-crud :option="option" :table-loading="loading" :data="data" v-model:page="page" v-model="form" ref="crud"
+ <avue-crud :option="option" :search="query" :table-loading="loading" :data="data" v-model:page="page" v-model="form" ref="crud"
@search-change="searchChange" @search-reset="searchReset" @current-change="currentChange"
@size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad" @selection-change="selectionChange">
<template #menu-left>
- <el-button type="primary" plain @click="exportWebSite">瀵煎嚭鍥炰紶娑夊瘑缃�</el-button>
+ <el-button type="primary" :disabled="this.selectedList.length==0" plain @click="exportWebSite">瀵煎嚭鍥炰紶娑夊瘑缃�</el-button>
<!--<el-button type="primary" plain @click="reassign">鎸傝浇杞﹀簥绋嬪簭搴�</el-button>-->
- <el-button type="primary" plain @click="exportExcel">瀵煎嚭鍒癊XCEL</el-button>
+ <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" v-if="permission.flow_model_update"
- @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',
@@ -40,77 +43,137 @@
total: 0,
},
form: {},
- query: {},
+ 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: [
{
label: '鏂囦欢鍚嶇О',
- prop: 'name'
+ prop: 'name',
+ search:true,
+ searchSpan:4
+ },
+ {
+ label: '瀵煎嚭鐘舵��',
+ prop: 'status',
+ search:true,
+ type:'select',
+ searchSpan:4,
+ dicData:[
+ {
+ label: '鏈鍑�',
+ value:1
+ },
+ {
+ label: '宸插鍑�',
+ value:2
+ }
+ ]
},
{
label: '鍥炰紶鏈哄簥',
prop: 'machineCode',
},
-
-
{
- label: '鏂囦欢鍥哄寲鐘舵��',
- prop: 'isCured',
- formatter: (val, value, label) => {
- return `${val==0?'鏈浐鍖�':"宸插浐鍖�"}`;
- },
+ label: '绋嬪簭鐘舵��',
+ prop: 'programStatus',
+ render: ({ row,value }) => {
+ var txt = '鏈煡';
+ switch(row.programStatus){
+ case 1:
+ txt = '璇曞垏';
+ break;
+ case 2:
+ txt = '鍥哄寲';
+ break;
+ case 3:
+ txt = '鍋忕';
+ break;
+ default:
+ txt = '鏈煡';
+ }
+ return txt;
+ }
},
{
label: '鏂囦欢鍒拌揪鏃堕棿',
- prop: 'arrivedTime',
+ prop: 'fileCreateTime',
type: 'datetime',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
},
{
label: '纭鏃堕棿',
- prop: 'determineTime',
+ prop: 'createTime',
type: 'datetime',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
search: true,
searchRange: true,
- searchSpan: 8,
+ searchSpan: 10,
hide: false,
- }/*,
- {
- label: '鎺ユ敹x鏃堕棿',
- prop: 'determineTime',
+ },
+ {
+ label: '瀵煎嚭鏃堕棿',
+ prop: 'exportTime',
type: 'datetime',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
- }*/
+ }
],
- selectedList: [],
- }
+ },
+ selectedList: [],
}
},
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;
},
@@ -126,12 +189,13 @@
}).then(() => {
NProgress.start();
exportBlob(
- `/blade-mdm/machineback/filehandle/export-to-inner`,
+ `/blade-mdm/machinefile/filehandle/export-to-inner`,
{
ids: this.selectedList.map(item => item.id).join(','),
}
).then(res => {
downloadXls(res.data, `宸ユ帶缃戝洖浼犵▼搴�${this.$dayjs().format('YYYY-MM-DD HH:mm:ss')}.zip`);
+ this.onLoad(this.page, {});
NProgress.done();
});
});
@@ -148,7 +212,7 @@
}).then(() => {
NProgress.start();
exportBlob(
- `/blade-mdm/machineback/filehandle/export-excel?${this.website.tokenHeader}=${getToken()}`
+ `/blade-mdm/machinefile/filehandle/export-excel?${this.website.tokenHeader}=${getToken()}`
).then(res => {
downloadXls(res.data, `鏈哄簥鍥炰紶绋嬪簭鍒楄〃${this.$dayjs().format('YYYY-MM-DD HH:mm:ss')}.xlsx`);
NProgress.done();
@@ -160,17 +224,14 @@
this.query = params;
this.page.currentPage = 1;
console.log('searchChange', params);
- params.confirmTimeBegin = params?.confirmTime?.[0] || '';
- params.confirmTimeEnd = params?.confirmTime?.[1] || '';
- console.log(params);
- // data = {
- // createTimeBegin: dayjs(params.createTimeBegin).isValid() ? dayjs(params.createTimeBegin).format('YYYY-MM-DD') : '',
- // createTimeEnd: dayjs(params.createTimeEnd).isValid() ? dayjs(params.createTimeEnd).format('YYYY-MM-DD') : '',
- // keyword: params.keyword || ''
- // }
+ params.confirmTimeBegin = params?.determineTime?.[0] || '';
+ params.confirmTimeEnd = params?.determineTime?.[1] || '';
+
data = {
confirmTimeBegin: params.confirmTimeBegin,
confirmTimeEnd: params.confirmTimeEnd,
+ name: params.name,
+ status: this.query.status,
}
this.query = data
this.onLoad(this.page, data);
@@ -181,8 +242,8 @@
this.query = params;
this.page.currentPage = 1;
data = {
- createTimeBegin: params.createTimeBegin,
- createTimeEnd: params.createTimeEnd,
+ createTimeBegin: params.confirmTimeBegin,
+ createTimeEnd: params.confirmTimeEnd,
keyword: params.keyword || ''
}
this.onLoad(this.page, data);
@@ -204,7 +265,6 @@
console.log('onLoad', page, params);
const query = {
...this.query,
- // category: params.category ? flowCategory(params.category) : null,
mode: this.mode,
};
try {
--
Gitblit v1.9.3