From 7c9ce5f1625b6468d1775f9814834ca1832e0d20 Mon Sep 17 00:00:00 2001 From: gaoshp <291585735@qq.com> Date: 星期一, 07 七月 2025 23:02:03 +0800 Subject: [PATCH] 导出zip --- src/views/wel/index.vue | 102 +++++++++++++++++++++++++++++--------------------- 1 files changed, 59 insertions(+), 43 deletions(-) diff --git a/src/views/wel/index.vue b/src/views/wel/index.vue index 046798a..5293db3 100644 --- a/src/views/wel/index.vue +++ b/src/views/wel/index.vue @@ -25,26 +25,24 @@ <el-button :size="size" text v-if="row.nodeType < 60" icon="el-icon-document-add" type="primary" @click="showAdd(row)" placeholder="鏂板瀛愮骇" title="鏂板瀛愮骇"></el-button> <el-button :size="size" text v-if="row.nodeType == 60" icon="el-icon-upload" type="primary" @click="showUpload(row)" placeholder="鏂囦欢涓婁紶" title="鏂囦欢涓婁紶"></el-button> <el-button :size="size" text v-if="row.nodeType == 60" icon="el-icon-pie-chart" type="primary" @click="upgrade(row)" placeholder="鍗囩骇" title="鍗囩骇"></el-button> + <el-button :size="size" text v-if="row.nodeType == 60 && !isSM" icon="el-icon-position" type="primary" @click="downsend(row)" placeholder="涓嬪彂" title="涓嬪彂"></el-button> </template> </avue-crud> <el-dialog :title="modalTitle" append-to-body v-model="modalBox"> <avue-form :option="modalOption" v-model="modalForm" @submit="modalSubmit" @reset-change="modalCancel"/> </el-dialog> <el-dialog title="涓婁紶鏂囦欢" append-to-body v-model="uploadmodalBox"> - <avue-form :option="uploadmodalOption" v-model="uploadmodalForm" @submit="uploadmodalSubmit" @reset-change="uploadmodalCancel" :upload-before="uploadBefore" :upload-after="uploadAfter"> - <template #filelist> - <div v-for="item in fileList" v-if="fileList.length > 0"> + <avue-form :option="uploadmodalOption" v-model="uploadmodalForm" @submit="uploadmodalSubmit" @reset-change="uploadmodalCancel" :upload-before="uploadBefore" :upload-after="uploadAfter"></avue-form> + </el-dialog> + <avue-tabs :option="tabsOption" @change="tabsHandleChange" style="margin-top: 30px;" v-if="isShowTabs"></avue-tabs> + <avue-form v-if="tabsType == 'tab1'" :option="tabsFormOption" v-model="tabsForm"></avue-form> + <span v-else-if="tabsType == 'tab2'">鐗堟湰淇℃伅</span> + <template v-else-if="tabsType == 'tab3'"> + <div v-for="item in fileList" v-if="fileList.length > 0" class="fileListStyle"> <span>{{item.name}}</span> <span class="delFile" @click="delFile(item)">X</span> </div> - </template> - </avue-form> - </el-dialog> - - <avue-tabs :option="tabsOption" @change="tabsHandleChange" style="margin-top: 30px;"></avue-tabs> - <avue-form v-if="tabsType === 'tab1'" :option="tabsFormOption" v-model="tabsForm"></avue-form> - <span v-else-if="tabsType === 'tab2'">鐗堟湰淇℃伅</span> - <span v-else-if="tabsType === 'tab3'">鏂囦欢鍐呭</span> + </template> </basic-container> </template> @@ -53,6 +51,9 @@ export default { data() { return { + isSM: false, //鏄惁鏄秹瀵嗙綉 锛屽伐鎺х綉5涓紝娑夊瘑缃�4涓� + isShowTabs: true, + nodeTypeList: [], fileList: [], tabsType: "tab1", tabsOption: {}, @@ -88,7 +89,7 @@ column: [ { label: '鑺傜偣绫诲瀷', - prop: 'nodeType', + prop: 'nodeTypeName', disabled: true, placeholder: " " }, @@ -121,13 +122,6 @@ prop: 'updateTime', disabled: true, placeholder: " " - }, - { - label: '鑺傜偣鍏ㄨ矾寰�', - prop: '', - disabled: true, - placeholder: " ", - span: 24 } ] }, @@ -166,11 +160,6 @@ hide: true }, { - label: '鍏ㄨ矾寰�', - prop: 'abc', - span: 24 - }, - { label: '澶囨敞', prop: 'remark', type: "textarea", @@ -204,7 +193,7 @@ { label: '鐩綍', prop: 'name', - width: '300' + width: '360' }, { label: '鐗堟湰', @@ -274,20 +263,11 @@ label: '閫夋嫨鏂囦欢', prop: 'uploadFile', type: 'upload', - data: {nodeId: this.tabsForm.id}, + data: {nodeId: this.id}, action: "", showFileList: false, span: 24, action: "/blade-mdm/program/ncfile/upload" - }, - { - label: '鏂囦欢鍒楄〃', - prop: 'filelist' - }, - { - label: '鍏ㄨ矾寰�', - prop: 'abc', - span: 24 }, { label: '澶囨敞', @@ -305,6 +285,12 @@ } }, methods: { + downsend(row) { + + }, + uploadAfter() { + this.getFile(this.id); + }, upgrade(row) { //鍗囩骇 this.loading = true; var obj = {id: row.id} @@ -327,7 +313,8 @@ params: obj, }).then( resp => { - this.getFile(this.uploadmodalForm.id); + this.loading = false; + this.getFile(this.id); } ); }, @@ -335,28 +322,35 @@ done(); //nodeId: this.tabsForm.id }, - uploadAfter(res,done,loading,column) { - this.getFile(column.data.nodeId); - }, rowClick(row) { this.tabsForm = row; + this.id = row.id; + this.isShowTabs = false; + this.nodeTypeList.forEach(item=> { + if(item.dictKey == row.nodeType) { + this.tabsForm.nodeTypeName = item.dictValue; + } + }) if(this.tabsForm.nodeType < 60) { this.tabsOption = this.tabsOption1; }else { this.tabsOption = this.tabsOption2; + //鑾峰彇鏂囦欢list + this.getFile(row.id); } + this.$nextTick(()=> { + this.tabsType = 'tab1'; + this.isShowTabs = true; + }) }, tabsHandleChange(tabs) { this.tabsType = tabs.prop; }, showUpload(row) { this.uploadmodalForm = row; - //鑾峰彇鏂囦欢list - this.getFile(row.id); this.uploadmodalBox = true; }, getFile(id) { - this.loading = true; var obj = {nodeId: id} axios({ url: '/blade-mdm/program/ncfile/list-by-node', @@ -369,7 +363,8 @@ ); }, uploadmodalSubmit(row,done) { - + this.uploadmodalBox = false; + done(); }, rowDel(row, index, done) { done(row); @@ -503,6 +498,11 @@ res => { this.data = res.data.data; this.tabsForm = res.data.data[0]; //鑺傜偣淇℃伅 + this.nodeTypeList.forEach(item=> { + if(item.dictKey == this.data[0].nodeType) { + this.tabsForm.nodeTypeName = item.dictValue; + } + }) this.loading = false; } ); @@ -510,6 +510,18 @@ }, mounted() { this.tabsOption = this.tabsOption1; + //鑾峰彇nodetype + axios({url: '/blade-system/dict-biz/dictionary?code=nc_node_type',method: 'get'}).then(res => { + this.nodeTypeList = res.data.data; + } + ); + //鍒ゆ柇鐗堟湰 0:娑夊瘑缃戯紝1:宸ユ帶缃戯紱//宸ユ帶缃�5涓紝娑夊瘑缃�4涓� + axios({url: '/blade-system/param/detail?paramKey=networkType',method: 'get'}).then(res => { + if(res.data.data.paramValue === "0") { + this.isSM = true; + } + } + ); //鏌ョ湅鍐呭 // this.loading = true; // var obj = {id: "1940982493963415554"} @@ -535,4 +547,8 @@ margin-left: 12px; cursor: pointer; } +.fileListStyle { + margin-left: 10px; + margin-top: 12px; +} </style> \ No newline at end of file -- Gitblit v1.9.3