2025-05-19 14:26:18 +08:00
|
|
|
import { parseGeoJSONFeature } from "../../utils/tools";
|
|
|
|
|
import { DCPJ_TYPES, SLGC_TYPES } from "../../views/Home/consts";
|
2025-06-04 20:45:32 +08:00
|
|
|
import { parseGeoJSON } from "../../utils/tools";
|
2025-05-19 14:26:18 +08:00
|
|
|
function initState() {
|
|
|
|
|
return {
|
|
|
|
|
calculating: false,
|
|
|
|
|
search: '',
|
|
|
|
|
view: 0,
|
|
|
|
|
layerVisible: {
|
|
|
|
|
HighlightLayer: true,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
},
|
|
|
|
|
layerSetting: {
|
|
|
|
|
dem: true,
|
|
|
|
|
dom: false,
|
|
|
|
|
drplabel: 'h24',
|
|
|
|
|
skNormalLabelInvisible: true,
|
|
|
|
|
|
|
|
|
|
bxsk_lhdd: false,
|
|
|
|
|
bxsk_jzdd: false,
|
|
|
|
|
bxsk_bsdd: true,
|
|
|
|
|
},
|
|
|
|
|
rightStack: [],
|
|
|
|
|
hidePanels: false,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const map = {
|
|
|
|
|
state: initState(),
|
|
|
|
|
reducers: {
|
|
|
|
|
setRaw(state, val) {
|
|
|
|
|
return { ...state, ...val }
|
|
|
|
|
},
|
|
|
|
|
setCalculating(state, val) {
|
|
|
|
|
return { ...state, calculating: val };
|
|
|
|
|
},
|
|
|
|
|
setView(state, view) {
|
|
|
|
|
return {
|
|
|
|
|
...state,
|
|
|
|
|
view,
|
|
|
|
|
rightStack: [],
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
setSearch(state, search) {
|
|
|
|
|
return {
|
|
|
|
|
...state,
|
|
|
|
|
search
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
setRightStack(state, { name, open }) {
|
|
|
|
|
if (!name) {
|
|
|
|
|
return state;
|
|
|
|
|
}
|
|
|
|
|
const rightStack = (state.rightStack || []).filter(o => o !== name);
|
|
|
|
|
if (open) {
|
|
|
|
|
rightStack.push(name);
|
|
|
|
|
}
|
|
|
|
|
return { ...state, rightStack };
|
|
|
|
|
},
|
|
|
|
|
setLayerVisible(state, vo) {
|
|
|
|
|
const s = { ...state };
|
|
|
|
|
s.layerVisible = {
|
|
|
|
|
...s.layerVisible,
|
|
|
|
|
...vo,
|
|
|
|
|
};
|
|
|
|
|
return s;
|
|
|
|
|
},
|
|
|
|
|
setLayerVisibleExclusive(state, vo) {
|
|
|
|
|
return {
|
|
|
|
|
...state,
|
|
|
|
|
layerVisible: { ...vo }
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
setLayerSetting(state, so) {
|
|
|
|
|
const s = { ...state };
|
|
|
|
|
s.layerSetting = {
|
|
|
|
|
...s.layerSetting,
|
|
|
|
|
...so,
|
|
|
|
|
};
|
|
|
|
|
return s;
|
|
|
|
|
},
|
|
|
|
|
setHidePanels(state, val) {
|
|
|
|
|
return {
|
|
|
|
|
...state,
|
|
|
|
|
hidePanels: val,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
reset() {
|
|
|
|
|
return initState();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
effects: dispatch => ({
|
|
|
|
|
openSearch(value) {
|
|
|
|
|
this.setSearch({
|
|
|
|
|
mode: 'search',
|
|
|
|
|
search: value,
|
|
|
|
|
});
|
|
|
|
|
this.setRightStack({ name: 'search', open: !!value });
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
openHighlights(ctx) {
|
|
|
|
|
const { title, records } = ctx;
|
|
|
|
|
if (!title || !records) {
|
|
|
|
|
this.setSearch(null);
|
|
|
|
|
this.setRightStack({ name: 'search', open: false });
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
this.setSearch({
|
|
|
|
|
mode: 'select',
|
|
|
|
|
records,
|
|
|
|
|
title,
|
|
|
|
|
});
|
|
|
|
|
this.setRightStack({ name: 'search', open: true });
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
// { type, prop, fill, stroke }
|
|
|
|
|
highlightFeatures(records) {
|
|
|
|
|
records = records.map(o => {
|
|
|
|
|
if (!o || !o.type || !o.props) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
const feature = parseGeoJSONFeature(o.props);
|
|
|
|
|
if (!feature || !feature.properties) {
|
|
|
|
|
console.error('invalid record to highlight');
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
feature.properties = o;
|
|
|
|
|
return feature;
|
|
|
|
|
}).filter(Boolean);
|
|
|
|
|
|
|
|
|
|
dispatch.runtime.setLayerSetting({ highlight: records })
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
resetMap() {
|
|
|
|
|
dispatch.map.reset();
|
|
|
|
|
dispatch.fzjcview.reset();
|
|
|
|
|
dispatch.overallview.reset();
|
|
|
|
|
dispatch.rcview.reset();
|
|
|
|
|
dispatch.realview.reset();
|
|
|
|
|
dispatch.shyjview.reset();
|
|
|
|
|
dispatch.slgcview.reset();
|
|
|
|
|
dispatch.runtime.reset();
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
setView(id) {
|
|
|
|
|
let layerVisible = {};
|
2025-05-21 09:17:19 +08:00
|
|
|
const map = window.__mapref
|
2025-06-11 11:10:37 +08:00
|
|
|
if (id === 1 || id == 503) {
|
2025-05-19 14:26:18 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
|
|
|
|
RealHDLayer: true,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
AdcdLayer: true,
|
2025-06-05 09:48:43 +08:00
|
|
|
PicStLayer: false,
|
2025-05-19 14:26:18 +08:00
|
|
|
RivlLayer: true,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
}
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 0) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
2025-06-05 09:48:43 +08:00
|
|
|
RealHDLayer: true,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
PicStLayer: false,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
YuwaiLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
WataLayer: false,
|
2025-06-11 11:10:37 +08:00
|
|
|
RealSkLayerQ2: true,
|
|
|
|
|
RealHDLayerQ2: true,
|
2025-06-05 09:48:43 +08:00
|
|
|
}
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 8) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
|
|
|
|
RealHDLayer: true,
|
2025-06-04 20:45:32 +08:00
|
|
|
RealSkLayer: false,
|
|
|
|
|
PicStLayer: false,
|
2025-05-19 14:26:18 +08:00
|
|
|
RivlLayer: true,
|
2025-06-04 20:45:32 +08:00
|
|
|
YuwaiLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
2025-05-19 14:26:18 +08:00
|
|
|
WataLayer: false,
|
2025-06-11 11:10:37 +08:00
|
|
|
RealSkLayerQ2: true,
|
|
|
|
|
RealHDLayerQ2: true,
|
2025-05-19 14:26:18 +08:00
|
|
|
}
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 2) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = !!SLGC_TYPES[key];
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 3) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
FzdxLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = !SLGC_TYPES[key];
|
|
|
|
|
});
|
2025-06-05 09:48:43 +08:00
|
|
|
} else if (id === 4) {
|
2025-05-19 14:26:18 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id === 5) {
|
2025-06-05 09:48:43 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-19 14:26:18 +08:00
|
|
|
} else if (id === 6) {
|
|
|
|
|
layerVisible = {
|
2025-06-04 20:41:04 +08:00
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
2025-06-11 11:10:37 +08:00
|
|
|
RainDrpLayer: true,
|
|
|
|
|
ShuikuLayer: false,
|
2025-05-19 14:26:18 +08:00
|
|
|
BxSkLayer: true,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
2025-06-10 13:53:14 +08:00
|
|
|
RealHDLayerQ2: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
RealSkLayerQ2: true
|
2025-05-19 14:26:18 +08:00
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-04 20:45:32 +08:00
|
|
|
} else if (id === 7) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-21 09:17:19 +08:00
|
|
|
} else if (id === 201) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
2025-05-26 21:29:05 +08:00
|
|
|
RealHDLayer: false,
|
2025-05-21 09:17:19 +08:00
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 202) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: true,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-21 16:14:39 +08:00
|
|
|
} else if (id === 203) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
2025-05-26 16:26:39 +08:00
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
2025-05-21 16:14:39 +08:00
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
BxjcLayer: false,
|
|
|
|
|
SyjcLayer: false,
|
|
|
|
|
SljcLayer: false,
|
|
|
|
|
ByjcLayer: false
|
2025-05-21 16:14:39 +08:00
|
|
|
};
|
2025-06-11 11:10:37 +08:00
|
|
|
dispatch.runtime.setCameraTarget({
|
|
|
|
|
center: [114.88069, 31.171967],
|
2025-06-11 15:03:25 +08:00
|
|
|
zoom: 13,
|
2025-06-11 11:10:37 +08:00
|
|
|
pitch: 60,
|
|
|
|
|
bearing: 0
|
|
|
|
|
});
|
2025-05-21 16:14:39 +08:00
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 204) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
PicStLayer: true,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 205) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
2025-06-11 11:08:10 +08:00
|
|
|
RealSkLayer: false,
|
2025-05-21 16:14:39 +08:00
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: true,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 206) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
2025-06-06 16:30:16 +08:00
|
|
|
RealSkLayer: false,
|
2025-05-21 16:14:39 +08:00
|
|
|
BxSkLayer: false,
|
2025-06-11 11:10:37 +08:00
|
|
|
XunchaLayer: true,
|
2025-05-21 16:14:39 +08:00
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:08:10 +08:00
|
|
|
} else if (id === 200) {
|
2025-06-05 16:39:29 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
2025-06-06 17:38:50 +08:00
|
|
|
RealSkLayer: false,
|
2025-06-05 16:39:29 +08:00
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-22 16:13:42 +08:00
|
|
|
} else if (id === 301) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
2025-05-28 15:09:02 +08:00
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
ShuichangLayer: true,
|
|
|
|
|
ShuiyuandiLayer: false,
|
2025-05-28 15:09:02 +08:00
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
|
|
|
|
} else if (id === 302) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
ShuichangLayer: true,
|
2025-06-09 11:50:05 +08:00
|
|
|
ShuichangQLayer: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
ShuiyuandiQLayer: true,
|
|
|
|
|
ShuizhiLayer: true,
|
2025-06-09 11:50:05 +08:00
|
|
|
ShuiyuandiLayer: true,
|
2025-05-28 15:09:02 +08:00
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-28 17:05:53 +08:00
|
|
|
} else if (id === 303 || id === 305 || id === 306) {
|
2025-05-28 15:09:02 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
2025-05-22 16:13:42 +08:00
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
2025-06-11 11:10:37 +08:00
|
|
|
ShuichangLayer: true,
|
2025-06-09 15:49:14 +08:00
|
|
|
ShuichangQLayer: true,
|
2025-05-22 16:13:42 +08:00
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id === 303 || id === 306 || id === 305) {
|
2025-05-27 17:31:45 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: false,
|
|
|
|
|
RealSkLayer: false,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id === 307) {
|
2025-06-09 11:50:05 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: false,
|
|
|
|
|
RealHDLayer: true,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
BxSkLayer: false,
|
|
|
|
|
FzdxLayer: false,
|
|
|
|
|
WataLayer: false,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RoadLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-05-28 15:07:52 +08:00
|
|
|
} else if (id == 501) {
|
|
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
|
|
|
|
RealHDLayer: true,
|
|
|
|
|
RealSkLayer: true,
|
|
|
|
|
ShuiZhaLayer: true,
|
|
|
|
|
BzLayer: true,
|
|
|
|
|
SbLayer: true,
|
|
|
|
|
QdLayer: true,
|
|
|
|
|
ShuizhiLayer: true,
|
|
|
|
|
TrsqLayer: true,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id == 504) {
|
2025-05-28 15:07:52 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
RealDrpLayer: true,
|
|
|
|
|
TrsqLayer: true,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id == 505) {
|
2025-05-28 15:07:52 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
BzLayer: true,
|
|
|
|
|
SbLayer: true,
|
|
|
|
|
QdLayer: true,
|
|
|
|
|
ShuizhiLayer: true,
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
|
|
|
|
});
|
2025-06-11 11:10:37 +08:00
|
|
|
} else if (id == 506 || id == 507) {
|
2025-05-28 15:07:52 +08:00
|
|
|
layerVisible = {
|
|
|
|
|
AdcdLayer: true,
|
|
|
|
|
RivlLayer: true,
|
|
|
|
|
};
|
|
|
|
|
Object.keys(DCPJ_TYPES).forEach(key => {
|
|
|
|
|
if (key == 'bsnssinfo') {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = true;
|
|
|
|
|
} else {
|
|
|
|
|
layerVisible['Dcpj_' + key + 'Layer'] = false;
|
2025-06-11 11:10:37 +08:00
|
|
|
|
2025-05-28 15:07:52 +08:00
|
|
|
}
|
|
|
|
|
});
|
2025-05-19 14:26:18 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dispatch.runtime.setLayerSetting({ contour: null, dem: undefined })
|
|
|
|
|
dispatch.map.setRaw({ layerVisible, view: id });
|
|
|
|
|
dispatch.runtime.setFeaturePop(null);
|
2025-05-21 09:17:19 +08:00
|
|
|
|
|
|
|
|
|
2025-06-11 11:10:37 +08:00
|
|
|
if (id === 8) {
|
2025-06-09 13:13:04 +08:00
|
|
|
dispatch.rcview.showRealContour('h24')
|
2025-06-11 11:10:37 +08:00
|
|
|
} else {
|
2025-06-04 20:45:32 +08:00
|
|
|
dispatch.runtime.setLayerSetting({ contour: null, dem: undefined });
|
|
|
|
|
dispatch.runtime.setLayerSetting({ planeArea: null });
|
|
|
|
|
dispatch.map.setLayerVisible({ ContourLayer: false });
|
|
|
|
|
}
|
2025-06-05 18:01:20 +08:00
|
|
|
if (id === 201) {
|
2025-05-28 15:07:52 +08:00
|
|
|
dispatch.map.setLayerSetting({ dom: false });
|
2025-05-21 09:17:19 +08:00
|
|
|
map.setLayoutProperty('热力图', 'visibility', 'visible');
|
2025-05-28 15:07:52 +08:00
|
|
|
} else {
|
2025-05-26 16:26:39 +08:00
|
|
|
// dispatch.map.setLayerSetting({dom: true});
|
2025-05-21 09:17:19 +08:00
|
|
|
map.setLayoutProperty('热力图', 'visibility', 'none');
|
|
|
|
|
}
|
2025-05-26 21:26:20 +08:00
|
|
|
|
2025-05-28 17:05:53 +08:00
|
|
|
if (id === 306) {
|
|
|
|
|
dispatch.map.setLayerSetting({ dom: false });
|
2025-06-09 16:22:37 +08:00
|
|
|
dispatch.runtime.setShowGw(true)
|
|
|
|
|
// map.setLayoutProperty('管网图', 'visibility', 'visible');
|
2025-05-28 17:05:53 +08:00
|
|
|
} else {
|
2025-06-09 16:22:37 +08:00
|
|
|
dispatch.runtime.setShowGw(false)
|
2025-05-28 17:05:53 +08:00
|
|
|
// dispatch.map.setLayerSetting({dom: true});
|
2025-06-09 16:22:37 +08:00
|
|
|
// map.setLayoutProperty('管网图', 'visibility', 'none');
|
2025-05-28 17:05:53 +08:00
|
|
|
}
|
2025-05-29 11:46:29 +08:00
|
|
|
if (id === 503 || id == 501 || id == 504 || id == 505 || id == 506 || id == 507) {
|
2025-05-28 17:05:53 +08:00
|
|
|
dispatch.map.setLayerSetting({ dom: false });
|
|
|
|
|
map.setLayoutProperty('灌区图', 'visibility', 'visible');
|
|
|
|
|
} else {
|
|
|
|
|
// dispatch.map.setLayerSetting({dom: true});
|
|
|
|
|
map.setLayoutProperty('灌区图', 'visibility', 'none');
|
|
|
|
|
}
|
2025-05-26 21:26:20 +08:00
|
|
|
if (id != 504) {
|
2025-05-28 15:07:52 +08:00
|
|
|
dispatch.runtime.setYyfa({})
|
|
|
|
|
}
|
2025-05-26 21:26:20 +08:00
|
|
|
|
2025-06-11 11:29:32 +08:00
|
|
|
if (
|
|
|
|
|
id === 3
|
|
|
|
|
|| id === 203
|
|
|
|
|
|| id === 205
|
|
|
|
|
|| id === 206
|
2025-06-11 17:13:30 +08:00
|
|
|
|| id === 200
|
2025-06-11 11:29:32 +08:00
|
|
|
) {
|
2025-06-03 17:44:30 +08:00
|
|
|
dispatch.map.setLayerSetting({ dom: true });
|
|
|
|
|
// map.setLayoutProperty('卫星图', 'visibility', 'visible');
|
|
|
|
|
} else {
|
2025-06-11 11:10:37 +08:00
|
|
|
dispatch.map.setLayerSetting({ dom: false });
|
2025-06-03 17:44:30 +08:00
|
|
|
// map.setLayoutProperty('卫星图', 'visibility', 'none');
|
|
|
|
|
}
|
2025-06-11 15:03:25 +08:00
|
|
|
// if (id == 203) {
|
|
|
|
|
// const skdata = [
|
|
|
|
|
// {
|
|
|
|
|
// "stcd": "61614200",
|
|
|
|
|
// "type": "sk",
|
|
|
|
|
// "hasRz": true,
|
|
|
|
|
// "stnm": "浮桥河水库",
|
|
|
|
|
// "adcd": "421181100000",
|
|
|
|
|
// "wscd": null,
|
|
|
|
|
// "importancy": 0,
|
|
|
|
|
// "lgtd": 114.875,
|
|
|
|
|
// "lttd": 31.166667,
|
|
|
|
|
// "elev": 0,
|
|
|
|
|
// "damel": 71.33,
|
|
|
|
|
// "dsflz": 68.04,
|
|
|
|
|
// "fsltdz": 64.89,
|
|
|
|
|
// "ddz": 51.78,
|
|
|
|
|
// "zcxsw": 64.89,
|
|
|
|
|
// "drpTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "today": 0,
|
|
|
|
|
// "h1": 5,
|
|
|
|
|
// "h3": 6,
|
|
|
|
|
// "h6": 7.5,
|
|
|
|
|
// "h12": 8,
|
|
|
|
|
// "h24": 9,
|
|
|
|
|
// "h48": 26,
|
|
|
|
|
// "drpState": 1,
|
|
|
|
|
// "rz": 60.71,
|
|
|
|
|
// "w": 162.8,
|
|
|
|
|
// "a_fsltdz": -4.18,
|
|
|
|
|
// "rzTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "rzWarning": 0,
|
|
|
|
|
// "rzState": 1,
|
|
|
|
|
// "aRz": -4.18
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// "stcd": "61613010",
|
|
|
|
|
// "type": "sk",
|
|
|
|
|
// "hasRz": true,
|
|
|
|
|
// "stnm": "明山水库",
|
|
|
|
|
// "adcd": "421181103000",
|
|
|
|
|
// "wscd": null,
|
|
|
|
|
// "importancy": 0,
|
|
|
|
|
// "lgtd": 115.066667,
|
|
|
|
|
// "lttd": 31.016667,
|
|
|
|
|
// "elev": 0,
|
|
|
|
|
// "damel": 98.7,
|
|
|
|
|
// "dsflz": 96.07,
|
|
|
|
|
// "fsltdz": 93,
|
|
|
|
|
// "ddz": 78.02,
|
|
|
|
|
// "zcxsw": 93,
|
|
|
|
|
// "drpTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "today": 0,
|
|
|
|
|
// "h1": 7,
|
|
|
|
|
// "h3": 8.4,
|
|
|
|
|
// "h6": 10.5,
|
|
|
|
|
// "h12": 11.200000000000001,
|
|
|
|
|
// "h24": 12.6,
|
|
|
|
|
// "h48": 25.799999999999997,
|
|
|
|
|
// "drpState": 1,
|
|
|
|
|
// "rz": 84.43,
|
|
|
|
|
// "w": 49.5,
|
|
|
|
|
// "a_fsltdz": -8.569999999999993,
|
|
|
|
|
// "rzTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "rzWarning": 0,
|
|
|
|
|
// "rzState": 1,
|
|
|
|
|
// "aRz": -8.57
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// "stcd": "61612610",
|
|
|
|
|
// "type": "sk",
|
|
|
|
|
// "hasRz": true,
|
|
|
|
|
// "stnm": "三河口水库",
|
|
|
|
|
// "adcd": "421181109000",
|
|
|
|
|
// "wscd": null,
|
|
|
|
|
// "importancy": 0,
|
|
|
|
|
// "lgtd": 115.166667,
|
|
|
|
|
// "lttd": 31.333333,
|
|
|
|
|
// "elev": 0,
|
|
|
|
|
// "damel": 156.8,
|
|
|
|
|
// "dsflz": 154.99,
|
|
|
|
|
// "fsltdz": 149,
|
|
|
|
|
// "ddz": 124,
|
|
|
|
|
// "zcxsw": 149,
|
|
|
|
|
// "drpTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "today": 0,
|
|
|
|
|
// "h1": 7,
|
|
|
|
|
// "h3": 8.4,
|
|
|
|
|
// "h6": 10.5,
|
|
|
|
|
// "h12": 11.200000000000001,
|
|
|
|
|
// "h24": 12.6,
|
|
|
|
|
// "h48": 25.799999999999997,
|
|
|
|
|
// "drpState": 1,
|
|
|
|
|
// "rz": 141.45,
|
|
|
|
|
// "w": 77.8,
|
|
|
|
|
// "a_fsltdz": -7.550000000000011,
|
|
|
|
|
// "rzTm": "2025-06-03T01:00:00.000Z",
|
|
|
|
|
// "rzWarning": 0,
|
|
|
|
|
// "rzState": 1,
|
|
|
|
|
// "aRz": -7.55
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// "stcd": "61612700",
|
|
|
|
|
// "type": "sk",
|
|
|
|
|
// "hasRz": true,
|
|
|
|
|
// "stnm": "碧绿河水库",
|
|
|
|
|
// "adcd": "421181109000",
|
|
|
|
|
// "wscd": null,
|
|
|
|
|
// "importancy": 0,
|
|
|
|
|
// "lgtd": 115.214444,
|
|
|
|
|
// "lttd": 31.299722,
|
|
|
|
|
// "elev": 0,
|
|
|
|
|
// "damel": 142.9,
|
|
|
|
|
// "dsflz": 139.08,
|
|
|
|
|
// "fsltdz": 137,
|
|
|
|
|
// "ddz": 105,
|
|
|
|
|
// "zcxsw": 137,
|
|
|
|
|
// "drpTm": "2025-06-03T02:00:00.000Z",
|
|
|
|
|
// "today": 0,
|
|
|
|
|
// "h1": 4,
|
|
|
|
|
// "h3": 4.8,
|
|
|
|
|
// "h6": 6,
|
|
|
|
|
// "h12": 6.4,
|
|
|
|
|
// "h24": 7.2,
|
|
|
|
|
// "h48": 22.6,
|
|
|
|
|
// "drpState": 1,
|
|
|
|
|
// "rz": 119.6,
|
|
|
|
|
// "w": 13.15,
|
|
|
|
|
// "a_fsltdz": -17.400000000000006,
|
|
|
|
|
// "rzTm": "2025-06-03T00:00:00.000Z",
|
|
|
|
|
// "rzWarning": 0,
|
|
|
|
|
// "rzState": 2,
|
|
|
|
|
// "aRz": -17.4
|
|
|
|
|
// }
|
|
|
|
|
// ]
|
|
|
|
|
// const layer = map.getLayer('关联站点')
|
|
|
|
|
// if (layer) {
|
|
|
|
|
// map.removeLayer('关联站点');
|
|
|
|
|
// map.removeSource('关联站点');
|
|
|
|
|
// }
|
|
|
|
|
// map.addLayer({
|
|
|
|
|
// 'id': '关联站点',//+new Date().getTime(),
|
|
|
|
|
// 'type': 'symbol',
|
|
|
|
|
// 'source': {
|
|
|
|
|
// 'type': 'geojson',
|
|
|
|
|
// 'data': {
|
|
|
|
|
// 'type': 'FeatureCollection',
|
|
|
|
|
// 'features': [],
|
|
|
|
|
// },
|
|
|
|
|
// },
|
|
|
|
|
// 'layout': {
|
|
|
|
|
// 'icon-allow-overlap': true,
|
|
|
|
|
// 'text-allow-overlap': true,
|
|
|
|
|
// 'icon-image': '水库-离线',
|
|
|
|
|
// 'icon-size': [
|
|
|
|
|
// 'interpolate', ['linear'], ['zoom'],
|
|
|
|
|
// 10, 0.4,
|
|
|
|
|
// 14, 0.8,
|
|
|
|
|
// ],
|
|
|
|
|
// 'text-allow-overlap': true,
|
|
|
|
|
// 'text-size': [
|
|
|
|
|
// 'interpolate', ['linear'], ['zoom'],
|
|
|
|
|
// 10, 10,
|
|
|
|
|
// 14, 14,
|
|
|
|
|
// ],
|
|
|
|
|
// 'text-font': ['Roboto Black'],
|
|
|
|
|
// 'text-field': [
|
|
|
|
|
// 'step',
|
|
|
|
|
// ['zoom'],
|
|
|
|
|
// '',
|
|
|
|
|
// 12, ['get', 'stnm']
|
|
|
|
|
// ],
|
|
|
|
|
// 'text-anchor': 'top',
|
|
|
|
|
// 'text-offset': [0, 1],
|
2025-05-26 21:26:20 +08:00
|
|
|
|
2025-06-11 15:03:25 +08:00
|
|
|
// },
|
|
|
|
|
// 'paint': {
|
|
|
|
|
// 'text-color': '#fff'
|
|
|
|
|
// },
|
|
|
|
|
// 'visibility': 'visible',
|
|
|
|
|
// });
|
|
|
|
|
// map.getSource('关联站点').setData(parseGeoJSON(skdata))
|
|
|
|
|
// }
|
2025-06-11 11:29:32 +08:00
|
|
|
|
|
|
|
|
if(id!==200&&id!==203&&id!==205&&id!==206){
|
|
|
|
|
const layer = map.getLayer('临时水库tz')
|
|
|
|
|
if(layer){
|
|
|
|
|
map.removeLayer('临时水库tz');
|
|
|
|
|
map.removeSource('临时水库tz');
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-05-19 14:26:18 +08:00
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default map;
|