src/api/exceptionApi.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/api/risk/riskApi.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/utils/risk_estimate_common_function/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/utils/risk_estimate_common_function/riskValue.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/data_management/HistoryData.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/exception/FlightInspection.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/line_graph/DataRiskModel.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/line_graph/DataRiskRank.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/line_graph/SiteComprehensiveRskRanking.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/exceptionApi.js
@@ -18,6 +18,7 @@ } }) }, // æ ¹æ®æä»½åç±»åæ¥æ¾åææ°æ® analysisdataByType(month,type) { return $http.get('/dust/analysisdataByType', { @@ -27,6 +28,7 @@ } }) }, // æ ¹æ®æ¶æ®µåç±»åæ¥æ¾åææ°æ® analysisdataByTimeAndType(beginTime,endTime,type) { return $http.get('/dust/analysisdataByTimeAndType', { @@ -37,6 +39,8 @@ } }) }, /** * @@ -57,9 +61,6 @@ } return $http.get('/dust/exceptiondata1', { params: _params }) }, src/api/risk/riskApi.js
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ import {$http} from '@/api/index.js'; export default{ /** * æ ¹æ®ç«ç¹ä¿¡ææä»½ï¼ç±»å æ¥è¯¢é£é©å¼ * @paramï¼ * @returnsï¼ */ queryRiskValue(siteName,month,type){ const params = { month:month, type:type, } if(siteName != '' || siteName != null){ params.siteName = siteName } return $http.post('/dust/risk/riskValue',params) }, } src/utils/risk_estimate_common_function/index.js
@@ -1,4 +1,4 @@ import dayjs from 'dayjs'; import dayjs from 'dayjs' // import exceptionApi from '../../api/exceptionApi'; export default { /** @@ -8,7 +8,7 @@ * @returnsï¼ */ getDaysDifference(startDate, endDate) { return dayjs(endDate).diff(startDate, 'day') + 1; return dayjs(endDate).diff(startDate, 'day') + 1 }, /** @@ -17,55 +17,52 @@ * @returnsï¼ */ calBillData(arr, beginTime, endTime) { let min = 65536; let max = -1; let avg = 0; let online = 0; let valid = 0; let exceeding = 0; let min = 65536 let max = -1 let avg = 0 let online = 0 let valid = 0 let exceeding = 0 let sumAvg = 0; let sumOnline = 0; let sumValid = 0; let sumExceeding = 0; let sumAvg = 0 let sumOnline = 0 let sumValid = 0 let sumExceeding = 0 // 计ç®éæ©çæ¶é´çç¸å·®çå¤©æ° let begin = dayjs(beginTime).format('YYYY-MM-DD'); let end = dayjs(endTime).format('YYYY-MM-DD'); let dayDiff = this.getDaysDifference(begin, end); let obj = {}; let begin = dayjs(beginTime).format('YYYY-MM-DD') let end = dayjs(endTime).format('YYYY-MM-DD') let dayDiff = this.getDaysDifference(begin, end) let obj = {} // è®¡ç®æå°åå¤§å¼ arr.forEach((item) => { if (item.min < min) { min = item.min; min = item.min } if (item.max > max) { max = item.max; max = item.max } // 计ç®å¹³åå¼ï¼å¨çº¿çï¼ææçï¼è¶ æ ç sumAvg = sumAvg + item.dayAvg; sumOnline = sumOnline + Number(item.dayOnline.slice(0, -1)); sumValid = sumValid + Number(item.dayValid.slice(0, -1)); sumExceeding = sumExceeding + Number(item.dayExceeding.slice(0, -1)); }); sumAvg = sumAvg + item.dayAvg sumOnline = sumOnline + Number(item.dayOnline.slice(0, -1)) sumValid = sumValid + Number(item.dayValid.slice(0, -1)) sumExceeding = sumExceeding + Number(item.dayExceeding.slice(0, -1)) }) // 计ç®åå¼ avg = sumAvg / dayDiff; online = sumOnline / dayDiff; valid = sumValid / dayDiff; exceeding = sumExceeding / dayDiff; obj['min'] = min.toFixed(3); obj['max'] = max.toFixed(3); avg = sumAvg / dayDiff online = sumOnline / dayDiff valid = sumValid / dayDiff exceeding = sumExceeding / dayDiff obj['min'] = min.toFixed(3) obj['max'] = max.toFixed(3) obj['avg'] = avg.toFixed(2); obj['online'] = online.toFixed(2); obj['valid'] = valid.toFixed(2); obj['exceeding'] = exceeding.toFixed(2); obj['avg'] = avg.toFixed(2) obj['online'] = online.toFixed(2) obj['valid'] = valid.toFixed(2) obj['exceeding'] = exceeding.toFixed(2) return obj; return obj }, /** * 计ç®å¼å¸¸ç±»åèé度ï¼è¯¥æ¶æ®µåºç°çå¼å¸¸ç±»åæ°éé¤8 @@ -75,88 +72,90 @@ */ calRecur(exceptionArr) { if(exceptionArr.length == 0){ let obj = {}; obj['exceptionRecurrence'] = 0; obj['exceptionTypeAggregation'] = 0; let obj = {} obj['exceptionRecurrence'] = 0 obj['exceptionTypeAggregation'] = 0 return obj; return obj } // å ¸åå¼å¸¸å¤ç°ç let exceptionTyprRecurRate = 0; // é级çªå let mutationCount = 0; let mutationCount = 0 // è¶ æ ä¸´è¿ let exceedingNearCount = 0; let exceedingNearCount = 0 // è¶ æ æ¬¡æ°ä¸´ç let exceedingCriticalDegree = 0; let exceedingCriticalDegree = 0 // ä¿ååºç°çä¸åå¼å¸¸ç±»å let exception = []; let exception = [] // å¼å¸¸ç±»åèé度 let exceptionTypeAggregation = 0; let exceptionTypeAggregation = 0 // å ¸åå¼å¸¸å¤ç°ç let exceptionTyprRecurRate = 0 // è®°å½æå®3ç§å¼å¸¸åºç°ç次æ°åä¸åçå¼å¸¸ç§ç±» exceptionArr.forEach((item) => { // å¼å¸¸å¤ç°ç // é级çªåå¼å¸¸ if (item.exceptionType == 4) { mutationCount++; mutationCount++ // 临è¿è¶ æ å¼å¸¸ } else if (item.exceptionType == 5) { exceedingNearCount++; exceedingNearCount++ // åæ¥è¶ æ æ¬¡æ°ä¸´çå¼å¸¸ } else if (item.exceptionType == 6) { exceedingCriticalDegree++; exceedingCriticalDegree++ } // å¼å¸¸ç±»åèé度 if (exception.length == 0) { exception.push(item.exceptionType); exception.push(item.exceptionType) } // ä¿åæ°çå¼å¸¸ç±»å else if (exception.indexOf(item.exceptionType) == -1) { exception.push(item.exceptionType); exception.push(item.exceptionType) } }); }) let sum = 0; let sum = 0 // 次æ°å1ï¼è¯¥å¼å¸¸åºç°2次ï¼ç®å¤ç°1次ãåºç°3次ï¼ç®å¤ç°2次... if (mutationCount > 1) { sum = sum + mutationCount - 1; sum = sum + mutationCount - 1 } if (exceedingNearCount > 1) { sum = sum + exceedingNearCount - 1; sum = sum + exceedingNearCount - 1 } if (exceedingCriticalDegree > 1) { sum = sum + exceedingCriticalDegree - 1; sum = sum + exceedingCriticalDegree - 1 } switch (true) { case (sum == 0 || sum == 1) : exceptionTyprRecurRate = (sum / 3).toFixed(2); break; case (sum == 2|| sum >=3) : exceptionTyprRecurRate = 1; break; case sum == 0 || sum == 1: exceptionTyprRecurRate = (sum / 3).toFixed(2) break case sum == 2 || sum >= 3: exceptionTyprRecurRate = 1 break default: return 'error'; return 'error' } exceptionTypeAggregation = (exception.length / 8).toFixed(2); exceptionTypeAggregation = (exception.length / 8).toFixed(2) let obj = {}; obj['exceptionRecurrence'] = exceptionTyprRecurRate; obj['exceptionTypeAggregation'] = exceptionTypeAggregation; let obj = {} obj['exceptionRecurrence'] = exceptionTyprRecurRate obj['exceptionTypeAggregation'] = exceptionTypeAggregation return obj; return obj }, // åæ°ï¼å¯¹è±¡æ°ç»(该对象ä¸ç屿§ä¸è½æ¯å¼ç¨ç±»åï¼å¦åæ·è´çå¼è¿æ¯ä¼ç¸äºå½±å) // åè½ï¼æ·è´è¯¥å¯¹è±¡æ°ç»ã shallowCopyList(val) { if(val == 'arr'){ let tempList = []; return tempList; let tempList = [] return tempList }else if(val == 'obj'){ let tempList = {}; return tempList; let tempList = {} return tempList } }, getRate(obj){ let a = {} @@ -193,6 +192,12 @@ calRiskValue(arr){ // ç¨100å æ¯å ä¸ºè¯¥å±æ§éè¦è®¡ç®çæ¯é£é©å¼ï¼åºå½æ¯ç¦»çº¿çï¼æ æç // ä¹ä»¥0.01æ¯å 为å»é¤ç¾åå·åéè¦å缩å°100å /* arr[0]:å¨çº¿ç 90% arr[1]:ææç 100% arr[2]:è¶ æ ç 2% arr[3]:å ¸åå¼å¸¸å¤ç°é£é© 0.2 arr[4]:å¼å¸¸ç±»åèéé£é© 0.5 */ let weight = ( (100 - parseFloat(arr[0].slice(0, -1)))*0.01 * 0.1 + (100 - parseFloat(arr[1].slice(0, -1)))*0.01 * 0.2 + @@ -210,14 +215,12 @@ * @returnsï¼è¡¨æ ¼æ°æ® */ merge(anaData,exceptionData,beginTime,endTime){ if (anaData.length == 0){ return [] } const table = [] let i = 0 anaData.forEach((res) =>{ let siteName = res.name // ä»åææ°æ®ä¸å¾å°è®¾å¤ç¼å· let mnCode = res.mnCode // æ¾å°å¼å¸¸æ°æ®ä¸mnCodeçäºvalueç对象 @@ -253,7 +256,6 @@ if (weight >= 0.6) { obj.riskGrage = 'é«é£é©' obj.riskAdvice = '建议对该ç«ç¹è¿è¡çº¿ä¸æ§æ³æ£æ¥ï¼ä¸é¡¹æ°æ®å¯¹æ¯' } else if (weight < 0.6 && weight >= 0.2) { obj.riskGrage = 'ä¸é£é©' obj.riskAdvice = '建议å¼å±å¸¸æè¿½è¸ªåæ' src/utils/risk_estimate_common_function/riskValue.js
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,59 @@ // import rank from '@/utils/risk_estimate_common_function/rank.js'; // import dayjs from 'dayjs.js'; export default { // // è®¡ç®æ¥é£é©å¼ // calDailyRisk(allTypeRiskValue){ // let dailyRiskValue = allTypeRiskValue.onlineRisk*0.1 + allTypeRiskValue.validRisk*0.2 + allTypeRiskValue.exceedingRisk*0.2 + allTypeRiskValue.exceptionTypeAggregation*0.2 + allTypeRiskValue.typicalExceptionRepetitionRate*0.3 // return dailyRiskValue // }, // // è®¡ç®æé£é©å¼ // calMonthRisk(DailyRiskValues,month){ // // æ ¹æ®æä»½è·å¾è¯¥æçå¤©æ° // let dayNum = dayjs(month).daysInMonth() // // ç´¯å æ¥é£é©å¼ // let sum = 0 // for(let i in DailyRiskValues){ // sum += i // } // // æ¥å¼å¸¸ç±»åèéççå/å½æå¤©æ° // let monthRiskValue = sum /dayNum // return monthRiskValue // }, // calRiskValue(allTypeRiskValue,queryMonth){ // // 对设å¤ç¼å·è¿è¡åç» // let groupeObj = rank.groupByMncode(allTypeRiskValue) // // // for (let mnCode in groupeObj){ // // è·å¾è®¾å¤ç¼å·å¯¹åºçæ°æ® // let dayData = groupeObj[mnCode] // // ä¿åæè®¾å¤ç¼å·è¯¥æ®µæ¶é´çæ¥é£é©å¼ // let dailyRiskValues = [] // // è®¡ç®æ¥é£é©å¼ // for(let item in dayData){ // let dailyRiskValue = this.calDailyRisk(item) // dailyRiskValues.push(dailyRiskValue) // } // } // } // è®¡ç®æåº¦é£é©å¼ calMonthlyRiskValue(exceptionRiskValue){ // ä¿åæåº¦é£é©å¼ let monthlyRiskValue = [] // è®¡ç®æ¯ä¸ªç«ç¹çæåº¦é£é©å¼ for(let item in exceptionRiskValue){ let value = item.onlineRisk*0.1 + item.validRisk*0.2 + item.exceedingRisk*0.2 + item.exceptionTypeAggregation*0.2 + item.typicalExceptionRepetitionRate*0.3 monthlyRiskValue.push(value) } return monthlyRiskValue } } src/views/data_management/HistoryData.vue
@@ -234,7 +234,7 @@ <el-col> <el-form-item> <TimeShortCuts @submit-time="giveTime"></TimeShortCuts> <TimeShortCuts time-type="week" @submit-time="giveTime"></TimeShortCuts> </el-form-item> <el-form-item> src/views/exception/FlightInspection.vue
@@ -18,7 +18,7 @@ DustLineChart, ButtonClick, AreaAndmonitorType, AnalysisCard AnalysisCard, }, data() { return { src/views/line_graph/DataRiskModel.vue
@@ -338,8 +338,6 @@ ></InputSearch> </el-form-item> <el-form-item> <MonthSelect :month="this.month_1" @submit-value="giveMonth"></MonthSelect> </el-form-item> @@ -376,28 +374,44 @@ label="åºå·" :index="indexMethod" fixed width="25" width="52" show-overflow-tooltip align="center" /> <el-table-column prop="siteName" label="ç«ç¹åç§°" show-overflow-tooltip /> <el-table-column prop="riskValue" label="é£é©å¼" sortable width="67" prop="siteName" label="ç«ç¹åç§°" show-overflow-tooltip /> <el-table-column label="æä½" align="center"> align="center" > <template #default="{ row }"> <el-button type="primary" text class="table-button" @click="querySiteStaticsInfo(row)" >é£é©è¯¦æ </el-button >{{ row.siteName }}</el-button > </template> </el-table-column> <el-table-column prop="riskValue" label="é£é©å¼" sortable show-overflow-tooltip align="center" /> <!-- <el-table-column label="æä½" align="center"> <template #default="{ row }"> <el-button type="primary" text class="table-button" @click="querySiteStaticsInfo(row)" >详æ </el-button > </template> </el-table-column> --> </el-table> </el-card> </el-col> @@ -409,7 +423,7 @@ 'æ°æ®ææé£é©', 'å ¸åå¼å¸¸å¤ç°é£é©', 'å¼å¸¸ç±»åèéé£é©', 'æ°æ®è¶ æ é£é©', 'è¶ æ å¼å¸¸é£é©', 'æ°æ®å¨çº¿é£é©' ]" :yData="[ src/views/line_graph/DataRiskRank.vue
@@ -1,9 +1,9 @@ <script> import TimeShortCuts from '@/sfc/TimeShortCuts.vue'; import AreaAndmonitorType from '@/sfc/AreaAndmonitorType.vue'; import { useCommonFunction } from '../../utils/common.js'; import requetsApi from '@/api/exportExcel/requetsApi.js'; import dayjs from 'dayjs'; import TimeShortCuts from '@/sfc/TimeShortCuts.vue' import AreaAndmonitorType from '@/sfc/AreaAndmonitorType.vue' import { useCommonFunction } from '../../utils/common.js' import requetsApi from '@/api/exportExcel/requetsApi.js' import dayjs from 'dayjs' import ButtonExportExcel from '@/sfc/ButtonExportExcel.vue' import ButtonClick from '@/sfc/ButtonClick.vue' @@ -34,18 +34,20 @@ beginTime: '', // ç»ææ¶é´ endTime: '' }, tableHeight: '600' } }; }, setup() { // å¼å ¥ ç¾åå·æ¯è¾å¤§å° 导åºåè½ const { cmpp, exportToExcel } = useCommonFunction(); return { cmpp, exportToExcel }; const { cmpp, exportToExcel } = useCommonFunction() return { cmpp, exportToExcel } }, mounted() { this.form.name = ''; this.form.name = '' this.fetchData() this.calTableHeight() }, methods: { // åè½ï¼å¯¼åºä¸ºExcel @@ -53,10 +55,10 @@ let params = { beginTime: this.form.beginTime, endTime: this.form.endTime }; } this.exportButton = true requetsApi.fetchAllData(params).then((res) => { const data = res.data.data; const data = res.data.data const tableColumns = [ 'name', @@ -68,7 +70,7 @@ 'dayOnline', 'dayValid', 'dayExceeding' ]; ] const excelColumns = [ ['A1', 'ç«ç¹åç§°'], ['B1', '设å¤ç¼å·'], @@ -79,124 +81,133 @@ ['G1', 'å¨çº¿ç'], ['H1', 'ææç'], ['I1', 'è¶ æ ç'] ]; this.exportToExcel(data, tableColumns, excelColumns, 'åæè¡¨.xlsx'); ] this.exportToExcel(data, tableColumns, excelColumns, 'åæè¡¨.xlsx') this.exportButton = false }); }) }, // åè½ï¼æ¹åè¡¨æ ¼æä¸ªåå æ ¼çé¢è² tableCellClassName({ row, columnIndex }) { // å¹³åå¼ä¸æ»¡è¶³æ åæ¶ if (columnIndex == 4) { if (row.dayAvg >= 0.8) { return 'warning-row'; return 'warning-row' } } // å¨çº¿çï¼ææç 䏿»¡è¶³æ åæ¶ åé¢è² if (columnIndex == 7) { if (!this.cmpp(row.dayOnline, '90%')) { return 'red-color'; return 'red-color' } } if (columnIndex == 8) { if (!this.cmpp(row.dayValid, '90%')) { return 'red-color'; return 'red-color' } } }, // åè½ï¼è¡¨æ ¼é«åº¦æ ¹æ®å 容èªéåº calTableHeight() { const h1 = this.$refs.h1.$el.offsetHeight const h2 = this.$refs.h2.$el.offsetHeight; // å ¶ä¸ä¸ä¸ª40æ¯çåçæ»å¤è¾¹è· this.tableHeight = `calc(100vh - ${h1}px - ${h2}px - 40px - 120px - var(--el-main-padding) * 2`; }, // 页大尿¹åæ¶è§¦å handleSizeChange(val) { this.pageSize = val; this.pageSize = val // æ¹åæ¯é¡µæ¾ç¤ºæ°ç®æ¶è·³å°å½å页 this.handleCurrentChange(1); this.handleCurrentChange(1) }, // 页巿¹åæ¶è§¦å handleCurrentChange(val) { // å°å½å页å·ç»currentPage this.currentPage = val; this.currentPage = val // 页é¢ååæ¶è°ç¨ æ¥è¯¢æ°æ®å½æ° this.fetchData(); this.fetchData() }, //åºå·éå¢ indexMethod(index) { return index + 1 + (this.currentPage - 1) * this.pageSize; return index + 1 + (this.currentPage - 1) * this.pageSize }, giveTime(val) { //å°ä¸å½æ åæ¶é´è½¬ä¸ºæå®æ ¼å¼(该ç»ä»¶è¿åçæ åæ¶é´çæ ¼å¼ï¼æä»¥å¿ é¡»çå è¿ä¸ªå½æ°) this.form.beginTime = dayjs(val[0]).format('YYYY-MM-DD HH:mm:ss'); this.form.endTime = dayjs(val[1]).format('YYYY-MM-DD HH:mm:ss'); this.form.beginTime = dayjs(val[0]).format('YYYY-MM-DD HH:mm:ss') this.form.endTime = dayjs(val[1]).format('YYYY-MM-DD HH:mm:ss') }, // ç¹å»ç»è®¡æé® fetchData() { let params = {}; params['page'] = this.currentPage; params['pageSize'] = this.pageSize; let params = {} params['page'] = this.currentPage params['pageSize'] = this.pageSize if (this.form.name) { params['siteName'] = this.form.name; params['siteName'] = this.form.name } if (this.form.beginTime) { params['beginTime'] = this.form.beginTime; params['beginTime'] = this.form.beginTime } if (this.form.endTime) { params['endTime'] = this.form.endTime; params['endTime'] = this.form.endTime } this.loading = true; this.loading = true this.queryButton = true this.isNoData = false this.$http .get('/dust/analysistime', { params: params }) .then((response) => { this.tableData = response.data.data.rows; this.loading = false; this.$http.get('/dust/analysistime', { params: params }).then((response) => { this.tableData = response.data.data.rows this.loading = false this.queryButton = false if (response.data.data.total == 0) { this.isNoData = true; return; this.isNoData = true return } // ç§»é¤ç©ºæ°æ®ç¶æ this.isNoData = false; this.total = response.data.data.total; }); this.isNoData = false this.total = response.data.data.total }) } } }; } </script> <template> <div class="search-container"> <el-container> <el-main> <el-form :inline="true" :model="form"> <el-form :inline="true" :model="form" ref="h1"> <el-form-item> <AreaAndmonitorType></AreaAndmonitorType> </el-form-item> <el-form-item> <TimeShortCuts timeType="currentMonth" @submit-time="giveTime" ></TimeShortCuts> <TimeShortCuts timeType="currentMonth" @submit-time="giveTime"></TimeShortCuts> </el-form-item> <el-form-item> <ButtonClick style="margin-right: 12px;" content="æ°æ®æå" type="primary" :loading="queryButton" @do-search="fetchData" ></ButtonClick> <ButtonExportExcel content="å¯¼åºæ°æ®" type="success" :loading="exportButton" @do-export="exportData"></ButtonExportExcel> <ButtonClick style="margin-right: 12px" content="æ°æ®æå" type="primary" :loading="queryButton" @do-search="fetchData" ></ButtonClick> <ButtonExportExcel content="å¯¼åºæ°æ®" type="success" :loading="exportButton" @do-export="exportData" ></ButtonExportExcel> </el-form-item> </el-form> <el-card v-show="!isNoData"> <el-table :data="tableData" height="600px" :height="tableHeight" style="width: 100%" v-loading="loading" :cell-class-name="tableCellClassName" @@ -209,67 +220,25 @@ fixed show-overflow-tooltip /> <el-table-column prop="name" label="ç«ç¹åç§°" show-overflow-tooltip /> <el-table-column prop="name" label="ç«ç¹åç§°" show-overflow-tooltip /> <el-table-column prop="mnCode" label="设å¤ç¼å·" show-overflow-tooltip /> <el-table-column prop="mnCode" label="设å¤ç¼å·" show-overflow-tooltip /> <el-table-column prop="lst" label="çæµæ¥æ" sortable show-overflow-tooltip /> <el-table-column prop="lst" label="çæµæ¥æ" sortable show-overflow-tooltip /> <el-table-column prop="dayAvg" label="æ¥å¹³åå¼" sortable show-overflow-tooltip /> <el-table-column prop="min" label="æ¥æå°å¼" sortable show-overflow-tooltip /> <el-table-column prop="max" label="æ¥æå¤§å¼" sortable show-overflow-tooltip /> <el-table-column prop="dayAvg" label="æ¥å¹³åå¼" sortable show-overflow-tooltip /> <el-table-column prop="min" label="æ¥æå°å¼" sortable show-overflow-tooltip /> <el-table-column prop="max" label="æ¥æå¤§å¼" sortable show-overflow-tooltip /> <el-table-column prop="dayOnline" label="æ¥å¨çº¿ç" sortable show-overflow-tooltip /> <el-table-column prop="dayOnline" label="æ¥å¨çº¿ç" sortable show-overflow-tooltip /> <el-table-column prop="dayValid" label="æ¥ææç" sortable show-overflow-tooltip /> <el-table-column prop="dayValid" label="æ¥ææç" sortable show-overflow-tooltip /> <el-table-column prop="dayExceeding" label="æ¥è¶ æ ç" sortable show-overflow-tooltip /> <el-table-column prop="dayExceeding" label="æ¥è¶ æ ç" sortable show-overflow-tooltip /> </el-table> <el-pagination ref="h2" :page-sizes="[10, 20, 50, 100]" :total="total" layout="total,sizes, prev, pager, next, jumper" @@ -280,12 +249,15 @@ /> </el-card> <el-empty v-show="isNoData" :image-size="200" /> </el-main> </el-container> </div> </template> <style scoped> .el-form { margin: 20px; } .el-card { margin: 20px 20px 0px 20px; } :deep().el-table__row .warning-row { background-color: #f7ba1e; } src/views/line_graph/SiteComprehensiveRskRanking.vue
@@ -11,6 +11,8 @@ import SiteDetail from '@/views/line_graph/components/SiteDetail.vue' import { useLoadingStore } from '@/stores/loadingStore'; import { mapStores } from 'pinia'; import riskApi from '@/api/risk/riskApi.js'; import riskValue from '@/utils/risk_estimate_common_function/riskValue.js'; export default { components: { AreaAndmonitorType, @@ -109,45 +111,67 @@ this.tableHeight = `calc(100vh - ${h1}px - 40px - 40px - var(--el-main-padding) * 2` }, // ç¹å»é£é©æåæé® // fetchData() { // this.loading = true // this.queryButton = true // exceptionApi // .analysisdataByType(this.form.month, 'month') // .then((response) => { // this.chartData = response.data.data // this.queryButton = false // this.isNoData = false // if (response.data.data.length == 0) { // this.isNoData = true // return // } // exceptionApi // .exceptiondata1({ // siteName: '', // beginTime: this.form.beginTime, // endTime: this.form.endTime // }) // .then((res) => { // this.isNoData = false // this.table = index.merge( // this.chartData, // res.data.data, // this.form.beginTime, // this.form.endTime // ) // this.loading = false // this.$nextTick(()=>{ // this.$refs.table.sort('riskValue','descending') // }) // }) // }) // }, // ç¹å»é£é©æåæé® fetchData() { this.loading = true this.queryButton = true exceptionApi .analysisdataByType(this.form.month, 'month') riskApi .queryRiskValue('',this.form.month, 'month') .then((response) => { this.chartData = response.data.data this.queryButton = false this.isNoData = false if (response.data.data.length == 0) { this.isNoData = true return } exceptionApi .exceptiondata1({ siteName: '', beginTime: this.form.beginTime, endTime: this.form.endTime }) .then((res) => { this.table = riskValue.calMonthlyRiskValue(response.data.data) this.queryButton = false this.isNoData = false this.table = index.merge( this.chartData, res.data.data, this.form.beginTime, this.form.endTime ) this.loading = false this.$nextTick(()=>{ this.$refs.table.sort('riskValue','descending') }) }) }) },