IntelligentRecognition/ah-jjsp-web/.svn/pristine/09/09a78c51e17a6c57ccf3fff7699...

199 lines
6.5 KiB
Plaintext

//在div中初始化地图
// /let myChart = echarts.init(document.getElementById('map-content'));
let uploadedDataURL2 = "../../js/compreDisplay/anhui/hefei.json";
echarts.init(document.getElementById('echarts-map2')).dispose();
let myChart2 = null;
/**
* 加载地图
* @param dataMap
*/
function map2(dataMap) {
$.getJSON(uploadedDataURL2, function (geoJson) {
echarts.registerMap('anhui', geoJson);
myChart2.hideLoading();
let max = 480,
min = 1; // todo
let maxSize4Pin = 100,
minSize4Pin = 100;
let convertData = function (data) {
let res = [];
for (let i = 0; i < data.length; i++) {
let geoCoord = data[i].coordinate;
if (geoCoord) {
res.push({
proName: data[i].proName,
num:data[i].num,
riskLevel: data[i].riskType,
workContent: dealEmptyString(data[i].workContent),
isOnline: isOnline(data[i].ballStatus),
workManager: dealEmptyString(data[i].workManage) + '' + dealEmptyString(data[i].workManagePhone),
value: geoCoord.concat(data[i].value,data[i].proName,data[i].num),
coordinate: data[i].coordinate,
});
}
}
return res;
};
let option = {
silent: false,
backgroundColor: 'transparent',
textStyle: {
fontSize: 15,
fontWeight: 'bold',
color: 'red'
},
tooltip: {
trigger: 'item',
enterable: true,
position: function (pos, params, dom, rect, size) {
if ($(dom).children($('p')).length === 0) $(dom).css('display', 'none')
pos = [pos[0], pos[1] + 10];
return pos;
},
backgroundColor: 'rgba(14, 17, 28,0.63)', //设置背景颜色
textStyle: {
color: '#fff'
},
borderColor: "#174FDD",
formatter: function (params) {
if (params.data)
return (
'<p class="map-p">' + params.data.proName + '</p>' +
'<p class="map-p">风险等级:' + setRiskLevelColor(params.data.riskLevel) + '</p>' +
'<p class="map-p" title="' + params.data.workContent + '">作业内容:' + sliceStr(params.data.workContent) + '</p>' +
'<p class="map-p">班组长:' + params.data.workManager + '</p>' +
'<p class="map-p">预警数量:' + params.data.num + '</p>' +
'<p class="map-p">球机:' + params.data.isOnline + '</p>'
)
},
// extraCssText: "background:url('../../img/tc.png') 100% 100% repeat;",
extraCssText: "max-width:300px;height:auto;word-break:break-all;white-space:pre-wrap;",
},
geo: {
show: true,
map: 'anhui',
aspectScale:0.8,
label: {
normal: {
show: true,
textStyle: {
color: '#fff',
fontFamily: 'Alibaba PuHuiTi R'
},
rotate: -20,
},
emphasis: {
show: true,
}
},
roam: false,
scaleLimit: {
max: max,
min: min
},
itemStyle: {
normal: {
areaColor: '#52ADF3',
borderColor: '#fff',
borderWidth: 2,
shadowColor: 'rgba(80, 172, 243, 0.5)',
shadowBlur: 30
},
emphasis: {
areaColor: '#2B91B7',
}
},
tooltip: {
show: true
}
},
series: [{
name: '在线',
type: 'scatter',
coordinateSystem: 'geo',
animation: false,
symbolSize: function (val) {
let a = (maxSize4Pin - minSize4Pin) / (max - min);
let b = minSize4Pin - a * min;
b = maxSize4Pin - a * max;
return 20;
},
symbol: function (val) {
console.log(val)
var num=Number(val[4])+1;
return getEchartsImage(val[2],num,val[3]);
},
label: {
normal: {
show: false,
textStyle: {
color: '#fff',
fontSize: 15,
opacity: 1
}
}
},
zlevel: 6,
z: 6,
data: convertData(dataMap)
},
]
}
myChart2.clear();
myChart2.setOption(option, true);
});
window.addEventListener("resize", function () {
myChart2.resize();
});
}
/*判空*/
function dealEmptyString(str) {
if (str) {
return str;
}
return '';
}
/*判断球机是否在线*/
function isOnline(value) {
if (value) {
if (value === '0' || value === 0) {
return '离线';
} else {
return '在线';
}
} else {
return '离线';
}
}
function getEchartsCityImage(type,num,proName){
if(proName.indexOf('变电站')!=-1 && proName.indexOf('线路')==-1){
if(type==2){
return 'image://../../img/map/bdz2.png';
}else if(type==3){
return 'image://../../img/map/bdz3.png';
}else if(type==4){
return 'image://../../img/map/bdz4.png';
}else if(type==5){
return 'image://../../img/map/bdz5.png';
}
}else{
if(type==2){
return 'image://../../img/map/two-risk'+num+'.png';
}else if(type==3){
return 'image://../../img/map/three-risk'+num+'.png';
}else if(type==4){
return 'image://../../img/map/four-risk'+num+'.png';
}else if(type==5){
return 'image://../../img/map/five-risk'+num+'.png';
}
}
}