|
|
|
|
@ -20,7 +20,9 @@
|
|
|
|
|
<div>{{item.phone}}</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="flex ai-c jc-e" style="width:75px">
|
|
|
|
|
<img class="img-box" src="/img/phone.png" @click="callPhoneOne(item.phone)" />
|
|
|
|
|
<img class="img-box" src="/img/homeimg/video-call-icon.png" @click="videoCall(item.phone)" />
|
|
|
|
|
<img class="img-box" src="/img/homeimg/to-position-icon.png" @click="toPosition([item.lng,item.lat])" />
|
|
|
|
|
<img class="img-box" src="/img/phone.png" @click="callPhoneOne(item.phone)" />
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
@ -51,13 +53,21 @@ import { getMethodCommon, postMethodCommon } from '../../../api/common';
|
|
|
|
|
callText:null,
|
|
|
|
|
callTextShow:false,
|
|
|
|
|
phones:null,
|
|
|
|
|
markGraphicLayerArr:null,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
created(){
|
|
|
|
|
this.getListData();
|
|
|
|
|
|
|
|
|
|
window.videoCall = this.videoCall;
|
|
|
|
|
},
|
|
|
|
|
mounted(){
|
|
|
|
|
|
|
|
|
|
let _this = this;
|
|
|
|
|
setInterval(function(){
|
|
|
|
|
_this.getListData();
|
|
|
|
|
},5000)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
methods:{
|
|
|
|
|
checkChange(){
|
|
|
|
|
@ -71,6 +81,7 @@ import { getMethodCommon, postMethodCommon } from '../../../api/common';
|
|
|
|
|
if(res.code == 200){
|
|
|
|
|
this.list = res.data
|
|
|
|
|
this.total = res.count
|
|
|
|
|
this.addLayerPoint();
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
@ -147,6 +158,87 @@ import { getMethodCommon, postMethodCommon } from '../../../api/common';
|
|
|
|
|
this.callTextShow = false;
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
addLayerPoint() {
|
|
|
|
|
if (this.markGraphicLayer == null) {
|
|
|
|
|
this.markGraphicLayer = new mars3d.layer.GraphicLayer();
|
|
|
|
|
window.globalmap.addLayer(this.markGraphicLayer);
|
|
|
|
|
}
|
|
|
|
|
this.markGraphicLayer.clear();
|
|
|
|
|
|
|
|
|
|
this.markGraphicLayerArr = [];
|
|
|
|
|
|
|
|
|
|
this.list.forEach((item, index) => {
|
|
|
|
|
let graphic = new mars3d.graphic.BillboardEntity({
|
|
|
|
|
position: [item.lng, item.lat],
|
|
|
|
|
style: {
|
|
|
|
|
image: "/img/jiuyuanrenyuan.png",
|
|
|
|
|
horizontalOrigin: Cesium.HorizontalOrigin.CENTER,
|
|
|
|
|
verticalOrigin: Cesium.VerticalOrigin.BOTTOM,
|
|
|
|
|
clampToGround: true,
|
|
|
|
|
scale: 0.7,
|
|
|
|
|
label: {
|
|
|
|
|
text: "",
|
|
|
|
|
font_size: 14,
|
|
|
|
|
color: "#ffffff",
|
|
|
|
|
pixelOffsetY: 10,
|
|
|
|
|
distanceDisplayCondition: true,
|
|
|
|
|
distanceDisplayCondition_far: 500000,
|
|
|
|
|
distanceDisplayCondition_near: 0,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
popup: `<div class="marsTiltPanel marsTiltPanel-theme-green">
|
|
|
|
|
<div class="marsTiltPanel-wrap">
|
|
|
|
|
<div class="area">
|
|
|
|
|
<div class="arrow-lt"></div>
|
|
|
|
|
<div class="b-t"></div>
|
|
|
|
|
<div class="b-r"></div>
|
|
|
|
|
<div class="b-b"></div>
|
|
|
|
|
<div class="b-l"></div>
|
|
|
|
|
<div class="arrow-rb"></div>
|
|
|
|
|
<div class="label-wrap">
|
|
|
|
|
<div class="title">${item.name}</div>
|
|
|
|
|
<div class="label-content">
|
|
|
|
|
<div class="data-li">
|
|
|
|
|
<div class="data-label">电话:</div>
|
|
|
|
|
<div class="data-value">${item.phone}</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="data-li">
|
|
|
|
|
<div class="data-label"></div>
|
|
|
|
|
<div class="data-value">
|
|
|
|
|
<span class="label-tag data-value-status-2" title="视频通话" onclick="videoCall('${item.phone}')">视频通话</span></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="b-t-l"></div>
|
|
|
|
|
<div class="b-b-r"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="arrow" ></div>
|
|
|
|
|
</div>`,
|
|
|
|
|
popupOptions: {
|
|
|
|
|
offsetY: -30,
|
|
|
|
|
template: "{content}",
|
|
|
|
|
horizontalOrigin: "Cesium.HorizontalOrigin.LEFT",
|
|
|
|
|
verticalOrigin: "Cesium.VerticalOrigin.CENTER",
|
|
|
|
|
},
|
|
|
|
|
pointerEvents: true,
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.markGraphicLayerArr.push(graphic);
|
|
|
|
|
this.markGraphicLayer.addGraphic(graphic);
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
videoCall(phone){
|
|
|
|
|
let userId = localStorage.getItem("userName");
|
|
|
|
|
|
|
|
|
|
let wind = window.open("https://ssl.hopetrytech.com:9233/#/?userID="+userId+"&callUserID="+phone, "视频通话", "location=no,toolbar=no,menubar=no,scrollbars=yes,resizable=yes,width=640,height=460");
|
|
|
|
|
wind.onload = function(){
|
|
|
|
|
wind.document.title = "视频通话";
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
toPosition(lngLat){
|
|
|
|
|
window.globalmap.flyToPoint(lngLat,{radius:2000,"pitch":-90});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -205,10 +297,13 @@ import { getMethodCommon, postMethodCommon } from '../../../api/common';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.img-box{
|
|
|
|
|
width:42px;
|
|
|
|
|
width:28px;
|
|
|
|
|
margin:0px 4px;
|
|
|
|
|
cursor:pointer;
|
|
|
|
|
position:relative;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|