Authored by wangtao

下载功能实现;样式调整

@@ -71,6 +71,18 @@ let getFaultDiagnosticItemList = (params) => { @@ -71,6 +71,18 @@ let getFaultDiagnosticItemList = (params) => {
71 return get('/api-web/fault/result/normal', params); 71 return get('/api-web/fault/result/normal', params);
72 } 72 }
73 73
  74 +
  75 +
  76 +/**
  77 + * 生成故障报表
  78 + * @returns {Promise<*>}
  79 + */
  80 +let generateFaultReport = (faultNo) => {
  81 + return get('/api-web/fault/result/generateReport', {faultNo:faultNo});
  82 +}
  83 +
  84 +
  85 +
74 export default { 86 export default {
75 getRuleAdvanced, 87 getRuleAdvanced,
76 getFaultList, 88 getFaultList,
@@ -78,5 +90,6 @@ export default { @@ -78,5 +90,6 @@ export default {
78 delRuleAdvanced, 90 delRuleAdvanced,
79 getFaultBusinessList, 91 getFaultBusinessList,
80 getFaultKpiList, 92 getFaultKpiList,
81 - getFaultDiagnosticItemList 93 + getFaultDiagnosticItemList,
  94 + generateFaultReport
82 } 95 }
@@ -32,6 +32,9 @@ export default { @@ -32,6 +32,9 @@ export default {
32 getFaultDiagnosticItemList(context, params){ 32 getFaultDiagnosticItemList(context, params){
33 return faultDiagnosisApi.getFaultDiagnosticItemList(params); 33 return faultDiagnosisApi.getFaultDiagnosticItemList(params);
34 }, 34 },
  35 + generateFaultReport(context, faultNo){
  36 + return faultDiagnosisApi.generateFaultReport(faultNo);
  37 + },
35 38
36 } 39 }
37 }; 40 };
1 <div style="text-align: left;overflow-y: auto;max-height: 100%;"> 1 <div style="text-align: left;overflow-y: auto;max-height: 100%;">
2 <div class="d-flex p-6" style="position: fixed;z-index: 1000;width: 100%;background: aliceblue;"> 2 <div class="d-flex p-6" style="position: fixed;z-index: 1000;width: 100%;background: aliceblue;">
3 <div style="width: calc(100% - 80px)">{{faultDetailDialogTitle}}</div> 3 <div style="width: calc(100% - 80px)">{{faultDetailDialogTitle}}</div>
4 - <el-button type="text" size="small" 4 + <!-- <el-button type="text" size="small"
5 @click.prevent="$global.openReport('GZZDS',{faultNumber:faultDetailDetailInfo.faultNo},'60%','80%')"> 5 @click.prevent="$global.openReport('GZZDS',{faultNumber:faultDetailDetailInfo.faultNo},'60%','80%')">
6 <i class="iconfont iconfont-small icon-icon-rizhi"/> 报表 6 <i class="iconfont iconfont-small icon-icon-rizhi"/> 报表
  7 + </el-button>-->
  8 + <el-button type="text" size="small"
  9 + @click.prevent="openFaultReport">
  10 + <i class="iconfont iconfont-small icon-icon-rizhi"/> 报表
7 </el-button> 11 </el-button>
8 </div> 12 </div>
9 <div style="height: 44px"></div> 13 <div style="height: 44px"></div>
1 import service from './service.js' 1 import service from './service.js'
  2 +import store from '/vue3/src/store/index.js';
2 3
3 export default { 4 export default {
4 name: 'resIndex', 5 name: 'resIndex',
@@ -145,9 +146,9 @@ export default { @@ -145,9 +146,9 @@ export default {
145 } 146 }
146 147
147 // 展示弹框 148 // 展示弹框
148 - const openDialog = (type, {faultNo, targetType, resId, kpiId, flag,resClass}, obj) => { 149 + const openDialog = (type, {faultNo, targetType, resId, kpiId, flag, resClass}, obj) => {
149 if (type === 'alarm') { 150 if (type === 'alarm') {
150 - service.openAlarmDialog(proxy, faultNo, targetType, resId, kpiId, flag,resClass); 151 + service.openAlarmDialog(proxy, faultNo, targetType, resId, kpiId, flag, resClass);
151 } else /*if (type === 'resList') { 152 } else /*if (type === 'resList') {
152 service.handleClick(proxy, faultNo, targetType, resId, kpiId, flag); 153 service.handleClick(proxy, faultNo, targetType, resId, kpiId, flag);
153 } else*/ if (type === 'line') { 154 } else*/ if (type === 'line') {
@@ -160,6 +161,24 @@ export default { @@ -160,6 +161,24 @@ export default {
160 } 161 }
161 162
162 163
  164 + const openFaultReport = () => {
  165 +
  166 + var domain = proxy.$http.getGateWay()
  167 + var faultNo = faultDetailDetailInfo.value.faultNo;
  168 + proxy.$global.viewer(domain + '/fault/result/downReport?faultNo=' + faultNo, proxy);
  169 + // window.top.open(domain + `/fault/result/downReport?faultNo=${faultNo}&access_token=${proxy.$http.getToken()}`);
  170 +
  171 + store.dispatch('generateFaultReport', faultNo).then((res) => {
  172 + if (res && res.success) {
  173 + var path = res.str;
  174 + proxy.$global.viewer(path, proxy);
  175 + } else {
  176 + proxy.$global.showMsg(res.msg, 'warning');
  177 + }
  178 + });
  179 + }
  180 +
  181 +
163 Vue.onMounted(() => { 182 Vue.onMounted(() => {
164 settingDetail(); 183 settingDetail();
165 }); 184 });
@@ -172,6 +191,7 @@ export default { @@ -172,6 +191,7 @@ export default {
172 moreDialog, 191 moreDialog,
173 showMoreDialog, 192 showMoreDialog,
174 moreDialogTitle, 193 moreDialogTitle,
  194 + openFaultReport,
175 ...service 195 ...service
176 } 196 }
177 } 197 }