Bladeren bron

通告管理增加文件预览功能,服务联调;

SunZehao 1 jaar geleden
bovenliggende
commit
6fdae9e804
1 gewijzigde bestanden met toevoegingen van 61 en 67 verwijderingen
  1. 61 67
      src/components/notification/notificationMangePage.vue

+ 61 - 67
src/components/notification/notificationMangePage.vue

@@ -160,6 +160,7 @@
                                     </template>
                                 </el-upload>
                             </div>
+                            <!-- <notic-upload></notic-upload> -->
                         </el-form-item>
                         <el-form-item label="">
                             <div class="fliesHeader">
@@ -167,53 +168,31 @@
                                 <span>发送单位</span>
                                 <span>操作</span>
                             </div>
-                            <div v-if="!isSave" style="width: 100%">
-                                <div v-for="it in filesList" :key="it.uid">
-                                    <div class="fliesMain">
-                                        <div>
-                                            <img :src="file" style="margin-right: 10px" >
-                                            <span class="fliesMainSpan spanOne">{{it.name}}</span>
-                                        </div>
-                                        <span class="fliesMainSpan spanTwo">{{userMes.unitName}}</span>
-                                        <!-- <span class="fliesMainSpan spanTwo">测试</span> -->
-                                        <div class="removeDiv">
-                                            <!-- <div @click="previewFile(it)" style="cursor:pointer">
-                                                <img :src="yulan" style="margin-right: 10px;" >
-                                                <span>预览</span>
-                                            </div> -->
-                                            <div @click="removeFile(it)" style="cursor:pointer">
-                                                <img :src="fileDelete" class="removeImg">
-                                                <span>删除</span>
-                                            </div>
-                                        </div>
+                            <div v-for="it in filesList" :key="it.uid">
+                                <div class="fliesMain">
+                                    <div>
+                                        <img :src="file" style="margin-right: 10px" >
+                                        <span class="fliesMainSpan spanOne">{{it.name}}</span>
                                     </div>
-                                </div>
-                            </div>
-                            <div v-else>
-                                <div v-for="it in filesList" :key="it.uid">
-                                    <div class="fliesMain">
-                                        <div>
-                                            <img :src="file" style="margin-right: 10px" >
-                                            <span class="fliesMainSpan spanOne">{{it.name}}</span>
-                                        </div>
-                                        <span class="fliesMainSpan spanTwo">{{it.releaseDeptName}}</span>
-                                        <div class="removeDiv">
-                                            <!-- <div @click="previewFile(it)" style="cursor:pointer">
-                                                <img :src="yulan" style="margin-right: 10px;" >
-                                                <span>预览</span>
-                                            </div> -->
-                                            <div @click="removeFile(it)" style="cursor:pointer">
-                                                <img :src="fileDelete" class="removeImg">
-                                                <span>删除</span>
-                                            </div>
+                                    <span class="fliesMainSpan spanTwo">{{!isSave ? userMes.unitName : it.releaseDeptName}}</span>
+                                    <div class="removeDiv">
+                                        <!-- <div @click="previewFile(it)" style="cursor:pointer">
+                                            <img :src="yulan" style="margin-right: 10px;" >
+                                            <span>预览</span>
+                                        </div> -->
+                                        <div @click="removeFile(it)" style="cursor:pointer">
+                                            <img :src="fileDelete" class="removeImg">
+                                            <span>删除</span>
                                         </div>
                                     </div>
                                 </div>
+                            </div>
+                            <template  v-if="isSave">
                                 <div v-for="it in filesListEdit" :key="it">
                                     <div class="fliesMain">
                                         <div>
                                             <img :src="file" style="margin-right: 10px" >
-                                            <span class="fliesMainSpan spanOne">{{it}}</span>
+                                            <span class="fliesMainSpan spanOne">{{it.fileName}}</span>
                                         </div>
                                         <span class="fliesMainSpan spanTwo">{{it.releaseDeptName}}</span>
                                         <div class="fileOperate">
@@ -228,11 +207,11 @@
                                         </div>
                                     </div>
                                 </div>
-                            </div>
+                            </template>
                         </el-form-item>
                     </el-form>
                 </div>
-                <template #footer>
+                <template #footer v-if="!isDisable">
                     <span class="notificationFooter">
                         <el-button type="primary" size="mini" @click="saveevaluaStart('ruleForm', '发布')">
                             <img :src="release" style="margin-right: 10px">
@@ -246,10 +225,6 @@
                     </span>
                 </template>
             </el-dialog>
