|
@@ -1,1256 +0,0 @@
|
|
|
-<template>
|
|
|
- <div class="Spring-frame">
|
|
|
- <!-- <el-dialog :visible.sync="centerDialogVisible"> -->
|
|
|
- <el-row class="warning alert" v-if="warning.state"><!--告警推送弹框-->
|
|
|
- <el-col class="contain">
|
|
|
- <el-col class="title">{{warning.warningMessage.deviceName ? "设备名称:" + warning.warningMessage.deviceName : "设备名称:--"}}</el-col>
|
|
|
- <el-col class="content">{{warning.warningMessage.alarmContent ? "告警信息:" + warning.warningMessage.alarmContent : "告警信息:--"}}</el-col>
|
|
|
- <el-col class="time">{{warning.warningMessage.createTime ? "告警时间:" + warning.warningMessage.createTime : "告警时间:--"}}</el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="meeting commonWidth" v-if="meeting.state"><!--会议信息弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- xxx会议室
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain">
|
|
|
- <el-col class="section1 section" >
|
|
|
- <el-col class="title">会议预约列表</el-col>
|
|
|
- <el-table :data="meeting.meetingMessage.order" border style="width: 100%;height:104px" class="scroll" id="table1" v-infinite-scroll="moremeetingMsg1">
|
|
|
- <el-table-column prop="meetingStartTime,meetingEndTime" label="预约使用日期" width="240">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{scope.row.meetingStartTime}} ~ {{scope.row.meetingEndTime}}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="meetingRoomName" label="会议名称" width="80"></el-table-column>
|
|
|
- <el-table-column prop="markPerson" label="预约人"> </el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-col>
|
|
|
- <el-col class="section2 section">
|
|
|
- <el-col class="title" style="width:20%">历史会议信息</el-col>
|
|
|
- <el-date-picker
|
|
|
- v-model="time"
|
|
|
- type="datetimerange"
|
|
|
- range-separator="~"
|
|
|
- start-placeholder="开始时间"
|
|
|
- end-placeholder="结束时间"
|
|
|
- @change="changeDate"
|
|
|
- >
|
|
|
- </el-date-picker>
|
|
|
- <el-table :data="meeting.meetingMessage.history" border style="width: 100%;height:80px" class="scroll" v-infinite-scroll="moreMeetingMsg2">
|
|
|
- <el-table-column prop="meetingRoomName" label="会议名称" width="64"></el-table-column>
|
|
|
- <el-table-column prop="meetingStartTime,meetingEndTime" label="会议时间" width="234">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{scope.row.meetingStartTime}} ~ {{scope.row.meetingEndTime}}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="signPerson" label="应到人数" width="64"> </el-table-column>
|
|
|
- <el-table-column prop="realityPerson" label="实到人数" width="64"> </el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="equipment commonWidth" v-if="equipment.state"><!--设备信息弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span>设备信息</span>
|
|
|
- <img src="../../../assets/image/icon1.png" alt="" class="equipment-icon"/>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain">
|
|
|
- <el-col class="title"><span class="type">设备名称:</span><span class="data">{{equipment.equipmentMessage.deviceName ? equipment.equipmentMessage.deviceName : "--"}}</span></el-col>
|
|
|
- <el-col class="title"><span class="type">设备类型:</span><span class="data">{{equipment.equipmentMessage.deviceType ? equipment.equipmentMessage.deviceType : "--"}}</span></el-col>
|
|
|
- <el-col class="title"><span class="type">设备编号:</span><span class="data">{{equipment.equipmentMessage.registerDeviceId ? equipment.equipmentMessage.registerDeviceId : "--"}}</span></el-col>
|
|
|
- <el-col class="title"><span class="type">楼层:</span><span class="data">{{equipment.equipmentMessage.floorUuid ? equipment.equipmentMessage.floorUuid : "--"}}</span></el-col>
|
|
|
- <el-col class="title"><span class="type">绑定时间:</span><span class="data">{{equipment.equipmentMessage.createTime ? equipment.equipmentMessage.createTime : "--"}}</span></el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="xinfa commonWidth" v-if="xinfa.state"><!--信发设备信息弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span>{{xinfa.name}}</span>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain">
|
|
|
- <el-col class="module1">
|
|
|
- <div class="title">设备工况:</div>
|
|
|
- <div class="wrap" >
|
|
|
- <span class="span1" :style="xinfa.bgc"></span>
|
|
|
- <span class="span2" :style="xinfa.color">{{xinfa.text}}</span>
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- <el-col class="module2" v-if="xinfa.sbState">
|
|
|
- <div class="title">设备控制:</div>
|
|
|
- <div class="wrap">
|
|
|
- <el-button type="success" round size="mini" class="open" @click="xinfaSwitch('open')">唤醒</el-button>
|
|
|
- <el-button type="danger" round size="mini" class="off" @click="xinfaSwitch('off')">休眠</el-button>
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="ba commonWidth" v-if="ba.state"><!--ba设备信息弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span>设备信息</span>
|
|
|
- <img src="../../../assets/image/icon1.png" alt="" class="equipment-icon"/>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain scroll">
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">设备名称:</span>
|
|
|
- <span class="data">{{ba.baMessage1.deviceName ? ba.baMessage1.deviceName : "--"}}</span>
|
|
|
-
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">设备类型:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2">{{ba.baMessage1.deviceType ? ba.baMessage1.deviceType : "--"}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">设备编号:</span>
|
|
|
- <span class="data" >{{ba.baMessage1.registerDeviceId ? ba.baMessage1.registerDeviceId : "--"}}</span>
|
|
|
-
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">楼层:</span>
|
|
|
- <span class="data" >{{ba.baMessage1.floorUuid ? ba.baMessage1.floorUuid : "--"}}</span>
|
|
|
-
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">绑定时间:</span>
|
|
|
- <span class="data" >{{ba.baMessage1.createTime ? ba.baMessage1.createTime : "--"}}</span>
|
|
|
-
|
|
|
- </el-col>
|
|
|
-
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">冷阀反馈:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '01LFFK') && (ba.baMessage2.find(val=>val.m === '01LFFK').v == "0" ? "关闭" : ba.baMessage2.find(val=>val.m === '01LFFK').v == "1" ? "开启" : '--')}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">热阀反馈:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '02RFFK') && (ba.baMessage2.find(val=>val.m === '02RFFK').v == "0" ? "关闭" : ba.baMessage2.find(val=>val.m === '02RFFK').v == "1" ? "开启" : '--')}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">室内温度:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '03SNWD') && (ba.baMessage2.find(val=>val.m === '03SNWD').v ? Number(ba.baMessage2.find(val=>val.m === '03SNWD').v).toFixed(1) + "℃" : "--")}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">风机速度:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1"> {{ba.baMessage2.find(val=>val.m === '04FJSD') && (ba.baMessage2.find(val=>val.m === '04FJSD').v ? ba.baMessage2.find(val=>val.m === '04FJSD').v + "%" : "--")}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">风机启停:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '05FJQT') && (ba.baMessage2.find(val=>val.m === '05FJQT').v == "0" ? "停止" : ba.baMessage2.find(val=>val.m === '05FJQT').v == "0" ? "启动" : '--')}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">温度设定:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">
|
|
|
- {{ba.baMessage2.find(val=>val.m === '06WDSD')
|
|
|
- && (ba.baMessage2.find(val=>val.m === '06WDSD').v ? Number(ba.baMessage2.find(val=>val.m === '06WDSD').v).toFixed(1) + "℃(调整精度0.5℃)" : "--")}}
|
|
|
- </span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title"><span class="type">模式选择:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">
|
|
|
- {{ba.baMessage2.find(val=>val.m === '07MSXZ')
|
|
|
- &&
|
|
|
- ba.baMessage2.find(val=>val.m === '07MSXZ').v == "0" ?
|
|
|
- "制冷" : ba.baMessage2.find(val=>val.m === '07MSXZ').v == "1" ?
|
|
|
- "制热" : ba.baMessage2.find(val=>val.m === '07MSXZ').v == "2" ?
|
|
|
- "除湿" : ba.baMessage2.find(val=>val.m === '07MSXZ').v == "3" ?
|
|
|
- "通风" : "--" }}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">风机模式:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '08FJMS') && (ba.baMessage2.find(val=>val.m === '08FJMS').v == "0" ? "自动" : ba.baMessage2.find(val=>val.m === '08FJMS').v == "1" ? "手动" : '--')}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- <el-col class="title">
|
|
|
- <span class="type">风速设定:</span>
|
|
|
- <span class="data" v-if="ba.baMessage2.length>1">{{ba.baMessage2.find(val=>val.m === '09FSSD') && (ba.baMessage2.find(val=>val.m === '09FSSD').v ? Number(ba.baMessage2.find(val=>val.m === '09FSSD').v).toFixed(0) + "%" : "--")}}</span>
|
|
|
- <span class="data" v-else>--</span>
|
|
|
- </el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="entranceGuard commonWidth" v-if="entranceGuard.state"><!--门禁设备信息弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span>{{entranceGuard.entranceGuardMessage.name}}</span>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain">
|
|
|
- <el-col class="day">今日累计:</el-col>
|
|
|
- <div class="wrap">
|
|
|
- <div class="section">
|
|
|
- <span class="text">进</span>
|
|
|
- <span class="num" style="color:#FDC51A">{{entranceGuard.entranceGuardMessage.into || 0}}</span>
|
|
|
- </div>
|
|
|
- <div class="section">
|
|
|
- <span class="text">出</span>
|
|
|
- <span class="num" style="color:#1AF3FD">{{entranceGuard.entranceGuardMessage.out || 0}}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <!-- <p class="tableTitle">最新记录</p> -->
|
|
|
- <el-table
|
|
|
- height="200"
|
|
|
- :header-cell-style="{background:'rgba(22, 55, 163, 0.5)',color:'#fff',border:'none'}"
|
|
|
- :row-class-name="tableRowClassName"
|
|
|
- :data="entranceGuard.entranceGuardMessage.tableList" style="width: 100%;height:110px" class="success-row table2 scroll" >
|
|
|
- <el-table-column prop="id" label="序号" width="80"></el-table-column>
|
|
|
- <el-table-column prop="opdt" label="刷卡时间" > </el-table-column>
|
|
|
- <el-table-column prop="outid" label="学工号" width="80"> </el-table-column>
|
|
|
- <el-table-column prop="name" label="姓名" width="80"> </el-table-column>
|
|
|
- <el-table-column prop="rectype" label="记录类型" width="120"> </el-table-column>
|
|
|
- <el-table-column prop="ioflag" label="进出状态" width="80"> </el-table-column>
|
|
|
- <el-table-column prop="termname" label="终端编号" > </el-table-column>
|
|
|
- <!-- <el-table-column prop="cardsnr" label="卡序列号" > </el-table-column> -->
|
|
|
-
|
|
|
- </el-table>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-row class="music commonWidth" v-if="music.state"><!--背景音乐弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span class="title">背景音乐</span>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close" ></p>
|
|
|
- <!-- <p class="close" @click="centerDialogVisible = false" data="22"></p> -->
|
|
|
- </el-col>
|
|
|
- <el-col class="contain scroll" >
|
|
|
- <el-col class="section1 section">
|
|
|
- <el-table :data="music.musicTableData" border style="width: 100%;" >
|
|
|
- <el-table-column prop="playTime" label="播放时间" width="220"></el-table-column>
|
|
|
- <el-table-column prop="playContent" label="播放内容" ></el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-col>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="video commonWidth" v-if="video.state"><!--视屏监控弹框-->
|
|
|
- <el-col class="top">
|
|
|
- <el-col class="title">
|
|
|
- <img src="../../../assets/image/arrow.png" alt="" />
|
|
|
- <span>视频监控</span>
|
|
|
- <img src="../../../assets/image/icon2.png" alt="" class="equipment-icon"/>
|
|
|
- </el-col>
|
|
|
- <p class="close" @click="close"></p>
|
|
|
- </el-col>
|
|
|
- <el-col class="contain">
|
|
|
- <video v-if="video.play"
|
|
|
- :id="video.videoId"
|
|
|
- class="video-js vjs-default-skin videoPaly"
|
|
|
- preload="auto"
|
|
|
- autoplay="autoplay"
|
|
|
- :src="video.videoUrl" type="application/x-mpegURL">
|
|
|
- </video>
|
|
|
- <div class="videoNo" v-if="video.videoNo">
|
|
|
- <img src="../../../assets/image/video.png" alt="">
|
|
|
- <p>摄像头设备参数暂未接入</p>
|
|
|
- </div>
|
|
|
-
|
|
|
- </el-col>
|
|
|
-
|
|
|
- </el-row>
|
|
|
- <!-- </el-dialog> -->
|
|
|
- </div>
|
|
|
-</template>
|
|
|
-<script>
|
|
|
-import axios from 'axios'
|
|
|
-import 'video.js/dist/video-js.css'
|
|
|
-import videojs from 'video.js'
|
|
|
-import 'videojs-contrib-hls'
|
|
|
-import "@videojs/http-streaming"
|
|
|
-import { meetingPageApi, meetingStatusApi, videoUrl, xinfaToken, ba, accessControlListApi} from "@/plugins/api"
|
|
|
-export default {
|
|
|
- props:['resInfo',"close2"],
|
|
|
- data() {
|
|
|
- return {
|
|
|
- centerDialogVisible: true,
|
|
|
- warning:{//推送告警
|
|
|
- "state":false,
|
|
|
- "warningMessage":{},
|
|
|
- },
|
|
|
- equipment:{//设备信息
|
|
|
- "state":false,
|
|
|
- "equipmentMessage":{
|
|
|
- "deviceName": undefined,
|
|
|
- "deviceType": undefined,
|
|
|
- "createTime": undefined,
|
|
|
- "registerDeviceId":undefined,
|
|
|
- },
|
|
|
- },
|
|
|
- meeting:{//会议
|
|
|
- "state":false,
|
|
|
- "meetingMessage":{
|
|
|
- "status":undefined,
|
|
|
- "meeting":false, //
|
|
|
- "order":[], //预约列表数据
|
|
|
- "history":[], //历史信息列表数据
|
|
|
- "meetingForm1":{ //预约列表form
|
|
|
- current:1,
|
|
|
- size:10,
|
|
|
- startTime:undefined,
|
|
|
- endTime:undefined,
|
|
|
- roomId:109,
|
|
|
- },
|
|
|
- "meetingForm2":{ //历史信息列表form
|
|
|
- current:1,
|
|
|
- size:10,
|
|
|
- startTime:undefined,
|
|
|
- endTime:undefined,
|
|
|
- roomId:109,
|
|
|
- },
|
|
|
- "moreHistoryNo":false,
|
|
|
- "moreOrderNo":false,
|
|
|
- },
|
|
|
-
|
|
|
- },
|
|
|
- video:{//视频
|
|
|
- "state":false,
|
|
|
- "play":false,
|
|
|
- "videoId":undefined,
|
|
|
- "videoUrl":false,
|
|
|
- "videoNo":false,
|
|
|
- "videoImg":require("../../../assets/image/video.jpg"),
|
|
|
- "vedioData":[
|
|
|
- // {"title": "3层东楼梯","cameraIndexCode":"4db3dfbea6894b02a24673147a64d6c5","path":"",},
|
|
|
- ]
|
|
|
- },
|
|
|
- music:{//音乐
|
|
|
- "state":false,
|
|
|
- "musicTableData":[
|
|
|
- {"playTime":"2021-11-15 09:00:00","playContent":"时光对面的我"},
|
|
|
- {"playTime":"2021-11-15 10:00:00","playContent":"守护我的光"},
|
|
|
- ],
|
|
|
- },
|
|
|
- xinfa:{//信发
|
|
|
- "text":false,
|
|
|
- "state":false,
|
|
|
- "xinfaMessage":{},
|
|
|
- "bgc":{
|
|
|
- "background":undefined,
|
|
|
- },
|
|
|
- "color":{
|
|
|
- "color":undefined
|
|
|
- },
|
|
|
- "cMarks":undefined,
|
|
|
- "sbState":true,
|
|
|
- "name":undefined,
|
|
|
- },
|
|
|
- ba:{//ba
|
|
|
- "state":false,
|
|
|
- "baMessage1":{},
|
|
|
- "baMessage2":{},
|
|
|
- },
|
|
|
- entranceGuard:{//门禁
|
|
|
- state:false,
|
|
|
- entranceGuardMessage:{
|
|
|
- "tableList":[
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
- {"id":"1","outid":"11111", "name":"张三","termname":"154sdt", "cardsnr":"154sdtsadawee", "opdt":"2021-12-20 00:00:00", "rectype":"正常超时","ioflag":"进"},
|
|
|
-
|
|
|
- ],
|
|
|
- "Into":30,
|
|
|
- "out":20,
|
|
|
- "name":"一层大厅1#通道"
|
|
|
- },
|
|
|
- },
|
|
|
- time:[],
|
|
|
- }
|
|
|
- },
|
|
|
- watch: {
|
|
|
- resInfo(){
|
|
|
- this.getData()
|
|
|
- },
|
|
|
- close2(){
|
|
|
- this.close()
|
|
|
- },
|
|
|
- // immediate: true
|
|
|
- // deep: true,//深度监听
|
|
|
- },
|
|
|
- mounted(){
|
|
|
- this.getData()
|
|
|
- },
|
|
|
- methods: {
|
|
|
- videoPlay(){
|
|
|
- this.$nextTick(() => {
|
|
|
- let list = videojs(this.video.videoId , {
|
|
|
- events: [],
|
|
|
- // playbackRates: [0.7, 1.0, 1.5, 2.0], // 播放速度
|
|
|
- autoplay: "true", // 如果true,浏览器准备好时开始回放。
|
|
|
- controls: true, // 控制条
|
|
|
- preload: 'auto', // 视频预加载
|
|
|
- muted: true, // 默认情况下将会消除任何音频。
|
|
|
- loop: false, // 导致视频一结束就重新开始。
|
|
|
- language: 'zh-CN',
|
|
|
- controlBar: {
|
|
|
- timeDivider: true,
|
|
|
- durationDisplay: true
|
|
|
- },
|
|
|
- aspectRatio: '16:9', // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
|
|
|
- fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
|
|
|
- sources: [{
|
|
|
- type: 'application/x-mpegURL',
|
|
|
- src: this.video.videoUrl
|
|
|
- }],
|
|
|
- hls: true, // 启用hls?
|
|
|
- poster: 'https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fhbimg.b0.upaiyun.com%2F945cad7c7105d352aa3c513c94846bb0c2f1a61342067-OWFZcE_fw658&refer=http%3A%2F%2Fhbimg.b0.upaiyun.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1638947006&t=9cd1ab4df990ba151fcd5f0378f6e8cf', // 你的封面地址
|
|
|
- width: document.documentElement.clientWidth,
|
|
|
- notSupportedMessage: '此视频暂无法播放,请稍后再试'
|
|
|
- // autoplay:true,
|
|
|
- // controls:false,
|
|
|
- // bigPlayButton: false,
|
|
|
- // textTrackDisplay: false,
|
|
|
- // posterImage: true,
|
|
|
- // errorDisplay: false,
|
|
|
- // controlBar: true,
|
|
|
- // muted: true //静音模式 、、 解决首次页面加载播放。
|
|
|
- }, function () {
|
|
|
- this.play() // 自动播放
|
|
|
- })
|
|
|
- })
|
|
|
-
|
|
|
- // let list = videojs(this.video.videoId , {
|
|
|
- // events: [],
|
|
|
- // playbackRates: [0.7, 1.0, 1.5, 2.0], // 播放速度
|
|
|
- // autoplay: "true", // 如果true,浏览器准备好时开始回放。
|
|
|
- // controls: true, // 控制条
|
|
|
- // preload: 'auto', // 视频预加载
|
|
|
- // muted: true, // 默认情况下将会消除任何音频。
|
|
|
- // loop: false, // 导致视频一结束就重新开始。
|
|
|
- // language: 'zh-CN',
|
|
|
- // controlBar: {
|
|
|
- // timeDivider: true,
|
|
|
- // durationDisplay: true
|
|
|
- // },
|
|
|
- // aspectRatio: '16:9', // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
|
|
|
- // fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
|
|
|
- // sources: [{
|
|
|
- // type: 'application/x-mpegURL',
|
|
|
- // src: this.videoUrl
|
|
|
- // }],
|
|
|
- // hls: true, // 启用hls?
|
|
|
- // poster: video.videoImg, // 你的封面地址
|
|
|
- // width: document.documentElement.clientWidth,
|
|
|
- // notSupportedMessage: '此视频暂无法播放,请稍后再试'
|
|
|
- // }, function () {
|
|
|
- // this.play() // 自动播放
|
|
|
- // })
|
|
|
-
|
|
|
- },
|
|
|
- getData(){
|
|
|
- //
|
|
|
- if(this.resInfo.warningState){//推送告警
|
|
|
- this.warning.state = true
|
|
|
- this.warning.warningMessage = this.resInfo.warningMessage
|
|
|
- if(this.timeout){
|
|
|
- clearTimeout(this.timeout)
|
|
|
- }
|
|
|
- this.timeout = setTimeout(() => {
|
|
|
- this.warning.state = false
|
|
|
- this.close()
|
|
|
- }, 3000);
|
|
|
- }else if(this.resInfo.meetingState){//会议
|
|
|
- //console.log("会议更新")
|
|
|
- //会议状态
|
|
|
- meetingStatusApi({"rootName":this.meeting.meetingMessage.meetingForm1.roomId}).then(res =>{
|
|
|
- // this.meeting.state = res.data
|
|
|
- })
|
|
|
- //会议列表、历史会议
|
|
|
- var myDate = new Date();
|
|
|
- let Year = myDate.getFullYear();
|
|
|
- let Month = myDate.getMonth() + 1;
|
|
|
- let Day= myDate.getDate()
|
|
|
- if(Month<10){
|
|
|
- Month = '0' + Month
|
|
|
- }else{
|
|
|
- Month = Month
|
|
|
- }
|
|
|
- if(Day<10){
|
|
|
- Day = '0' + Day
|
|
|
- }else{
|
|
|
- Day = Day
|
|
|
- }
|
|
|
- this.meeting.meetingMessage.meetingForm1.current = 1
|
|
|
- this.meeting.meetingMessage.meetingForm2.current = 1
|
|
|
- this.meeting.meetingMessage.meetingForm1.startTime = Year + '-' + Month + '-' + Day + " 00:00:00"
|
|
|
- this.meeting.meetingMessage.meetingForm1.endTime = Year + '-' + Month + '-' + Day + " 23:59:59"
|
|
|
- meetingPageApi(this.meeting.meetingMessage.meetingForm1).then(res =>{
|
|
|
- this.meeting.meetingMessage.meeting = true
|
|
|
- this.meeting.meetingMessage.order = res.data.records
|
|
|
- })
|
|
|
- meetingPageApi(this.meeting.meetingMessage.meetingForm2).then(res =>{
|
|
|
- this.meeting.meetingMessage.history = res.data.records
|
|
|
- })
|
|
|
- }else if(this.resInfo.equipmentState){//设备
|
|
|
- //console.log("点位设备")
|
|
|
- this.equipment.state = true
|
|
|
- if(this.resInfo.equipmentMessage){
|
|
|
- this.equipment.equipmentMessage = this.resInfo.equipmentMessage
|
|
|
- }else{
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- }else if(this.resInfo.videoState){//视频
|
|
|
- if(this.resInfo.videoMessage){
|
|
|
- videoUrl({"cameraIndexCode":this.resInfo.videoMessage.registerDeviceId,"protocol":"hls"}).then(res =>{ // 点位摄像头视频
|
|
|
- //console.log("摄像头绑定")
|
|
|
- if(res.data != null){
|
|
|
- this.video.videoId = "video" + Date.now()
|
|
|
- this.video.videoUrl = res.data.url
|
|
|
- this.video.state = true
|
|
|
- this.video.play = true
|
|
|
- this.videoNo = false
|
|
|
- this.videoPlay()
|
|
|
- }
|
|
|
- })
|
|
|
- }else{
|
|
|
- //console.log("摄像头未绑定")
|
|
|
- this.video.state = true
|
|
|
- this.video.videoNo = true
|
|
|
- this.video.play = false
|
|
|
- }
|
|
|
- }else if(this.resInfo.xinfaState){//信发
|
|
|
- let cMark = this.resInfo.xinfaMessage.registerDeviceId
|
|
|
- this.xinfa.cMarks = cMark
|
|
|
- xinfaToken().then(res =>{ //信发设备
|
|
|
- //console.log("信发设备")
|
|
|
- let access_token = res.data.authToken
|
|
|
- let secret = res.data.secret
|
|
|
- let acces_secret_md5 = this.$md5(secret)
|
|
|
- let timestamp = Date.parse(new Date()) / 1000;
|
|
|
- let sign = this.$md5(access_token + acces_secret_md5 + timestamp);
|
|
|
- axios({
|
|
|
- method: 'get',
|
|
|
- url: 'http://10.108.35.105:8780/adc/sdk/dev_get_devstatus',
|
|
|
- params: {
|
|
|
- access_token: access_token,
|
|
|
- timestamp: timestamp,
|
|
|
- sign:sign,
|
|
|
- cMark:cMark
|
|
|
- },
|
|
|
- timeout: 3000,
|
|
|
- }).then(res =>{
|
|
|
- this.xinfa.state = true
|
|
|
- if(res.data.result == "failed"){
|
|
|
- this.xinfa.text = res.data.retInfo
|
|
|
- this.xinfa.bgc.background = "#E22323"
|
|
|
- this.xinfa.color.color = "#E22323"
|
|
|
- this.xinfa.name = this.resInfo.xinfaMessage.deviceName + this.resInfo.xinfaMessage.deviceType
|
|
|
- }else if(res.data.online == 0){
|
|
|
- this.xinfa.text = "不在线"
|
|
|
- this.xinfa.bgc.background = "#E22323"
|
|
|
- this.xinfa.color.color = "#E22323"
|
|
|
- this.xinfa.sbState = false
|
|
|
- this.xinfa.name = this.resInfo.xinfaMessage.deviceName + this.resInfo.xinfaMessage.deviceType
|
|
|
- }else{
|
|
|
- this.xinfa.text = "在线"
|
|
|
- this.xinfa.bgc.background = "#46C00B"
|
|
|
- this.xinfa.color.color = "#46C00B"
|
|
|
- this.xinfa.name = this.resInfo.xinfaMessage.deviceName + this.resInfo.xinfaMessage.deviceType
|
|
|
- }
|
|
|
- }).catch(err =>{
|
|
|
- this.xinfa.text = "不在线"
|
|
|
- this.xinfa.bgc.background = "#E22323"
|
|
|
- this.xinfa.color.color = "#E22323"
|
|
|
- this.xinfa.sbState = false
|
|
|
- this.xinfa.sbState = false
|
|
|
- this.xinfa.name = this.resInfo.xinfaMessage.deviceName + this.resInfo.xinfaMessage.deviceType
|
|
|
-
|
|
|
- });
|
|
|
- })
|
|
|
- }else if(this.resInfo.baState){//ba
|
|
|
- this.ba.baMessage1 = this.resInfo.baMessage
|
|
|
- ba({"deviceCode":this.resInfo.baMessage.registerDeviceId}).then(res =>{
|
|
|
- //console.log("ba设备")
|
|
|
- this.ba.state = true
|
|
|
- if(res.data){
|
|
|
- let data = JSON.parse(res.data.devDetails)
|
|
|
- this.ba.baMessage2 = data
|
|
|
- }
|
|
|
- //console.log(this.ba.baMessage2)
|
|
|
- })
|
|
|
- }else if(this.resInfo.entranceGuardState){//门禁
|
|
|
- this.ba.baMessage1 = this.resInfo.baMessage
|
|
|
- accessControlListApi({"deviceCode":this.resInfo.baMessage.registerDeviceId}).then(res =>{
|
|
|
- //console.log("门禁设备")
|
|
|
- // this.entranceGuard.state = true
|
|
|
- // if(res.data){
|
|
|
- // let data = JSON.parse(res.data.devDetails)
|
|
|
- // this.entranceGuard.entranceGuardMessage = data
|
|
|
- // }
|
|
|
- })
|
|
|
- }else{
|
|
|
-
|
|
|
- }
|
|
|
- },
|
|
|
- changeDate(){
|
|
|
- this.meeting.meetingMessage.meetingForm2.current = 1
|
|
|
- this.dataChange()
|
|
|
- meetingPageApi(this.meeting.meetingMessage.meetingForm2).then(res =>{
|
|
|
- this.meeting.meetingMessage.history = res.data.records
|
|
|
- })
|
|
|
- },
|
|
|
- dataChange(){//时间转化
|
|
|
- if(this.time.length>0){
|
|
|
- var myDate1 = this.time[0];
|
|
|
- let Year1 = myDate1.getFullYear();
|
|
|
- let Month1 = myDate1.getMonth() + 1;
|
|
|
- let Day1= myDate1.getDate()
|
|
|
- if(Month1<10){
|
|
|
- Month1 = '0' + Month1
|
|
|
- }else{
|
|
|
- Month1 = Month1
|
|
|
- }
|
|
|
- if(Day1<10){
|
|
|
- Day1 = '0' + Day1
|
|
|
- }else{
|
|
|
- Day1 = Day1
|
|
|
- }
|
|
|
- this.meeting.meetingMessage.meetingForm2.startTime = Year1 + '-' + Month1 + '-' + Day1 + " 00:00:00"
|
|
|
- var myDate2 = this.time[1];
|
|
|
- let Year2 = myDate2.getFullYear();
|
|
|
- let Month2 = myDate2.getMonth() + 1;
|
|
|
- let Day2= myDate2.getDate()
|
|
|
-
|
|
|
- if(Month2<10){
|
|
|
- Month2 = '0' + Month2
|
|
|
- }else{
|
|
|
- Month2 = Month2
|
|
|
- }
|
|
|
- if(Day2<10){
|
|
|
- Day2 = '0' + Day2
|
|
|
- }else{
|
|
|
- Day2 = Day2
|
|
|
- }
|
|
|
- this.meeting.meetingMessage.meetingForm2.endTime = Year2 + '-' + Month2 + '-' + Day2 + " 23:59:59"
|
|
|
- }
|
|
|
- },
|
|
|
- moremeetingMsg1() { //预约列表滑动加载
|
|
|
- //console.log('触发预约列表滑动加载事件')
|
|
|
- this.meeting.meetingMessage.meetingForm1.current ++
|
|
|
- meetingPageApi(this.meeting.meetingMessage.meetingForm1).then(res =>{
|
|
|
- if(res.data.records.length>0){
|
|
|
- let data = res.data.records
|
|
|
- for(let i =0;i<data.length; i++){
|
|
|
- this.meeting.meetingMessage.order.push(data[i])
|
|
|
- }
|
|
|
- }else{
|
|
|
- this.meeting.meetingMessage.meetingForm1.current --
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- moremeetingMsg2() { //历史会议信息列表滑动加载
|
|
|
- //console.log('触发历史会议信息滑动加载事件')
|
|
|
- this.dataChange()
|
|
|
- this.meeting.meetingMessage.meetingForm2.current ++
|
|
|
- meetingPageApi(this.meeting.meetingMessage.meetingForm2).then(res =>{
|
|
|
- if(res.data.records.length>0){
|
|
|
- let data = res.data.records
|
|
|
- for(let i =0;i<data.length; i++){
|
|
|
- this.meeting.meetingMessage.history.push(data[i])
|
|
|
- }
|
|
|
- }else{
|
|
|
- this.meeting.meetingMessage.meetingForm2.current --
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- xinfaSwitch(e){
|
|
|
- xinfaToken().then(res =>{ //信发设备
|
|
|
- //console.log("信发设备")
|
|
|
- let access_token = res.data.authToken
|
|
|
- let secret = res.data.secret
|
|
|
- let acces_secret_md5 = this.$md5(secret)
|
|
|
- let timestamp = Date.parse(new Date()) / 1000;
|
|
|
- let sign = this.$md5(access_token + acces_secret_md5 + timestamp);
|
|
|
- if(e == "open"){
|
|
|
- var sCmd ={
|
|
|
- paramType:17,
|
|
|
- onoff:1,//1:立即唤醒;0:立即休眠
|
|
|
- subcmd:'ctrl_lcd_onoff_ontime'
|
|
|
- }
|
|
|
- }else{
|
|
|
- var sCmd ={
|
|
|
- paramType:17,
|
|
|
- onoff:0,//1:立即唤醒;0:立即休眠
|
|
|
- subcmd:'ctrl_lcd_onoff_ontime'
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- axios({
|
|
|
- method: 'get',
|
|
|
- url: 'http://10.108.35.105:8780/adc/sdk/sendClientParams',
|
|
|
- params: {
|
|
|
- access_token: access_token,
|
|
|
- timestamp: timestamp,
|
|
|
- sign:sign,
|
|
|
- paramType:"17",
|
|
|
- cMarks:this.xinfa.cMarks,
|
|
|
- params:JSON.stringify(sCmd),
|
|
|
- retry:"0"
|
|
|
- },
|
|
|
- timeout: 3000,
|
|
|
- }).then(res =>{
|
|
|
- if(res.data.result =="success"){
|
|
|
- if(e == "open"){
|
|
|
- this.$message({
|
|
|
- showClose: true,
|
|
|
- message: '设备唤醒成功',
|
|
|
- type: 'success'
|
|
|
- });
|
|
|
- }else{
|
|
|
- this.$message({
|
|
|
- showClose: true,
|
|
|
- message: '设备已进入休眠状态',
|
|
|
- type: 'success'
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- })
|
|
|
- })
|
|
|
-
|
|
|
- },
|
|
|
- close(){
|
|
|
- this.warning.state = false
|
|
|
- this.music.state = false
|
|
|
- this.meeting.meetingMessage.meeting = false
|
|
|
- this.equipment.state = false
|
|
|
- this.video.state = false
|
|
|
- this.video.play = false
|
|
|
- this.video.videoId = false
|
|
|
- this.video.videoNo = false
|
|
|
- this.xinfa.state = false
|
|
|
- this.entranceGuard.state = false
|
|
|
- this.$emit("close",false)
|
|
|
- },
|
|
|
- tableRowClassName({row, rowIndex}) {
|
|
|
- if (rowIndex%2=== 1) //=>这里可以改成 rowIndex%2=== 1,后面直接else即可达到隔行变色效果。
|
|
|
- {
|
|
|
- return 'success-row';
|
|
|
- }
|
|
|
- return '';
|
|
|
- }
|
|
|
- },
|
|
|
-};
|
|
|
-</script>
|
|
|
-
|
|
|
-<style lang="scss" scoped>
|
|
|
-
|
|
|
-
|
|
|
-/deep/ .el-table .success-row {
|
|
|
- background: rgba(22, 55, 163, 0.5) !important;//这里可以修改颜色
|
|
|
-}
|
|
|
-.Spring-frame {
|
|
|
- position: absolute;
|
|
|
- width:50%;
|
|
|
- top:20%;
|
|
|
- left:25%;
|
|
|
- margin:0 auto;
|
|
|
- .warning{
|
|
|
- width:389px;
|
|
|
- height:126px;
|
|
|
- margin:0 auto;
|
|
|
- background: url('../../../assets/image/warning-bg.png') ;
|
|
|
- background-size: 389px 126px;
|
|
|
- .contain{
|
|
|
- width:58%;
|
|
|
- margin:6% 0 0 35%;
|
|
|
- line-height: 22px;
|
|
|
- color:#fff;
|
|
|
- font-size: 12px;
|
|
|
- .title{
|
|
|
- font-size: 12px;
|
|
|
- }
|
|
|
- .content{
|
|
|
- margin-top:0px;
|
|
|
- }
|
|
|
- }
|
|
|
- // .close{
|
|
|
- // width:16px;
|
|
|
- // height:16px;
|
|
|
- // background: url('../../../assets/image/close2.png') no-repeat;
|
|
|
- // position: absolute;
|
|
|
- // top:8px;right:6px;
|
|
|
- // }
|
|
|
- }
|
|
|
- .commonWidth{
|
|
|
- width:450px;
|
|
|
- display: block;
|
|
|
- margin:0 auto;
|
|
|
- .top{
|
|
|
- height: 39px;
|
|
|
- line-height: 35px;
|
|
|
- background: rgba(28,82,216,.5);
|
|
|
- border: 1px solid #1C52D8;
|
|
|
- border-bottom:none;
|
|
|
- border-radius: 4px 4px 0 0;
|
|
|
- .title{
|
|
|
- width:50%;
|
|
|
- font-size: 16px;
|
|
|
- margin-left:16px;
|
|
|
- vertical-align: middle;
|
|
|
- color:#38E7EE;
|
|
|
- vertical-align: middle;
|
|
|
- img{
|
|
|
- margin-right:4px;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- span{
|
|
|
- margin-left:16px;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- .equipment-icon{
|
|
|
- width:16px;
|
|
|
- position: absolute;
|
|
|
- top:16px;
|
|
|
- right:45%;
|
|
|
- }
|
|
|
- }
|
|
|
- .close{
|
|
|
- width:16px;
|
|
|
- height:16px;
|
|
|
- background: url('../../../assets/image/close.png') ;
|
|
|
- float:right;
|
|
|
- margin:12px 6px 0 0;
|
|
|
- }
|
|
|
- }
|
|
|
- .contain{
|
|
|
- background-color:rgba(0,22,103,.85);
|
|
|
- border-radius: 0 0 4px 4px;
|
|
|
- }
|
|
|
- }
|
|
|
- .meeting,.music{
|
|
|
- height:300px;
|
|
|
- .contain{
|
|
|
- height:300px;
|
|
|
- overflow: hidden;
|
|
|
- .section{
|
|
|
- padding:10px;
|
|
|
- font-size: 14px;
|
|
|
- font-family: Microsoft YaHei Regular, Microsoft YaHei Regular-Regular;
|
|
|
- font-weight: bold;
|
|
|
- text-align: left;
|
|
|
- color: #ffffff;
|
|
|
- line-height: 30px;
|
|
|
-
|
|
|
- }
|
|
|
- .title{
|
|
|
- margin-bottom:4px;
|
|
|
- }
|
|
|
- .section2 .title{
|
|
|
- width:auto;
|
|
|
- display: inline-block;
|
|
|
- margin-right:10px;
|
|
|
- vertical-align: middle;
|
|
|
- // margin-bottom:2px;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /deep/ .el-table tr, /deep/ .el-table th, /deep/ .el-table td{
|
|
|
- background-color: transparent;//这是设置透明背景色
|
|
|
- font-size: 10px;
|
|
|
- padding:0;
|
|
|
- }
|
|
|
- }
|
|
|
- .meeting .title{
|
|
|
- font-size: 12px;
|
|
|
- }
|
|
|
- .equipment,.ba{
|
|
|
- .contain{
|
|
|
- padding: 10px 10px 25px;
|
|
|
- overflow: hidden;
|
|
|
- .title{
|
|
|
- margin-top:10px;
|
|
|
- font-size: 14px;
|
|
|
- letter-spacing: 1px;
|
|
|
- .type{
|
|
|
- width:25%;
|
|
|
- text-align: right;
|
|
|
- display: inline-block;
|
|
|
- }
|
|
|
- .data{
|
|
|
- width:75%;
|
|
|
- text-align: left;
|
|
|
- display: inline-block;
|
|
|
- vertical-align: top;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- .ba {
|
|
|
- .contain{
|
|
|
- height:300px;
|
|
|
- overflow-y:scroll;
|
|
|
- }
|
|
|
- }
|
|
|
- .video{
|
|
|
- .contain{
|
|
|
- overflow: hidden;
|
|
|
- .videoPaly{
|
|
|
- width:100%;
|
|
|
- }
|
|
|
- .videoNo{
|
|
|
- margin: 10% auto;
|
|
|
- img{
|
|
|
- height:97px;
|
|
|
- width:102px;
|
|
|
- display: block;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
- p{
|
|
|
- text-align: center;
|
|
|
- font-size: 12px;
|
|
|
- color:#fff;
|
|
|
- margin-top:3%;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- .xinfa{
|
|
|
- width:290px !important;
|
|
|
- .top{
|
|
|
-
|
|
|
- .title{
|
|
|
- width:80% !important;
|
|
|
- }
|
|
|
- }
|
|
|
- .contain{
|
|
|
- height:140px;
|
|
|
- padding:35px 10px;
|
|
|
- overflow: hidden;
|
|
|
- .module1{
|
|
|
- .title{
|
|
|
- font-size: 14px;
|
|
|
- color:#fff;
|
|
|
- text-align: left;
|
|
|
- display: inline-block;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- .wrap{
|
|
|
- vertical-align: middle;
|
|
|
- display: inline-block;
|
|
|
- .span1{
|
|
|
- width:12px;
|
|
|
- height:12px;
|
|
|
- border-radius: 50%;
|
|
|
- background-color: red;
|
|
|
- display: inline-block;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- .span2{
|
|
|
- font-size: 14px;
|
|
|
- margin-left:5px;
|
|
|
- display: inline-block;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- .module2{
|
|
|
- margin-top:30px;
|
|
|
- .title{
|
|
|
- font-size: 14px;
|
|
|
- color:#fff;
|
|
|
- text-align: left;
|
|
|
- display: inline-block;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- .wrap{
|
|
|
- .open,.off{
|
|
|
- width:60px;
|
|
|
- height:26px;
|
|
|
- }
|
|
|
- .off{
|
|
|
- margin-left:25px;
|
|
|
- }
|
|
|
- vertical-align: middle;
|
|
|
- display: inline-block;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- .videoNo{
|
|
|
- margin: 10% auto;
|
|
|
- img{
|
|
|
- height:97px;
|
|
|
- width:102px;
|
|
|
- display: block;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
- p{
|
|
|
- text-align: center;
|
|
|
- font-size: 12px;
|
|
|
- color:#fff;
|
|
|
- margin-top:3%;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .entranceGuard{
|
|
|
- width:85%;
|
|
|
- .contain{
|
|
|
- height:350px;
|
|
|
- padding:15px 10px;
|
|
|
- overflow: hidden;
|
|
|
- .day{
|
|
|
- font-size: 14px;
|
|
|
- color:#fff;
|
|
|
- text-align: left;
|
|
|
- margin-left:4px;
|
|
|
- }
|
|
|
- .wrap{
|
|
|
- width:100%;
|
|
|
- .section{
|
|
|
- width:45.5%;
|
|
|
- display: inline-block;
|
|
|
- background: url(../../../assets/image/entranceGuard.png) no-repeat;
|
|
|
- background-size: 100% 100%;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- padding:20px 0;
|
|
|
- margin-top:6px;
|
|
|
- vertical-align: middle;
|
|
|
- .text{
|
|
|
- font-size: 16px;
|
|
|
- color:#fff;
|
|
|
- margin-left:40px;
|
|
|
- vertical-align: middle;
|
|
|
-
|
|
|
- }
|
|
|
- .num{
|
|
|
- font-size: 25px;
|
|
|
- margin-left:100px;
|
|
|
- vertical-align: middle;
|
|
|
- }
|
|
|
- }
|
|
|
- .section:nth-child(2){
|
|
|
- margin-left:9%;
|
|
|
- }
|
|
|
- }
|
|
|
- .tableTitle{
|
|
|
- width:96.2% !important;
|
|
|
- margin:0 auto;
|
|
|
- font-size: 16px;
|
|
|
- padding:6px 0;
|
|
|
- background-color: #1637A3;
|
|
|
- padding-left:8px;
|
|
|
- margin-top:14px;
|
|
|
- }
|
|
|
- .table2{
|
|
|
- width:98% !important;
|
|
|
- margin:0 auto;
|
|
|
- margin-top:10px;
|
|
|
- thead{
|
|
|
- tr{
|
|
|
- font-size: 30px !important;
|
|
|
- }
|
|
|
- }
|
|
|
- th{
|
|
|
- height:30px;
|
|
|
-
|
|
|
- border-bottom: none;
|
|
|
-
|
|
|
- }
|
|
|
- /deep/ tr{
|
|
|
- //background-color: transparent;//这是设置透明背景色
|
|
|
- padding:6px 0;
|
|
|
- border:none
|
|
|
- }
|
|
|
- /deep/ .cell{
|
|
|
- font-size: 14px;
|
|
|
- }
|
|
|
- /deep/ td{
|
|
|
- padding:4px 0;
|
|
|
- }
|
|
|
- }
|
|
|
- /deep/ .el-table tr, /deep/ .el-table th, /deep/ .el-table td{
|
|
|
- background-color: transparent;//这是设置透明背景色
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-/deep/ .el-table__row>td {
|
|
|
- border: none;
|
|
|
-}
|
|
|
-
|
|
|
-/deep/ .el-table::before {
|
|
|
- height: 0px;
|
|
|
-}
|
|
|
-.scroll{
|
|
|
- overflow-y: scroll;
|
|
|
- overflow-x: hidden;
|
|
|
-}
|
|
|
-// ::-webkit-scrollbar {
|
|
|
-// /*滚动条整体样式*/
|
|
|
-// width : 0px; /*高宽分别对应横竖滚动条的尺寸*/
|
|
|
-// height: 1px;
|
|
|
-// overflow: hidden;
|
|
|
-// }
|
|
|
-// ::-webkit-scrollbar-thumb {
|
|
|
-// /*滚动条里面小方块*/
|
|
|
-// border-radius: 1px;
|
|
|
-// box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
|
-// background : rgba(28,82,216,1);
|
|
|
-// }
|
|
|
-// ::-webkit-scrollbar-track {
|
|
|
-// /*滚动条里面轨道*/
|
|
|
-// box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
|
-// border-radius: 1px;
|
|
|
-// background : #ededed;
|
|
|
-// }
|
|
|
-
|
|
|
-// 对话框
|
|
|
-/deep/ .el-dialog{
|
|
|
- background-color: transparent;
|
|
|
- top:15%;
|
|
|
-}
|
|
|
-/deep/ .el-dialog__header{
|
|
|
- padding:0;
|
|
|
- padding-bottom:0;
|
|
|
-}
|
|
|
-/deep/ .el-dialog__body{
|
|
|
- padding:0;
|
|
|
-}
|
|
|
-/deep/ .el-dialog__headerbtn .el-dialog__close{
|
|
|
- display: none;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// table
|
|
|
-/deep/ .el-table--group, /deep/ .el-table--border{
|
|
|
- border:none;
|
|
|
-}
|
|
|
-/deep/ .el-table thead{
|
|
|
- color:#fff;
|
|
|
- // background-color: rgba(28,82,216,.2);
|
|
|
-}
|
|
|
-
|
|
|
-/deep/ .el-table--border th{
|
|
|
- border:1px solid #fff;
|
|
|
- border-bottom:none;
|
|
|
-}
|
|
|
-
|
|
|
-/deep/ .el-table--border td{
|
|
|
- border:1px solid #fff
|
|
|
-}
|
|
|
- /deep/ .el-table, .el-table__expanded-cell {
|
|
|
- background-color: transparent;//这是设置透明背景色
|
|
|
- color:#fff;
|
|
|
- border-collapse: collapse;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-/deep/ .el-table__empty-text{
|
|
|
- color:#fff;
|
|
|
- font-size: 10px;
|
|
|
- letter-spacing: 2px;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// data
|
|
|
-/deep/ .el-date-editor{
|
|
|
- border:1px solid #ccc;
|
|
|
- background-color: transparent;
|
|
|
- height:25px;
|
|
|
- line-height: 20px;
|
|
|
- padding:0;
|
|
|
- margin-top:2px;
|
|
|
- box-sizing: border-box;
|
|
|
-}
|
|
|
-/deep/ .el-range-input, /deep/ .el-input__icon el-range__close-icon{
|
|
|
- background-color: transparent;
|
|
|
- color:#fff;
|
|
|
- font-size: 12px;
|
|
|
- text-align: top;
|
|
|
- padding:0;
|
|
|
- position: relative;
|
|
|
- top:-4px
|
|
|
-}
|
|
|
-/deep/ .el-range__icon{
|
|
|
- display: none;
|
|
|
-}
|
|
|
-/deep/ .el-date-editor--datetimerange.el-input__inner{
|
|
|
- width:77%;
|
|
|
-
|
|
|
- display: inline-block;
|
|
|
-
|
|
|
-}
|
|
|
-/deep/ ::placeholder{
|
|
|
- color:#fff
|
|
|
-}
|
|
|
-/deep/ .el-range-separator{
|
|
|
- color:#fff;
|
|
|
- position: relative;
|
|
|
- top:-4px
|
|
|
-}
|
|
|
-/deep/table,/deep/ tr,/deep/ td{
|
|
|
- border-collapse: collapse !important;
|
|
|
-}
|
|
|
-/deep/ tr:hover, /deep/ td:hover, /deep/ table:hover{
|
|
|
- background-color: none !important;
|
|
|
-}
|
|
|
-/deep/ .el-table__empty-block{
|
|
|
- border:1px solid #fff;
|
|
|
-}
|
|
|
-/deep/ .el-table tbody tr:hover>td {
|
|
|
- background-color:transparent
|
|
|
-}
|
|
|
-
|
|
|
-::-webkit-scrollbar {
|
|
|
- /*滚动条整体样式*/
|
|
|
- width : 0px; /*高宽分别对应横竖滚动条的尺寸*/
|
|
|
- height: 0px;
|
|
|
- }
|
|
|
-::-webkit-scrollbar-thumb {
|
|
|
- /*滚动条里面小方块*/
|
|
|
- border-radius: 0px;
|
|
|
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
|
- background : #535353;
|
|
|
- }
|
|
|
- ::-webkit-scrollbar-track {
|
|
|
- /*滚动条里面轨道*/
|
|
|
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
|
- border-radius: 0px;
|
|
|
- background : #ededed;
|
|
|
- }
|
|
|
-
|
|
|
-::-webkit-scrollbar {
|
|
|
- display: none
|
|
|
- }
|
|
|
- /deep/.el-table--scrollable-y ::-webkit-scrollbar {
|
|
|
- display: none;
|
|
|
-}
|
|
|
-</style>
|