Procházet zdrojové kódy

分级数据接口对接

dedsudiyu před 5 dny
rodič
revize
97c2a3a54b

+ 33 - 8
src/components/EventStats.vue

@@ -111,7 +111,7 @@
 
 <script>
 import * as echarts from 'echarts'
-import { getLabBasicStatistics } from '@/api/screen'
+import { getLabBasicStatistics,getLevelTitleList } from '@/api/screen'
 
 export default {
   name: 'EventStats',
@@ -153,7 +153,7 @@ export default {
     }
   },
   mounted() {
-    this.fetchData()
+    this.getLevelTitleList()
     this.timer = setInterval(this.fetchData, 5 * 60 * 1000)
   },
   beforeDestroy() {
@@ -164,18 +164,43 @@ export default {
     }
   },
   methods: {
+    async getLevelTitleList() {
+      const res = await getLevelTitleList()
+      if (res.code === 200) {
+        let list = [];
+        for(let i=0;i<res.data.length;i++){
+          list.push({
+            levelGrade: res.data[i].levelGrade, 
+            name: res.data[i].titleName,  
+            label: res.data[i].showTitleName, 
+            value: '',   
+            color: res.data[i].titleColor
+          })
+        }
+        this.$set(this,'levels',list);
+        this.fetchData();
+      }
+    },
     async fetchData() {
+      let self = this;
       try {
         const res = await getLabBasicStatistics()
         if (res.code === 200) {
           const d = res.data
           this.total = d.labTotal
-          this.levels = [
-            { name: 'I级',  label: 'I 级(重大风险)', value: d.levelOneCount,   color: '#cc0000' },
-            { name: 'II级', label: 'II 级(高风险)',  value: d.levelTwoCount,   color: '#ff8000' },
-            { name: 'III级',label: 'III 级(中风险)', value: d.levelThreeCount, color: '#ffcc00' },
-            { name: 'IV级', label: 'IV 级(低风险)',  value: d.levelFourCount,  color: '#0066cc' }
-          ]
+          let list = JSON.parse(JSON.stringify(self.levels));
+          for(let i=0;i<list.length;i++){
+            if(list[i].levelGrade == 1){
+              list[i].value = d.levelOneCount;
+            }else if(list[i].levelGrade == 2){
+              list[i].value = d.levelTwoCount;
+            }else if(list[i].levelGrade == 3){
+              list[i].value = d.levelThreeCount;
+            }else if(list[i].levelGrade == 4){
+              list[i].value = d.levelFourCount;
+            }
+          }
+          this.$set(this,'levels',list);
           this.status = {
             active:  d.useTotal,
             warning: d.exceptionalTotal,

+ 12 - 12
src/components/SecurityMonitor.vue

@@ -470,18 +470,18 @@ export default {
       try {
         const res = await getCameraStream(this.videoQueryParams)
         let list = [];
-        res.data.total = 100;
-        res.data.records = [
-          {streamUrl:'1', deviceNo:'1'},
-          {streamUrl:'2', deviceNo:'2'},
-          {streamUrl:'3', deviceNo:'3'},
-          {streamUrl:'4', deviceNo:'4'},
-          {streamUrl:'5', deviceNo:'5'},
-          {streamUrl:'6', deviceNo:'6'},
-          {streamUrl:'7', deviceNo:'7'},
-          {streamUrl:'8', deviceNo:'8'},
-          {streamUrl:'9', deviceNo:'9'},
-        ];
+        // res.data.total = 100;
+        // res.data.records = [
+        //   {streamUrl:'1', deviceNo:'1'},
+        //   {streamUrl:'2', deviceNo:'2'},
+        //   {streamUrl:'3', deviceNo:'3'},
+        //   {streamUrl:'4', deviceNo:'4'},
+        //   {streamUrl:'5', deviceNo:'5'},
+        //   {streamUrl:'6', deviceNo:'6'},
+        //   {streamUrl:'7', deviceNo:'7'},
+        //   {streamUrl:'8', deviceNo:'8'},
+        //   {streamUrl:'9', deviceNo:'9'},
+        // ];
         for(let i=0;i<res.data.records.length;i++){
           list.push(
             {

+ 3 - 4
src/components/alarmWindow/alarm.vue

@@ -60,10 +60,9 @@
           <div class="info-cell">
             <div class="cell-label">当前值 / 安全阈值</div>
             <div class="cell-value">
-              <span class="val-current">{{ data.triggerUploadData[0].deviceValue}}</span>
+              <span class="val-current">{{ data.triggerUploadData[0].deviceValue}} {{ data.triggerUploadData[0].unit || '' }}</span>
               <span class="val-sep"> / </span>
-              <span class="val-threshold">{{ data.triggerUploadData[0].deviceValue}}</span>
-              <span v-if="data.unit" class="val-unit"> {{ data.triggerUploadData[0].unit || '—' }}</span>
+              <span class="val-threshold">{{ data.triggerUploadData[0].min}} - {{ data.triggerUploadData[0].max}} {{ data.triggerUploadData[0].unit || '' }}</span>
             </div>
           </div>
         </div>
@@ -348,7 +347,7 @@ export default {
 
     .val-unit {
       font-size: 35px;
-      color: rgba(255, 200, 200, 0.5);
+      color: #EF4444;
     }
   }
 

+ 11 - 0
src/views/Screen.vue

@@ -152,7 +152,18 @@ export default {
     async selectTriggerInfo() {
       const res = await selectTriggerInfo()
       if (res.code === 200 && res.data && res.data.length) {
+        res.data[0].bindingSensorList = res.data[0].bindingSensorList
         res.data[0].triggerUploadData = JSON.parse(res.data[0].triggerUploadData)
+        for(let i=0;i<res.data[0].bindingSensorList.length;i++){
+          for(let o=0;o<res.data[0].triggerUploadData.length;o++){
+            if(res.data[0].bindingSensorList[i].code == res.data[0].triggerUploadData[o].code){
+              res.data[0].triggerUploadData[o].max = res.data[0].bindingSensorList[i].max
+              res.data[0].triggerUploadData[o].min = res.data[0].bindingSensorList[i].min
+            }
+          }
+        }
+        console.log('res.data[0].bindingSensorList',res.data[0].bindingSensorList);
+        console.log('res.data[0].triggerUploadData',res.data[0].triggerUploadData);
         this.$set(this,'alarmData', res.data[0]);
         this.$set(this,'showAlarm',true);
       }else{