-            <el-dialog title="预览" v-model="filesVisible" :fullscreen="true" :close-on-click-modal="false">
-                <!-- <div v-html="filesConcent"></div> -->
-                <iframe src="file:///C:/fakepath/数据导出 (29).xlsx" frameborder="0" width="100%" height="100%"></iframe>
-            </el-dialog>
         </div>
     </div>
 </template>
@@ -270,17 +245,19 @@ import release from '../../assets/btnIcon/release.png'
 import {apiGetevaluationdeptnoticeList, apiGetevaluationdeptnoticeSave,apievaluationdeptnoticeDelete,apiGetuploadAttachment,
 apiGetorganizationstructureFromTree, apiPostevaluationdeptnoticeDelete, apiPostevaluationdeptnoticeModifiedState,
 apiGetevaluationdeptnoticeFilePreview} from '../../api/api'
+
+// import noticUpload from './notificaUpload.vue'
 export default {
     components: {
         btns,
-        seachs
+        seachs,
+        // noticUpload
     },
     data() {
         return {
             winPix: window.devicePixelRatio,
             innerWidth: window.innerWidth,
             dialogVisible: false,
-            filesVisible: false,
             isSave: false,
             isDisable: false,
             title: '',
@@ -585,14 +562,20 @@ export default {
                 releaseDept: this.evalradio.releaseDept,
                 releasePeople: this.evalradio.releasePeople
             }
-            if (this.evalradio.noticeAnnex !== '') {
-                let filesArr = this.evalradio.noticeAnnex.split(',')
+            if (this.evalradio.memo4 !== '') {
+                let filesNameArr = this.evalradio.memo4.split(',')
+                let filesUrlArr = this.evalradio.noticeAnnex.split(',')
+                let filesArr = []
+                let obj = {
+                    releaseDept: this.evalradio.releaseDept
+                }
+                filesNameArr.forEach((iv, index) =>{
+                    obj.fileName = iv
+                    obj.fileUrl = filesUrlArr[index]
+                    filesArr.push(obj)
+                })
                 this.filesListEdit = filesArr
             }
-            // filesArr.forEach(item =>{
-            //     let str = item.substring(item.lastIndexOf('/')+1, item.length)
-            //     this.filesListEdit.push(str)
-            // })
         },
         //删除
         handleDelete(row) {
@@ -649,19 +632,30 @@ export default {
             }
         },
         previewFile(it) {
-            // this.filesVisible = true
-            let params = {
-                url: it
+            let downipcc = ''
+            let previewipcc = ''
+            if (window.location.hostname === '10.65.78.81') {
+                downipcc = 'http://10.65.79.83:86'
+                previewipcc = 'http://10.65.79.83:86'
+            } else {
+                downipcc = 'http://10.65.78.23:18600'
+                previewipcc = 'http://10.65.78.23:8012'
             }
-            apiGetevaluationdeptnoticeFilePreview(params).then(datas =>{
-                if (datas) {
-                    // const blob = new Blob([datas], {type: 'application/pdf'})
-                    // const url = URL.createObjectURL(blob)
-                    // window.open(url)
-                    // console.log('files', datas)
-                    window.open(datas.data, 'target')
-                }
-            })
+            let downUrl = `${downipcc}/f-center/hadoop/hdfs/download?path=${it.fileUrl}`
+            let previewUrl = `${previewipcc}/onlinePreview?hdfs=true&url='+${encodeURIComponent(downUrl)}`
+            window.open(previewUrl)
+            // let params = {
+            //     url: it
+            // }
+            // apiGetevaluationdeptnoticeFilePreview(params).then(datas =>{
+            //     if (datas) {
+            //         // const blob = new Blob([datas], {type: 'application/pdf'})
+            //         // const url = URL.createObjectURL(blob)
+            //         // window.open(url)
+            //         // console.log('files', datas)
+            //         window.open(datas.data, 'target')
+            //     }
+            // })
         },
         //移除文件
         removeFile(item) {
@@ -680,12 +674,12 @@ export default {
                 let that = this
                 let params = {
                     id: that.evalradio.id,
-                    noticeAnnex: item
+                    noticeAnnex: item.fileUrl
                 }
                 apievaluationdeptnoticeDelete(params).then(datas =>{
                     if (datas.success) {
                         that.filesListEdit.forEach((it, index) =>{
-                            if (it === item) {
+                            if (it.fileName === item.fileName) {
                                 that.filesListEdit.splice(index, 1)
                             }
                         })