tsg-web/src/views/Home/MapCtrl/Markers/YHJMHLayer.js

54 lines
1.1 KiB
JavaScript

import { YfzhdPromise } from "../../../../models/_/real";
import BaseLayer from "../baselayer";
import YHJMHMarker from "./YHJMHMarker"
export default class YHJMHLayer extends BaseLayer {
static LayerName = 'YHJMHLayer';
constructor(props) {
super(props);
this.highlights = {};
}
getLayerName() {
return YHJMHLayer.LayerName;
}
onAdd() {
YfzhdPromise.get().then((data) => {
const list = data.map((i)=>{
return {
id: i.avrcd,
...i
}
})
// const list2 = list.filter(o=>o.adcd.indexOf('421181113')===0)
this._dispatch.runtime.setMarkers({
[this.getLayerName()]: list || []
});
});
}
setSetting(setting) {
const highlights = setting?.highlight?.YHJMHLayer;
if (highlights !== this._setting?.highlight?.YHJMHLayer) {
const setting = {};
if (highlights) {
for (const h of highlights) {
setting[h] = true
}
}
this._dispatch.map.setMarkerSetting({
[this.getLayerName()]: setting,
});
}
this._setting = setting;
}
getComponentCls() {
return YHJMHMarker;
}
}