|
@@ -6,38 +6,32 @@
|
|
|
<view class="picker-max-box">
|
|
|
<view class="picker-title-box">
|
|
|
<view></view>
|
|
|
- <view>学院楼栋</view>
|
|
|
+ <view>所属学院</view>
|
|
|
+ </view>
|
|
|
+ <view class="picker-min-box" style="background:#f5f5f5;">
|
|
|
+ <view>{{collegeArray[deptIndex].name}}</view>
|
|
|
+ <img src="@/images/icon_06.png">
|
|
|
</view>
|
|
|
- <picker @change="buildingChange"
|
|
|
- :range-key="'label'" :value="value" :range="buildingList">
|
|
|
- <view class="picker-min-box">
|
|
|
- <view>{{buildingName?buildingName:'请选择学院楼栋'}}</view>
|
|
|
- <img src="@/images/icon_06.png">
|
|
|
- </view>
|
|
|
- </picker>
|
|
|
</view>
|
|
|
<view class="picker-max-box">
|
|
|
<view class="picker-title-box">
|
|
|
<view></view>
|
|
|
- <view>楼层</view>
|
|
|
+ <view>楼层楼栋</view>
|
|
|
+ </view>
|
|
|
+ <view class="picker-min-box" style="background:#f5f5f5;">
|
|
|
+ <view>{{deptArray[deptIndex].name}}</view>
|
|
|
+ <img src="@/images/icon_06.png">
|
|
|
</view>
|
|
|
- <picker @change="floorChange" :disabled="!buildingId"
|
|
|
- :range-key="'name'" :value="id" :range="floorList">
|
|
|
- <view class="picker-min-box">
|
|
|
- <view>{{floorName?floorName:'请选择楼层'}}</view>
|
|
|
- <img src="@/images/icon_06.png">
|
|
|
- </view>
|
|
|
- </picker>
|
|
|
</view>
|
|
|
<view class="picker-max-box">
|
|
|
<view class="picker-title-box">
|
|
|
<view></view>
|
|
|
<view>实验室</view>
|
|
|
</view>
|
|
|
- <picker @change="fjListChange" :disabled="!floorId"
|
|
|
+ <picker @change="fjListChange"
|
|
|
:range-key="'subjectName'" :value="id" :range="fjListArray">
|
|
|
<view class="picker-min-box">
|
|
|
- <view>{{subName?subName:'请选择实验室'}}</view>
|
|
|
+ <view>{{fjListIndex?fjListArray[fjListIndex].subjectName:'请选择实验室'}}</view>
|
|
|
<img src="@/images/icon_06.png">
|
|
|
</view>
|
|
|
</picker>
|
|
@@ -63,7 +57,7 @@
|
|
|
<!-- 头部 -->
|
|
|
<view class="evacuation-title-box">
|
|
|
<view class="evacuation-title-name-box">{{subName}}</view>
|
|
|
- <view class="site"><img src="@/images/icon_14.png">{{address}}</view>
|
|
|
+ <view class="site"><img src="@/images/icon_14.png">环境与气象研究院ECI公共实验室区</view>
|
|
|
</view>
|
|
|
<!-- 视频监控-选择疏散路径 -->
|
|
|
<!-- <view class="monito">
|
|
@@ -84,25 +78,6 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
</view> -->
|
|
|
- <!-- 滚动部分 -->
|
|
|
- <!-- <view class="evacuation-scroll-box">
|
|
|
- <view :class="videoIndex == index?'scroll-box-color':''"
|
|
|
- @click="scrollBoxClick(index)"
|
|
|
- v-for="(item,index) in videoList" :key="index">{{item.name}}</view>
|
|
|
- </view> -->
|
|
|
- <!-- 视频部分 -->
|
|
|
- <!-- <view class="evacuation-video-box">
|
|
|
- <video
|
|
|
- :class="index == videoIndex?'video-a':'video-b'"
|
|
|
- v-for="(item,index) in videoList" :key="index"
|
|
|
- :id="urlList.id" :src="item.url"
|
|
|
- poster="http://lab.sxitdlc.com:9300/statics/logo/logo.png"
|
|
|
- :custom-cache='false' :autoplay="true" :controls="true"
|
|
|
- :enable-danmu="false" :muted="true" :show-fullscreen-btn="true"
|
|
|
- :show-center-play-btn="false" :show-play-btn="false"
|
|
|
- @error="videoErrorCallback" >
|
|
|
- </video>
|
|
|
- </view> -->
|
|
|
<!-- 地图部分 -->
|
|
|
<view class="roadmap">
|
|
|
<view class="roadmap_t">
|
|
@@ -118,7 +93,7 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="evacuation-map-box">
|
|
|
- <view class="evacuation-map-big-box" :class="floorId==5?'map-1':(floorId==6?'map-2':(floorId==7?'map-3':''))">
|
|
|
+ <view class="evacuation-map-big-box">
|
|
|
<view class="evacuation-map-min-for-box" :class="subId == item.subjectId?'evacuation-map-min-for-box-color':''"
|
|
|
v-for="(item,index) in fjList" :key="index">{{item.room}}</view>
|
|
|
<img class="map-min-img" src="@/images/Version2.3/icon_zjt.gif" v-show="lightList[0].type">
|
|
@@ -134,7 +109,7 @@
|
|
|
<view class="video-max-box" v-if="urlList[0]">
|
|
|
<video
|
|
|
v-for="(item,index) in urlList" :key="index" :id="urlList.id" :src="item.url"
|
|
|
- poster="http://lab.sxitdlc.com:9300/statics/logo/logo.png"
|
|
|
+ :poster="videoCover"
|
|
|
:custom-cache='false' :autoplay="true" :controls="true"
|
|
|
:enable-danmu="false" :muted="true" :show-fullscreen-btn="true"
|
|
|
:show-center-play-btn="false" :show-play-btn="false"
|
|
@@ -184,24 +159,21 @@
|
|
|
|
|
|
<script>
|
|
|
import { config } from '@/api/request/config.js'
|
|
|
- import { lablayout,evacuate,closure,lineEvacuate,getRedis,getDeviceList,textParseUrlIps,
|
|
|
- getCameraByFloor,jinanGetStartList,nanhuGetStartList,wenchangGetStartList,lineEvacuateTow,treeselectByUser,getBuilding} from '@/api/index.js'
|
|
|
+ import { lablayout,evacuate,closure,lineEvacuate,getRedis,getDeviceList,textParseUrlIps,jndxGetStartList,getCameraByFloor,nanhuGetStartList,lineEvacuateTow,laboratoryInfo } from '@/api/index.js'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
+ videoCover:uni.getStorageSync('videoCover'),
|
|
|
//页面状态
|
|
|
pageType:"",
|
|
|
+ //学院
|
|
|
+ collegeArray:[{name:"环境与气象研究院",id:"142"}],
|
|
|
+ //楼栋
|
|
|
+ deptArray:[{name:"ECI公共实验室区",id:"137"}],
|
|
|
deptIndex:0,
|
|
|
- //院系楼栋数据
|
|
|
- buildingList:[],
|
|
|
- buildingName:"",
|
|
|
- buildingId:"",
|
|
|
- //楼层数据
|
|
|
- floorList:[],
|
|
|
- floorName:"",
|
|
|
- floorId:"",
|
|
|
//实验室
|
|
|
fjListArray:[],
|
|
|
+ fjListIndex:"",
|
|
|
//疏散方向
|
|
|
buttonArray:[
|
|
|
{name:"向左疏散",id:"1"},
|
|
@@ -255,144 +227,36 @@
|
|
|
startPoint:{},
|
|
|
//摄像头信息
|
|
|
deptId:'',
|
|
|
- itemData:{
|
|
|
- hardwareNUM:'',
|
|
|
- name:'',
|
|
|
- },
|
|
|
+ itemData:{},
|
|
|
broadcastType:false,
|
|
|
- address:"",
|
|
|
+ videoHardwareNUM:[],//实验室和楼道摄像头编码
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
onLoad(option) {
|
|
|
- this.treeselectByUser(option);
|
|
|
- this.getAppExitLine();
|
|
|
- getApp().watch(this.getMqttLineData,'lineData');
|
|
|
let self = this;
|
|
|
//判断入口(执行疏散)
|
|
|
+ if(option.item){
|
|
|
+ let item = JSON.parse(decodeURIComponent(option.item));
|
|
|
+ this.subId = item.subId;
|
|
|
+ this.title = item.title;
|
|
|
+ this.type = item.type;
|
|
|
+ this.itemData.subjectId = item.subId;
|
|
|
+ this.evacuateTwo();
|
|
|
+ this.laboratoryInfo();
|
|
|
+ }else{
|
|
|
+ //判断入口(首页按钮)
|
|
|
+ this.getRedis();
|
|
|
+ }
|
|
|
},
|
|
|
onShow(){
|
|
|
- // this.lablayout();
|
|
|
- // this.getCameraByFloor();
|
|
|
+ this.getAppExitLine();
|
|
|
+ this.lablayout();
|
|
|
+ getApp().watch(this.getMqttLineData,'lineData');
|
|
|
+
|
|
|
+
|
|
|
},
|
|
|
methods: {
|
|
|
- //根据账户信息查询学院楼栋数据
|
|
|
- async treeselectByUser(option){
|
|
|
- const {data} = await treeselectByUser()
|
|
|
- let list = [];
|
|
|
- for(let i=0;i<data.data.length;i++){
|
|
|
- for(let o=0;o<data.data[i].children.length;o++){
|
|
|
- let obj = {
|
|
|
- label:data.data[i].label+'-'+data.data[i].children[o].label,
|
|
|
- value:data.data[i].children[o].id,
|
|
|
- }
|
|
|
- list.push(obj);
|
|
|
- // if(i==0&&o==0){
|
|
|
- // this.$set(this,'buildingId',obj.value);
|
|
|
- // this.$set(this,'deptId',obj.value);
|
|
|
- // this.$set(this,'buildingName',obj.label);
|
|
|
- // }
|
|
|
- }
|
|
|
- }
|
|
|
- this.$set(this,'buildingList',list);
|
|
|
- this.$set(this,'buildingName',"");
|
|
|
- this.$set(this,'buildingId',"");
|
|
|
- this.$set(this,'deptId',"");
|
|
|
- this.$set(this,'floorList',[]);
|
|
|
- this.$set(this,'floorName',"");
|
|
|
- this.$set(this,'floorId',"");
|
|
|
- this.$set(this,'fjListArray',[]);
|
|
|
- this.$set(this,'subName',"");
|
|
|
- this.$set(this,'subId',"");
|
|
|
- // this.getBuilding(this.buildingId);
|
|
|
- if(option.item){
|
|
|
- let item = JSON.parse(decodeURIComponent(option.item));
|
|
|
- console.log("item",item)
|
|
|
- this.subId = item.subId;
|
|
|
- this.subName = item.subjectName;
|
|
|
- this.address = item.address
|
|
|
- this.buildingId = item.buildingId;
|
|
|
- this.deptId = item.buildingId;
|
|
|
- this.floorId = item.floorId;
|
|
|
- this.title = item.title;
|
|
|
- this.type = item.type;
|
|
|
- this.lablayout(this.buildingId,this.floorId);
|
|
|
- this.evacuateTwo();
|
|
|
- }else{
|
|
|
- //判断入口(首页按钮)
|
|
|
- this.getRedis();
|
|
|
- }
|
|
|
- },
|
|
|
- //根据账户信息查询学院楼栋数据
|
|
|
- async getBuilding(buildingId){
|
|
|
- const {data} = await getBuilding(buildingId)
|
|
|
- // 过滤了三楼
|
|
|
- let list = [];
|
|
|
- for(let i=0;i<data.data.length;i++){
|
|
|
- if(data.data[i].id != 7){
|
|
|
- list.push(data.data[i]);
|
|
|
- }
|
|
|
- }
|
|
|
- this.$set(this,'floorList',list);
|
|
|
- this.$set(this,'floorName',"");
|
|
|
- this.$set(this,'floorId',"");
|
|
|
- this.$set(this,'fjListArray',[]);
|
|
|
- this.$set(this,'subName',"");
|
|
|
- this.$set(this,'subId',"");
|
|
|
- // if(data.data[0]){
|
|
|
- // this.$set(this,'floorName',data.data[0].name);
|
|
|
- // this.$set(this,'floorId',data.data[0].id);
|
|
|
- // this.lablayout(this.buildingId,this.floorId);
|
|
|
- // }
|
|
|
- },
|
|
|
- //获取实验室布局
|
|
|
- async lablayout(buildingId,floorId){
|
|
|
- console.log('buildingId',buildingId)
|
|
|
- console.log('floorId',floorId)
|
|
|
- let self = this;
|
|
|
- const {data} = await lablayout(buildingId)
|
|
|
- if(data.code == 200){
|
|
|
- for(let i=0;i<data.data.length;i++){
|
|
|
- if(data.data[i].id == floorId){
|
|
|
- let newList = [];
|
|
|
- self.fjList = data.data[i].list;
|
|
|
- for(let o=0;o<data.data[i].list.length;o++){
|
|
|
- if(data.data[i].list[o].subjectId != -1){
|
|
|
- newList.push(data.data[i].list[o]);
|
|
|
- }
|
|
|
- }
|
|
|
- this.$set(this,'fjListArray',newList);
|
|
|
- // if(newList[0]){
|
|
|
- // console.log("newList",newList[0])
|
|
|
- // this.$set(this,'subName',newList[0].subjectName);
|
|
|
- // this.$set(this,'subId',newList[0].subjectId);
|
|
|
- // }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- //学院楼栋选中
|
|
|
- buildingChange(e){
|
|
|
- // this.$set(this,'buildingIndex',e.detail.value);
|
|
|
- this.$set(this,'buildingName',this.buildingList[e.detail.value].label);
|
|
|
- this.$set(this,'buildingId',this.buildingList[e.detail.value].value);
|
|
|
- this.$set(this,'deptId',this.buildingList[e.detail.value].value);
|
|
|
- this.getBuilding(this.buildingList[e.detail.value].value);
|
|
|
- },
|
|
|
- //楼层选中
|
|
|
- floorChange(e){
|
|
|
- // this.$set(this,'floorIndex',e.detail.value);
|
|
|
- this.$set(this,'floorName',this.floorList[e.detail.value].name);
|
|
|
- this.$set(this,'floorId',this.floorList[e.detail.value].id);
|
|
|
- this.lablayout(this.buildingId,this.floorList[e.detail.value].id);
|
|
|
- },
|
|
|
- //实验室选择
|
|
|
- fjListChange(e){
|
|
|
- this.$set(this,'subName',this.fjListArray[e.detail.value].subjectName);
|
|
|
- this.$set(this,'subId',this.fjListArray[e.detail.value].subjectId);
|
|
|
- this.itemData.name=this.fjListArray[e.detail.value].subjectName
|
|
|
- this.itemData.floorId=this.fjListArray[e.detail.value].floorId
|
|
|
- this.itemData.id=this.fjListArray[e.detail.value].id
|
|
|
- },
|
|
|
getAppExitLine(){
|
|
|
let list = [{type:"lab/exit/line"}];
|
|
|
getApp().appMqttOn(1,list);
|
|
@@ -421,18 +285,47 @@
|
|
|
url:'/pages_manage/workbench/laboratory/monitor?item='+encodeURIComponent(JSON.stringify(this.itemData))+'&deptId='+this.deptId
|
|
|
})
|
|
|
},
|
|
|
+ //获取实验室摄像头
|
|
|
+ async laboratoryInfo(){
|
|
|
+
|
|
|
+ let _this = this;
|
|
|
+ const {data} = await laboratoryInfo(_this.itemData.subjectId);
|
|
|
+ if(data.code == 200){
|
|
|
+ let list = data.data[0];
|
|
|
+ list.labHardwareVOList.forEach(function(item){
|
|
|
+ if(item.hardwareTypeEnum.enumName=='VIDEO_MONITOR'){
|
|
|
+ console.log(item.hardwareNUM)
|
|
|
+ _this.videoHardwareNUM.push(item.hardwareNUM)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ this.getCameraByFloor();
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
//获取楼层摄像头列表
|
|
|
async getCameraByFloor(){
|
|
|
- const {data} = await getCameraByFloor({floorId:this.floorId})
|
|
|
+ let _this=this;
|
|
|
+ const {data} = await getCameraByFloor({floorId:5})
|
|
|
if(data.code == 200){
|
|
|
if(data.data[0]){
|
|
|
- this.itemData.hardwareNUM=data.data.join(',')
|
|
|
- this.wenchangGetStartList(data.data);
|
|
|
- // this.startUrl(response.data);
|
|
|
+ let list=_this.videoHardwareNUM.concat(data.data)
|
|
|
+ let qc=[]
|
|
|
+ for(var i = 0; i < list.length-1; i++){
|
|
|
+ for(var j = i+1; j < list.length; j++){
|
|
|
+ if(list[i]===list[j]){
|
|
|
+ list.splice(j,1);
|
|
|
+ j--;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.nanhuGetStartList(list);
|
|
|
+ }else{
|
|
|
+ this.nanhuGetStartList(_this.videoHardwareNUM);
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- async wenchangGetStartList(rows){
|
|
|
+ async nanhuGetStartList(rows){
|
|
|
let self = this;
|
|
|
let list = "";
|
|
|
for(let i=0;i<rows.length;i++){
|
|
@@ -444,11 +337,11 @@
|
|
|
deviceIds:list,
|
|
|
// deviceIds:'440102004920000000011111,2C440102004920000000011112',
|
|
|
};
|
|
|
- const {data} = await jinanGetStartList(obj)
|
|
|
+ const {data} = await jndxGetStartList(obj)
|
|
|
if(data.code == 200){
|
|
|
let list = [];
|
|
|
for(let i=0;i<data.data.length;i++){
|
|
|
- let text = 'https://lab.sxitdlc.com/wenchang/stream/';
|
|
|
+ let text = 'https://lab.sxitdlc.com/jinandaxue/stream/';
|
|
|
let url = data.data[i].result.body.data.hls;
|
|
|
url = url.split("rtp/");
|
|
|
let newUrl = text+'rtp/'+url[1];
|
|
@@ -603,38 +496,38 @@
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
- //发送语音
|
|
|
- async textParseUrlIps(text){
|
|
|
- let self = this;
|
|
|
- let newList = [];
|
|
|
- for(let i=0;i<self.trumpetList.length;i++){
|
|
|
- if(self.trumpetList[i].type){
|
|
|
- let obj = {
|
|
|
- sn:self.trumpetList[i].deviceSn,
|
|
|
- port:self.trumpetList[i].port,
|
|
|
- deviceIp:self.trumpetList[i].deviceIp,
|
|
|
- type:"",
|
|
|
- name:"",
|
|
|
- speed:"",
|
|
|
- params:{
|
|
|
- tid:"",
|
|
|
- vol:self.trumpetList[i].deviceVol,
|
|
|
- urls:[]
|
|
|
- }
|
|
|
- };
|
|
|
- newList.push(obj);
|
|
|
- }
|
|
|
- }
|
|
|
- const {data} = await textParseUrlIps(newList,text)
|
|
|
- if(data.code == 200){
|
|
|
- uni.showToast({
|
|
|
- title: '发送成功',
|
|
|
- icon:"none",
|
|
|
- mask:true,
|
|
|
- duration: 2000
|
|
|
- });
|
|
|
- }
|
|
|
- },
|
|
|
+ //发送语音
|
|
|
+ async textParseUrlIps(text){
|
|
|
+ let self = this;
|
|
|
+ let newList = [];
|
|
|
+ for(let i=0;i<self.trumpetList.length;i++){
|
|
|
+ if(self.trumpetList[i].type){
|
|
|
+ let obj = {
|
|
|
+ sn:self.trumpetList[i].deviceSn,
|
|
|
+ port:self.trumpetList[i].port,
|
|
|
+ deviceIp:self.trumpetList[i].deviceIp,
|
|
|
+ type:"",
|
|
|
+ name:"",
|
|
|
+ speed:"",
|
|
|
+ params:{
|
|
|
+ tid:"",
|
|
|
+ vol:self.trumpetList[i].deviceVol,
|
|
|
+ urls:[]
|
|
|
+ }
|
|
|
+ };
|
|
|
+ newList.push(obj);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ const {data} = await textParseUrlIps(newList,text)
|
|
|
+ if(data.code == 200){
|
|
|
+ uni.showToast({
|
|
|
+ title: '发送成功',
|
|
|
+ icon:"none",
|
|
|
+ mask:true,
|
|
|
+ duration: 2000
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
//监听应急疏散数据变更
|
|
|
getMqttLineData(val){
|
|
|
console.log('收到疏散MQTT')
|
|
@@ -663,15 +556,12 @@
|
|
|
if(data.data){
|
|
|
this.isEvacuate=false;
|
|
|
this.deptId = data.data.deptId;
|
|
|
- this.buildingId = data.data.buildId;
|
|
|
- this.floorId = data.data.floorId;
|
|
|
this.subId = data.data.subId;
|
|
|
this.subName = data.data.subName;
|
|
|
- this.address = data.data.deptName+'-'+data.data.buildName+'-'+data.data.floorName
|
|
|
- // this.lablayout(data.data.buildId,data.data.floorId);
|
|
|
- this.lablayout(this.buildingId,this.floorId);
|
|
|
+ this.itemData.subjectId = data.data.subId;
|
|
|
+ this.laboratoryInfo();
|
|
|
this.evacuate();
|
|
|
- // this.getBuilding(this.buildingId);
|
|
|
+ console.log('测试',data.data.subId)
|
|
|
}else{
|
|
|
this.pageType = 1;
|
|
|
this.isEvacuate=true;
|
|
@@ -679,6 +569,18 @@
|
|
|
}
|
|
|
|
|
|
},
|
|
|
+ //实验室选择
|
|
|
+ fjListChange(e){
|
|
|
+ this.fjListIndex = e.detail.value;
|
|
|
+ this.$set(this,'subName',this.fjListArray[this.fjListIndex].subjectName);
|
|
|
+ this.$set(this,'subId',this.fjListArray[e.detail.value].subjectId);
|
|
|
+ this.$set(this,'deptId',this.fjListArray[e.detail.value].deptId);
|
|
|
+
|
|
|
+ this.itemData.name=this.fjListArray[e.detail.value].subjectName
|
|
|
+ this.itemData.floorId=this.fjListArray[e.detail.value].floorId
|
|
|
+ this.itemData.id=this.fjListArray[e.detail.value].id
|
|
|
+ this.itemData.subjectId=this.fjListArray[e.detail.value].subjectId
|
|
|
+ },
|
|
|
//疏散路线选择
|
|
|
buttonChangeTwo(e){
|
|
|
this.buttonArrayIndex = e.detail.value;
|
|
@@ -740,9 +642,10 @@
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- this.address = this.buildingName+''+this.floorName
|
|
|
+
|
|
|
this.lineEvacuateTow();
|
|
|
- this.getCameraByFloor();
|
|
|
+ this.laboratoryInfo();
|
|
|
+
|
|
|
},
|
|
|
/* 2.5获取疏散线路 */
|
|
|
async lineEvacuateTow(){
|
|
@@ -846,14 +749,14 @@
|
|
|
}
|
|
|
this.lightList = newList;
|
|
|
console.log('灯数据改变',this.lightList);
|
|
|
+
|
|
|
this.pageType = 2;
|
|
|
this.$forceUpdate();
|
|
|
this.getDeviceList();
|
|
|
- this.getCameraByFloor();
|
|
|
},
|
|
|
async getDeviceList(){
|
|
|
let obj ={
|
|
|
- floorId:this.floorId,
|
|
|
+ floorId:5,
|
|
|
page:1,
|
|
|
pageSize:100,
|
|
|
};
|
|
@@ -869,6 +772,27 @@
|
|
|
scrollBoxClick(index){
|
|
|
this.videoIndex = index;
|
|
|
},
|
|
|
+ //获取实验室布局
|
|
|
+ async lablayout(){
|
|
|
+ let self = this;
|
|
|
+ const {data} = await lablayout(137)
|
|
|
+ if(data.code == 200){
|
|
|
+ for(let i=0;i<data.data.length;i++){
|
|
|
+ if(data.data[i].id == 5){
|
|
|
+ self.fjList = data.data[i].list;
|
|
|
+ let newList = [];
|
|
|
+ for(let o=0;o<data.data[i].list.length;o++){
|
|
|
+ if(data.data[i].list[o].subjectId != -1){
|
|
|
+ newList.push(data.data[i].list[o]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ this.$set(this,'fjListArray',newList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
beforeDestroy(){
|
|
|
//断开mqtt连接
|
|
@@ -950,11 +874,12 @@
|
|
|
border-radius:20rpx;
|
|
|
padding:20rpx 0 30rpx;
|
|
|
.evacuation-title-box{
|
|
|
- // height:150rpx;
|
|
|
+ height:150rpx;
|
|
|
//border-bottom:1rpx solid #dedede;
|
|
|
background: #FFFFFF;
|
|
|
border-radius: 20rpx;
|
|
|
- padding:34rpx 22rpx;
|
|
|
+ padding-left:22rpx;
|
|
|
+ padding-top:34rpx;
|
|
|
box-sizing :border-box;
|
|
|
.evacuation-title-name-box{
|
|
|
font-size: 30rpx;
|
|
@@ -1143,209 +1068,147 @@
|
|
|
overflow:hidden;
|
|
|
border:1rpx solid #E0E0E0;
|
|
|
margin-top:20rpx;
|
|
|
- .map-1{
|
|
|
- background:url(../images/kuangdaMap/map1.png);
|
|
|
+ .evacuation-map-big-box{
|
|
|
+ height:285rpx;
|
|
|
+ width:641rpx;
|
|
|
+ background:url(../images/Version2.3/icon_bj_syspmtcy_jinan.png);
|
|
|
+ background-size 100%
|
|
|
+ margin:28rpx 13rpx ;
|
|
|
+ position relative
|
|
|
+ .evacuation-map-min-for-box{
|
|
|
+ overflow: hidden;
|
|
|
+ display: inline-block;
|
|
|
+ line-height:70rpx;
|
|
|
+ text-align: center;
|
|
|
+ font-size:14rpx;
|
|
|
+ }
|
|
|
+ .evacuation-map-min-for-box-color{
|
|
|
+ background: rgba(0,189,255,0.3);
|
|
|
+ }
|
|
|
.evacuation-map-min-for-box:nth-child(1){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:54rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin:0rpx 80rpx 0 0;
|
|
|
+ height:92rpx;
|
|
|
+ width:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(2){
|
|
|
- margin:4rpx 54rpx 0 0;
|
|
|
- width:54rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ height: 92rpx;
|
|
|
+ width: 57rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(3){
|
|
|
- margin:4rpx 54rpx 0 0;
|
|
|
- width:100rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(4){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:135rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(5){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:95rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(6){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:54rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(7){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:130rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 0 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(8){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:149rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin: 0rpx 50rpx 0 0;
|
|
|
+ width:58rpx;
|
|
|
+ height:92rpx;
|
|
|
}
|
|
|
+ /* 第二层 */
|
|
|
.evacuation-map-min-for-box:nth-child(9){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:84rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin:0rpx 0rpx 0 0;
|
|
|
+ width:52rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(10){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:84rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:59rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(11){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:94rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:63rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(12){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:44rpx;
|
|
|
- height:102rpx;
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:57rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
.evacuation-map-min-for-box:nth-child(13){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:64rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .map-min-img:nth-child(14){
|
|
|
- top: 134rpx;
|
|
|
- left: 80rpx;
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:58rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(15){
|
|
|
- top: 134rpx;
|
|
|
- left: 160rpx;
|
|
|
+ .evacuation-map-min-for-box:nth-child(14){
|
|
|
+ margin:46rpx 0 0 0rpx;;
|
|
|
+ width:58rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(16){
|
|
|
- top: 134rpx;
|
|
|
- left:280rpx;
|
|
|
+ .evacuation-map-min-for-box:nth-child(15){
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:60rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(17){
|
|
|
- top: 134rpx;
|
|
|
- left:340rpx;
|
|
|
+ .evacuation-map-min-for-box:nth-child(16){
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:57rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(18){
|
|
|
- top: 134rpx;
|
|
|
- left:460rpx;
|
|
|
+ .evacuation-map-min-for-box:nth-child(17){
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:58rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(19){
|
|
|
- top: 134rpx;
|
|
|
- left:540rpx;
|
|
|
+ .evacuation-map-min-for-box:nth-child(18){
|
|
|
+ margin:46rpx 0 0 0rpx;
|
|
|
+ width:58rpx;
|
|
|
+ height:135rpx;
|
|
|
}
|
|
|
- }
|
|
|
- .map-2{
|
|
|
- background:url(../images/kuangdaMap/map2.png);
|
|
|
- .evacuation-map-min-for-box:nth-child(1){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:54rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(2){
|
|
|
- margin:4rpx 54rpx 0 0;
|
|
|
- width:54rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(3){
|
|
|
- margin:4rpx 54rpx 0 0;
|
|
|
- width:100rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(4){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:135rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(5){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:145rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(6){
|
|
|
- margin:4rpx 0 0 0;
|
|
|
- width:106rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(7){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:106rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(8){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:100rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(9){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:100rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(10){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:92rpx;
|
|
|
- height:102rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box:nth-child(11){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:90rpx;
|
|
|
- height:102rpx;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ .map-min-img{
|
|
|
+ position: absolute;
|
|
|
+ width:34rpx;
|
|
|
+ height:22rpx;
|
|
|
}
|
|
|
- .evacuation-map-min-for-box:nth-child(12){
|
|
|
- margin:78rpx 0 0 0;
|
|
|
- width:53rpx;
|
|
|
- height:102rpx;
|
|
|
+ .map-min-img:nth-child(19){
|
|
|
+ top: 113rpx;
|
|
|
+ left: 70rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(13){
|
|
|
- top: 134rpx;
|
|
|
- left: 80rpx;
|
|
|
+ .map-min-img:nth-child(20){
|
|
|
+ top: 113rpx;
|
|
|
+ left: 120rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(14){
|
|
|
- top: 134rpx;
|
|
|
- left: 160rpx;
|
|
|
+ .map-min-img:nth-child(21){
|
|
|
+ top: 113rpx;
|
|
|
+ left:230rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(15){
|
|
|
- top: 134rpx;
|
|
|
+ .map-min-img:nth-child(22){
|
|
|
+ top: 113rpx;
|
|
|
left:280rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(16){
|
|
|
- top: 134rpx;
|
|
|
- left:340rpx;
|
|
|
- }
|
|
|
- .map-min-img:nth-child(17){
|
|
|
- top: 134rpx;
|
|
|
- left:460rpx;
|
|
|
+ .map-min-img:nth-child(23){
|
|
|
+ top: 113rpx;
|
|
|
+ left:350rpx;
|
|
|
}
|
|
|
- .map-min-img:nth-child(18){
|
|
|
- top: 134rpx;
|
|
|
- left:540rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- .map-3{
|
|
|
- background:url(../images/kuangdaMap/map3.png);
|
|
|
- }
|
|
|
- .evacuation-map-big-box{
|
|
|
- height:293rpx;
|
|
|
- width:644rpx;
|
|
|
- // background:url(../images/Version2.3/icon_bj_syspmtcy_jinan.png);
|
|
|
- background-size 100%
|
|
|
- margin:28rpx 13rpx ;
|
|
|
- position relative
|
|
|
- .evacuation-map-min-for-box{
|
|
|
- overflow: hidden;
|
|
|
- display: inline-block;
|
|
|
- line-height:70rpx;
|
|
|
- text-align: center;
|
|
|
- font-size:14rpx;
|
|
|
- }
|
|
|
- .evacuation-map-min-for-box-color{
|
|
|
- background: rgba(0,189,255,0.3);
|
|
|
- }
|
|
|
- .map-min-img{
|
|
|
- position: absolute;
|
|
|
- width:34rpx;
|
|
|
- height:22rpx;
|
|
|
+ .map-min-img:nth-child(24){
|
|
|
+ top: 113rpx;
|
|
|
+ left:400rpx;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1448,8 +1311,8 @@
|
|
|
.trumpet-max-box{
|
|
|
display :flex;
|
|
|
justify-content :flex-start;
|
|
|
- margin-top :22rpx;
|
|
|
flex-wrap: wrap;
|
|
|
+ margin-top :22rpx;
|
|
|
.trumpet-for-box{
|
|
|
display:inline-block;
|
|
|
width:200rpx;
|