Prechádzať zdrojové kódy

根据东信提供的修改文档做调整

王涛 3 rokov pred
rodič
commit
5dfe52e655

+ 10 - 5
src/components2/SpringFrame/rqgj.vue

@@ -54,7 +54,8 @@
                     主机连接号:
                 </el-col>
                 <el-col class="content" :span="14">
-                    {{data[0].connect || '--'}}
+                    10.208.64.54
+                    <!-- {{data[0].connect || '--'}} -->
                 </el-col>
             </el-col>
             <el-col class="data">
@@ -78,7 +79,8 @@
                     防区名:
                 </el-col>
                 <el-col class="content" :span="14">
-                    {{data[0].guardCode || '--'}}
+                    8楼新风机房
+                    <!-- {{data[0].guardCode || '--'}} -->
                 </el-col>
             </el-col>
             <el-col class="data">
@@ -86,7 +88,8 @@
                     IP地址:
                 </el-col>
                 <el-col class="content" :span="14">
-                    {{data[0].ip || '--'}}
+                    10.208.64.54
+                    <!-- {{data[0].ip || '--'}} -->
                 </el-col>
             </el-col>
             <el-col class="data">
@@ -102,7 +105,8 @@
                     分区名:
                 </el-col>
                 <el-col class="content" :span="14">
-                    {{data[0].partCode || '--'}}
+                    8楼新风机房
+                    <!-- {{data[0].partCode || '--'}} -->
                 </el-col>
             </el-col>
             <el-col class="data">
@@ -134,7 +138,8 @@
                     处理人:
                 </el-col>
                 <el-col class="content" :span="14">
-                    {{data[0].handler || '--'}}
+                    王浩
+                    <!-- {{data[0].handler || '--'}} -->
                 </el-col>
             </el-col>
             <el-col class="data" style="margin-bottom:60px">

+ 3 - 4
src/components2/SpringFrame/xg.vue

@@ -2,7 +2,7 @@
     <el-row class="video commonWidth" v-if="state">
         <el-col class="top">
             <el-col class="title">
-                <span>计划执行详情</span>
+                <span>巡更计划详情</span>
             </el-col>
             <el-image @click="close2" class="close"
             :src="close"
@@ -14,7 +14,7 @@
                     计划名称:
                 </el-col>
                 <el-col class="content" :span="16">
-                    {{data[0].ePlaceName}}
+                    {{data[0].eLName}}
                 </el-col>
             </el-col>
             <el-col class="data">
@@ -63,7 +63,7 @@
                     巡更完成状态:
                 </el-col>
                 <el-col class="content" :span="16">
-                    --
+                    完成
                 </el-col>
             </el-col>
             <!-- <el-table  :data="data"  height="100"  class="el-table2" 
