ソースを参照

adm:feat > 解决excel下载跳转新页面问题

shaun-sheep 4 年 前
コミット
602e931e7c

+ 6 - 5
src/components/ledger/details/detail/exhibitionEnergy.vue

@@ -4,17 +4,18 @@
       <section v-for="(val,key,i) in exhibitionEnergy.list">
         <h4 class="base">{{key}}</h4>
         <div class="table-dynamic" v-for="(value,keys,index) in val.paths">
-            <div class="table-title"> {{value.InfoPointName}}:</div>
-          <p :style="{'color':value.value? '' :'#F56C6C'}">{{value.value? `表号功能号:${value.value} `:'未维护'}}</p>
-          <p v-if="value.data">{{value.data}}{{value.Unit}}</p>
-<!--          <p v-else-if="value.error">{{value.error}}</p>-->
+          <div class="table-title"> {{ value.InfoPointName }}:</div>
+          <p :style="{'color':value.value? '' :'#F56C6C'}">{{ value.value ? `表号功能号:${value.value} ` : '未维护' }}</p>
+          <p v-if="value.data == '0'">{{ value.data }}{{ value.Unit }}</p>
+          <p v-else-if="value.data">{{ value.data }}{{ value.Unit }}</p>
+          <!--          <p v-else-if="value.error">{{value.error}}</p>-->
           <el-popover
             v-else-if="value.error"
             placement="right"
             width="160"
             trigger="hover">
             <p style="border-bottom: 1px solid #eee;padding:2px 0 4px 0;'">错误原因</p>
-            <p>{{value.error}}</p>
+            <p>{{ value.error }}</p>
             <div style="text-align: center; margin: 0">
               <el-button type="text" size="mini" @click="handleCopy(value.error)">复制</el-button>
             </div>

+ 4 - 3
src/components/ledger/lib/system.vue

@@ -3,7 +3,7 @@
     <span class="buildFloor" style="padding-right: 12px;">所属专业系统类型</span>
     <el-select v-model="value" placeholder="请选择" :props="props" filterable :style="isWidth ? '' : 'width:160px;'"
                size="small" @change="changeVal">
-      <el-option v-for="item in options" :key="item.classCode" :label="item.name"
+      <el-option v-for="item in options" :key="item.classCode" :label="item.categoryName"
                  :value="item.classCode"></el-option>
     </el-select>
     <!-- <el-cascader placeholder="请选择" :options="options" v-model="value" :props="props" filterable :style="isWidth ? '' : 'width:160px;'" size="small"
@@ -36,7 +36,7 @@ export default {
       options: [],
       props: {
         value: "classCode",
-        label: "name"
+        label: "categoryName"
       }
     };
   },
@@ -103,8 +103,9 @@ export default {
     changeArr(arr) {
       let data = [];
       arr.forEach(item => {
-        data.push({ classCode: item.classCode || item.code, name: item.categoryName });
+        data.push({ classCode: item.classCode || item.code, categoryName: item.categoryName });
       });
+      console.log(data, 'data')
       return data;
     }
   }

+ 42 - 42
src/components/relation/relationShip/Modal/exportExcel.vue

@@ -12,14 +12,14 @@
             {{values.currentNum}}{{length}}
           </p>
 
-          <a :href="downloadProject('excel')">
+          <a :href="downloadProject('excel')" target="_self">
 
             <!--          <a :href=`/api/datacenter/graphic/export?code=对象ID${localStorage.getItem('RelationType')?relType=${localStorage.getItem('RelationType')} : null}${ localStorage.getItem('ZoneType') ? `&zoneType=${localStorage.getItem('ZoneType')}` : null}` >-->
             <el-button
               type="primary"
               class="mt-10"
             >
-              {{values.download}}
+              {{ values.download }}
             </el-button>
           </a>
         </el-col>
@@ -87,50 +87,50 @@
 </template>
 
 <script>
-  import {mapGetters} from 'vuex'
-  import storage from '@/framework/utils/storage'
-
-  export default {
-    name: "exportExcel",
-    props: ['values','length'],
-    data() {
+import { mapGetters } from 'vuex'
+import storage from '@/framework/utils/storage'
+
+export default {
+  name: "exportExcel",
+  props: ['values', 'length'],
+  data() {
+    return {
+      // relationCount:localStorage.getItem('count'),
+      dialogExport: false,
+      dialogProcess: false,
+      activities: [{
+        content: '数据文件处理中..',
+        size: 'large',
+        type: 'primary',
+        icon: 'el-icon-check',
+        color: '#0bbd87'
+      }, {
+        content: '数据处理成功',
+        color: '#0bbd87',
+        icon: 'el-icon-check',
+        size: 'large',
+        type: 'primary',
+      }],
+    }
+  },
+  computed: {
+    ...mapGetters('layout', ['projectId']),
+    headers() {
       return {
-        // relationCount:localStorage.getItem('count'),
-        dialogExport: false,
-        dialogProcess: false,
-        activities: [{
-          content: '数据文件处理中..',
-          size: 'large',
-          type: 'primary',
-          icon: 'el-icon-check',
-          color: '#0bbd87'
-        }, {
-          content: '数据处理成功',
-          color: '#0bbd87',
-          icon: 'el-icon-check',
-          size: 'large',
-          type: 'primary',
-        }],
+        'ProjectId': this.projectId,
+        'Comming': 'adm',
+        'Account': storage.get("user_name")
       }
     },
-    computed: {
-      ...mapGetters('layout', ['projectId']),
-      headers() {
-        return {
-          'ProjectId': this.projectId,
-          'Comming': 'adm',
-          'Account': storage.get("user_name")
-        }
-      },
-      dataId() {
-        return {
-          relType: localStorage.getItem('RelationType') || '',
-          zoneType: localStorage.getItem('ZoneType') || '',
-          projectId: this.projectId
-        }
-      },
+    dataId() {
+      return {
+        relType: localStorage.getItem('RelationType') || '',
+        zoneType: localStorage.getItem('ZoneType') || '',
+        projectId: this.projectId
+      }
     },
-    methods: {
+  },
+  methods: {
       downloadProject(str) {
         let relType = localStorage.getItem('RelationType') != '' ? `?relType=${localStorage.getItem('RelationType')}` : '';
         let zoneType = localStorage.getItem('ZoneType') != '' ? `&zoneType=${localStorage.getItem('ZoneType')}` : '';