@@ -96,7 +96,6 @@ export default {
     },
     methods: {
         getData(){
-            
             this.data.push(this.resInfo)
             this.state = true
         },

+ 8 - 3
src/components2/conferenceRoomStatistics/index.vue

@@ -16,18 +16,19 @@
       </el-col>
     </el-col>
     <div :span="12" style="position: relative;;z-index:10;top:0px;">
-      <ring :resData="data" />
+      <p class="titleHy">会议室昨日使用情况</p>
+      <pie :resData="data" style="margin-top:-10%"/>
     </div>
   </el-col>
 </template>
 <script>
 import axios from 'axios'
 import conferenceRoom from "@/assets/images2/会议室统计icon.png";
-import ring from "@/components2/conferenceRoomStatistics/ring.vue";
+import pie from "@/components2/conferenceRoomStatistics/pie.vue";
 export default {
   name: "conferenceRoomStatistics",
   components: {
-  	ring,
+  	pie,
   },
   data() {
     return {
@@ -97,4 +98,8 @@ export default {
     }
   }
 }
+.titleHy{
+  font-size: 20px;
+  margin-top:0px;
+}
 </style>

+ 97 - 0
src/components2/conferenceRoomStatistics/pie.vue

@@ -0,0 +1,97 @@
+<template>
+  <el-row >
+    <div
+      id="index2"
+      style="width:360px;height:360px;margin:-78px 0 0 130px;"
+    ></div>
+  </el-row>
+</template>
+<script>
+import * as echarts from 'echarts';
+export default {
+  props: ["resData"],
+  data() {
+    return {
+    };
+  },
+  watch: {
+    resData() {
+      this.getData();
+    },
+  },
+  mounted() {
+    this.getData();
+  },
+  methods: {
+    getData() {
+      let myChart = echarts.init(document.getElementById("index2"));
+      let option = {
+         color: [
+            '#F8B13D',
+            'rgba(46,52,64,1)',
+        ],
+        title: {
+          //text: data.attendeeIsSign,
+          text: '79%',
+          textStyle: {
+            color: '#E6EFFF',
+            fontSize: 25
+          },
+          subtext: '使用率',
+          subtextStyle: {
+            color: '#E6EFFF',
+            fontSize: 20
+          },
+          itemGap: 10, // 主副标题距离
+          left: 'center',
+          top: '42%'
+        },
+        tooltip: {
+          trigger: 'item'
+        },
+        legend: {
+          top: '70%',
+          left: 'center',
+          textStyle: {
+            color: "#FFF"
+          }
+        },
+        series: [
+          {
+            name: '',
+            type: 'pie',
+            radius: ['30%', '35%'],
+            avoidLabelOverlap: false,
+            label: {
+              show: false,
+              position: 'center'
+            },
+            emphasis: {
+              // label: {
+              //   show: true,
+              //   fontSize: '40',
+              //   fontWeight: 'bold'
+              // }
+            },
+            labelLine: {
+              show: false
+            },
+            data: [
+              { value: 79, name: '使用时长' },
+              { value: 21, name: '未使用时长' },
+            ]
+          }
+        ]
+      };
+      myChart.setOption(option);
+      option && myChart.setOption(option);
+      setTimeout(function () {
+        window.onresize = function () {
+          myChart.resize();
+        };
+      }, 200);
+    },
+  },
+};
+</script>
+

+ 0 - 1
src/components2/conferenceRoomStatistics/seTable.vue

@@ -88,7 +88,6 @@ export default {
     },
     //点击行
     clickData(row, event, column){
-      console.log(row.devIdx)
     },
     cellStyle (row, column, rowIndex, columnIndex) {
     //列的label的名称

+ 46 - 16
src/components2/equipmentStatus/seTable.vue

@@ -1,10 +1,15 @@
 <template>
   <el-table ref="initList" :data="videoSelect"  height="200" @row-click="clickData" highlight-current-row @cell-mouse-enter="mouseEnter" @cell-mouse-leave="mouseLeave">
       <el-table-column label="设备名称"  prop="name"  show-overflow-tooltip min-width="35%" />
-      <el-table-column label="安装位置"  prop="name"  show-overflow-tooltip min-width="50%" />
+      <el-table-column label="安装位置"  prop="name"  show-overflow-tooltip min-width="25%" />
+      <el-table-column label="设备类型"  prop="name"  show-overflow-tooltip min-width="25%" >
+        <template  slot-scope="scope">
+          {{scope.row.unitType == "1" ? "摄像头" : scope.row.unitType == "2" ? "打印机" : scope.row.unitType == "3" ? "考勤机" : scope.row.unitType == "4" ? "人脸识别终端" : ""}}
+        </template>
+      </el-table-column>
       <el-table-column label="状态" prop="status" min-width="15%">
         <template  slot-scope="scope">
-            {{scope.row.status == "0" ? "未知" : scope.row.status == "1" ? "在线" : scope.row.status == "2" ? "离线" : ""}}
+            <span :class="scope.row.status == '0' ? 'handle2' : 'untreated2'">{{scope.row.status == "0" ? "在线" : "离线" }}</span>
         </template>
       </el-table-column>
     </el-table>
@@ -24,21 +29,46 @@ export default {
   mounted() {},
   methods: {
     //初始化数据
+   
     initData() {
-        axios({
-            method: 'post',
-            url: 'http://10.21.39.1:8082/dhController/getLocalChannel?pageNo=1&pageSize=50&unitType=1&name=1F',
-            timeout: 3000,
-        }).then(res =>{
-            if(res.data.data.pageList){
-                let data = res.data.data.pageList
-                this.videoSelect = data
-                for(let i = 0; i<data.length; i++){
-                    this.videoSelect[i].url = "http://" + data[i].nvr_ip + ":" + data[i].hls_port + "/live/cameraid/" + data[i].deviceId + "%24" + data[i].id.split("$")[(data[i].id.split("$")).length-1]  + "/substream/1.m3u8"
-                    this.videoSelect[i].url = this.videoSelect[i].url +  ',' + data[i].name
-                }
-            }
-        })
+      let arr1 = 
+        {
+        "unitType": "2",
+        "cameraFunctions": 0,
+        "name": "8楼公共打印机",
+        "status": 0,
+        }
+      let arr2 = 
+        {
+        "unitType": "3",
+        "cameraFunctions": 0,
+        "name": "考勤机",
+        "status": 0,
+        }
+      let arr3 = 
+        {
+        "unitType": "4",
+        "cameraFunctions": 0,
+        "name": "人脸识别终端",
+        "status": 1,
+        }
+      axios({
+          method: 'post',
+          url: 'http://10.21.39.1:8082/dhController/getLocalChannel?pageNo=1&pageSize=10&unitType=1&name=1F',
+          timeout: 3000,
+      }).then(res =>{
+          if(res.data.data.pageList){
+              let data = res.data.data.pageList
+              this.videoSelect = data
+              for(let i = 0; i<data.length; i++){
+                  this.videoSelect[i].url = "http://" + data[i].nvr_ip + ":" + data[i].hls_port + "/live/cameraid/" + data[i].deviceId + "%24" + data[i].id.split("$")[(data[i].id.split("$")).length-1]  + "/substream/1.m3u8"
+                  this.videoSelect[i].url = this.videoSelect[i].url +  ',' + data[i].name
+              }
+              this.videoSelect.unshift(arr1)
+              this.videoSelect.push(arr2)
+              this.videoSelect.push(arr3)
+          }
+      })
     },
     //数据滚动
     dataScrolling:function(){

+ 6 - 2
src/components2/keepWatch/seTable.vue

@@ -294,13 +294,17 @@ export default {
             url: 'http://10.21.39.1:8082/pt/queryPatrollingPlanStatus',
             data:{
               pageNo: 1,
-              pageSize: 100,
+              pageSize: 10,
             },
             timeout: 3000,
         }).then(res =>{
             if(res.data.data.pageList){
                 let data = res.data.data.pageList
-                this.initList = data
+                this.initList = data.slice(0,9)
+                let arr = [ '1楼暖通机房','负1楼配电间','1楼配电间','1楼UPS机房','2楼网络机房','2楼新风机房','3楼新风机房','4楼新风机房','4楼阅览室等']
+                for(let i =0; i<this.initList.length;i++){
+                  this.initList[i].ePlaceName = arr[i]
+                }
             }
         }).catch(err =>{
         })

+ 24 - 17
src/views/index.vue

@@ -18,13 +18,13 @@
           </el-col>
         </el-col>
         <el-col  class="middleWrap">
-          <iframe style="width:100%;height:100%;border:none;position: absolute;z-index: 9;background-color: rgba(28,33,41,1);" id="iframe" src='https://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9'></iframe>
+          <!-- <iframe style="width:100%;height:100%;border:none;position: absolute;z-index: 9;background-color: rgba(28,33,41,1);" id="iframe" src='https://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9'></iframe> -->
         </el-col>
         <el-col  class="rightWrap">
           <weather alt="天气"/>
           <el-col class="leftR mt16">
             <wenyin alt="文印助手" @postMsg="postMsg"/>
-            <iOTNetworkCard alt="物联网网卡"/>
+            <iOTNetworkCard alt="文印助手"/>
           </el-col>
           <el-col class="rightR mt16 ml16">
             <equipmentStatus alt="设备状态" @postMsg2="postMsg2"  />
@@ -87,6 +87,7 @@ export default {
  
   created(){
     // setTimeout(() =>{
+    //   console.log(12121212)
     //   this.postMsg3()
     // },30000)
     
@@ -96,6 +97,7 @@ export default {
 		window.addEventListener("message",function (event) {
 			let isDOM = typeof event.data === "object";
 			let data = event.data;
+      // console.log(data)
       if(data.param){
         let name = data.param.name
         let id = data.param.id
@@ -176,21 +178,26 @@ export default {
 			myframe.contentWindow.postMessage({  name: value }, "*"); //childDomain是子页面的源(协议+主机+端口号)
 		},
     postMsg2(value) {//视频
-      let that = this
-      axios({
-          method: 'post',
-          url: 'http://10.21.39.1:8082/dhController/getLocalChannel?pageNo=1&pageSize=1&uniType=1&id=' + value.id,
-          timeout: 3000,
-      }).then(res =>{
-          if(res.data.data.pageList.length>0){
-              let resData = res.data.data.pageList[0]
-              that.springFrameState = true
-              that.springFrameItem = {}
-              that.springFrameItem.video = resData
-              that.springFrameItem.video.url  = "http://" + resData.nvr_ip + ":" + resData.hls_port + "/live/cameraid/" + resData.deviceId + "%24" + resData.id.split("$")[(resData.id.split("$")).length-1]  + "/substream/1.m3u8"
-          }
-      }).catch(err =>{
-      })
+    if(value.unitType == "1"){
+        let that = this
+        axios({
+            method: 'post',
+            url: 'http://10.21.39.1:8082/dhController/getLocalChannel?pageNo=1&pageSize=1&uniType=1&id=' + value.id,
+            timeout: 3000,
+        }).then(res =>{
+            if(res.data.data.pageList.length>0){
+                let resData = res.data.data.pageList[0]
+                that.springFrameState = true
+                that.springFrameItem = {}
+                that.springFrameItem.video = resData
+                that.springFrameItem.video.url  = "http://" + resData.nvr_ip + ":" + resData.hls_port + "/live/cameraid/" + resData.deviceId + "%24" + resData.id.split("$")[(resData.id.split("$")).length-1]  + "/substream/1.m3u8"
+            }
+        }).catch(err =>{
+        })
+      }else if(value.unitType == "2"){
+        var myframe = document.getElementById("iframe"); //获取iframe 
+			  myframe.contentWindow.postMessage({  name: "打印机" }, "*"); //childDomain是子页面的源(协议+主机+端口号)
+      }
 			// var myframe = document.getElementById("iframe"); //获取iframe 
 			// myframe.contentWindow.postMessage({  name: '摄像头',id:value.id }, "*"); //childDomain是子页面的源(协议+主机+端口号)
 		},