修改首页图层

master
秦子超 2025-07-14 13:40:59 +08:00
parent 129326f804
commit daa7377159
11 changed files with 1260 additions and 389 deletions

File diff suppressed because it is too large Load Diff

View File

@ -210,8 +210,8 @@
"adcd": null,
"wscd": null,
"importancy": 0,
"lgtd": 114.883583,
"lttd": 31.180444,
"lgtd": 114.8912,
"lttd": 31.1655,
"elev": null,
"hasRz": true,
"type": "sw",

View File

@ -188,6 +188,7 @@ const map = {
WataLayer: false,
RealSkLayerQ2: false,
RealHDLayerQ2: false,
RealSkLayerQ3: true,
}
Object.keys(DCPJ_TYPES).forEach(key => {
layerVisible['Dcpj_' + key + 'Layer'] = false;
@ -333,6 +334,7 @@ const map = {
RealDrpLayer: false,
RealHDLayer: false,
RealSkLayer: false,
RealSkLayerQ2: true,
BxSkLayer: false,
FzdxLayer: false,
WataLayer: false,
@ -411,6 +413,7 @@ const map = {
AdcdLayer: true,
RoadLayer: true,
RivlLayer: true,
RealSkLayerQ3: true,
};
Object.keys(DCPJ_TYPES).forEach(key => {
layerVisible['Dcpj_' + key + 'Layer'] = false;

View File

@ -187,7 +187,6 @@ function RealSkTip({ record, dispatch,view }) {
record?.setView&&view===207?
<span style={{cursor:'pointer',color:'#50b1f9',marginLeft:20}} onClick={()=>{
dispatch.map.setView(203)
sessionStorage.setItem('lastCenter',JSON.stringify(record))
}}> 进入此水库</span>
: null :
record.stnm == '小玉潭水库' ?

View File

@ -3,6 +3,7 @@ import RealHDLayer from "./realhdlayer";
import RealHDLayerQ2 from "./realhdlayerQ2";
import RealSkLayer from "./realsklayer";
import RealSkLayerQ2 from "./realsklayerQ2";
import RealSkLayerQ3 from "./realsklayerQ3";
import ShyjLayer from "./shyjLayer"
import sources from "./sources";
@ -86,6 +87,7 @@ class LayerMgr {
this.layers.push(new RealHDLayerQ2());
this.layers.push(new RealSkLayer());
this.layers.push(new RealSkLayerQ2());
this.layers.push(new RealSkLayerQ3());
this.layers.push(new BxSkLayer());
@ -195,6 +197,7 @@ class LayerMgr {
this.layerMap.RealSkLayer.getStyle(),
this.layerMap.RealSkLayerQ2.getStyle(),
this.layerMap.RealSkLayerQ3.getStyle(),
this.layerMap.BxSkLayer.getStyle(),
this.layerMap.RealHDLayer.getStyle(),

View File

@ -18,8 +18,8 @@ const ShapeStyle = {
'icon-image': '水库-超汛限',
'icon-size': [
'interpolate', ['linear'], ['zoom'],
10, 0.8,
14, 0.8,
10, 0.5,
14, 0.5,
],
'text-allow-overlap': true,

View File

@ -0,0 +1,469 @@
import clone from "clone";
import { SkRealPromise } from "../../../../models/_/real";
import { parseGeoJSON } from "../../../../utils/tools";
import { InfoPopNames } from "../../InfoPops";
import BaseLayer from "./baselayer";
const SourceName = '实时水库q3';
const ShapeStyle = {
id: SourceName,
type: 'symbol',
source: SourceName,
layout: {
'icon-allow-overlap': true,
'text-allow-overlap': true,
'icon-image': [
'case',
['==', ['get', 'rzWarning'], 1], '水库-超汛限',
'水库'
],
'icon-size': [
'interpolate', ['linear'], ['zoom'],
10, 0.5,
14, 0.5,
],
'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],
'visibility': 'none',
},
paint: {
'text-color': '#fff'
}
};
export default class RealSkLayerQ3 extends BaseLayer {
static LayerName = 'RealSkLayerQ3';
static SourceName = SourceName;
getStyle() {
const ret = clone(ShapeStyle);
this._setStyleVisibility(ret);
return ret;
}
getName() {
return RealSkLayerQ3.LayerName;
}
getSubLayers() {
return [ShapeStyle.id];
}
getRefreshInterval() {
return 60 * 1000;
}
async doRefreshLayer(mapCtrl) {
const ms = mapCtrl.getSource(SourceName);
let data = [
{
"stcd": "61614200",
"type": "sk",
"hasRz": true,
"stnm": "浮桥河水库",
"adcd": "421181100000",
"wscd": null,
"importancy": 0,
"lgtd": 114.88069,
"lttd": 31.171967,
"elev": 0,
"damel": 71.33,
"dsflz": 68.04,
"fsltdz": 64.89,
"ddz": 51.78,
"zcxsw": 64.89,
"jhhsw":68.7,
"drpTm": "2025-06-06T22:00:00.000Z",
"today": 4,
"h1": 4,
"h3": 4,
"h6": 4,
"h12": 4,
"h24": 4,
"h48": 4,
"drpState": 2,
"rz": 65.7,
"w": 45490,
"xs":32133,
"a_fsltdz": -4.189999999999998,
"rzTm": "2025-06-06T22:00:00.000Z",
"rzWarning": 1,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop",
"setView":true
},
{
"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-06T22:00:00.000Z",
"today": 43.5,
"h1": 32,
"h3": 43.5,
"h6": 43.5,
"h12": 43.5,
"h24": 43.5,
"h48": 43.5,
"drpState": 1,
"rz": 141.56,
"xs":12744,
"w": 16926,
"a_fsltdz": -7.439999999999998,
"rzTm": "2025-06-06T22:00:00.000Z",
"rzWarning": 0,
"rzState": 1,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"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-06T22:00:00.000Z",
"today": 15,
"h1": 15,
"h3": 15,
"h6": 15,
"h12": 15,
"h24": 15,
"h48": 15,
"drpState": 1,
"rz": 84.67,
"xs":10432,
"w": 16900,
"a_fsltdz": -8.329999999999998,
"rzTm": "2025-06-06T22:00:00.000Z",
"rzWarning": 0,
"rzState": 1,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"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-06T22:00:00.000Z",
"today": 50,
"h1": 38,
"h3": 50,
"h6": 50,
"h12": 50,
"h24": 50,
"h48": 50,
"drpState": 1,
"rz": 120,
"w": 6015,
"xs":1676,
"a_fsltdz": -17,
"rzTm": "2025-06-06T00:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "61612750",
"type": "sk",
"hasRz": true,
"stnm": "大坳水库",
"adcd": "421181201000",
"wscd": null,
"importancy": 0,
"lgtd": 115.110833,
"lttd": 31.071944,
"elev": 0,
"damel": 215.75,
"dsflz": 212.7,
"fsltdz": 208.48,
"ddz": 194.6,
"zcxsw": 208.48,
"drpTm": "2025-06-06T00:00:00.000Z",
"today": 0,
"h1": 0,
"h3": 0,
"h6": 0,
"h12": 0,
"h24": 0,
"h48": 0,
"drpState": 2,
"rz": 203.4,
"xs":1164,
"w": 2797,
"a_fsltdz": -5.079999999999984,
"rzTm": "2025-06-06T00:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "61612300",
"type": "sk",
"hasRz": true,
"stnm": "大旗山水库",
"adcd": "421181111000",
"wscd": null,
"importancy": 0,
"lgtd": 115.1375,
"lttd": 31.478333,
"elev": 0,
"damel": 171.6,
"dsflz": 170.1,
"fsltdz": 167.4,
"ddz": 149,
"zcxsw": 167.4,
"drpTm": "2025-06-06T00:00:00.000Z",
"today": 0,
"h1": 0,
"h3": 0,
"h6": 0,
"h12": 0,
"h24": 0,
"h48": 0,
"drpState": 2,
"rz": 156.8,
"w": 1834,
"xs":448,
"a_fsltdz": -10.599999999999994,
"rzTm": "2025-06-06T00:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "61612580",
"type": "sk",
"hasRz": true,
"stnm": "芭茅河水库",
"adcd": "421181110000",
"wscd": null,
"importancy": 0,
"lgtd": 115.101389,
"lttd": 31.307778,
"elev": 0,
"damel": 127.8,
"dsflz": 125.57,
"fsltdz": 122.44,
"ddz": 106.94,
"zcxsw": 122.44,
"drpTm": "2025-06-06T22:00:00.000Z",
"today": 18,
"h1": 18,
"h3": 18,
"h6": 18,
"h12": 18,
"h24": 18,
"h48": 18,
"drpState": 1,
"rz": 117.78,
"w": 1577,
"xs":628,
"a_fsltdz": -4.659999999999997,
"rzTm": "2025-06-06T22:00:00.000Z",
"rzWarning": 0,
"rzState": 1,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "61612560",
"type": "sk",
"hasRz": true,
"stnm": "大河铺水库",
"adcd": "421181112000",
"wscd": null,
"importancy": 0,
"lgtd": 114.941111,
"lttd": 31.464444,
"elev": 0,
"damel": 162.21,
"dsflz": 160.08,
"fsltdz": 159,
"ddz": 142.5,
"zcxsw": 159,
"drpTm": "2025-06-06T22:00:00.000Z",
"today": 50,
"h1": 50,
"h3": 50,
"h6": 50,
"h12": 50,
"h24": 50,
"h48": 50,
"drpState": 1,
"rz": 144.5,
"w": 1574,
"xs":"--",
"a_fsltdz": -14.5,
"rzTm": "2025-06-06T00:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "716460001",
"type": "sk",
"hasRz": true,
"stnm": "杉林河水库",
"adcd": "421181107000",
"wscd": null,
"importancy": 0,
"lgtd": 115.433056,
"lttd": 31.304444,
"elev": 0,
"damel": 236.2,
"dsflz": 233.92,
"fsltdz": 231,
"ddz": 204,
"zcxsw": 231,
"drpTm": "2025-04-11T05:00:00.000Z",
"today": 0,
"h1": 0,
"h3": 0,
"h6": 0,
"h12": 0,
"h24": 0,
"h48": 0,
"drpState": 2,
"rz": 224.31,
"w": 1415,
"xs":750,
"a_fsltdz": -6.689999999999998,
"rzTm": "2025-04-11T05:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
{
"stcd": "61614600",
"type": "sk",
"hasRz": true,
"stnm": "黑石咀水库",
"adcd": "421181103000",
"wscd": null,
"importancy": 0,
"lgtd": 115.056389,
"lttd": 31.001944,
"elev": 0,
"damel": 104,
"dsflz": 101.05,
"fsltdz": 98.3,
"ddz": 81.5,
"zcxsw": 98.3,
"drpTm": "2025-06-06T00:00:00.000Z",
"today": 0,
"h1": 0,
"h3": 0,
"h6": 0,
"h12": 0,
"h24": 0,
"h48": 0,
"drpState": 2,
"rz": 83,
"w": 1026,
"xs":375,
"a_fsltdz": -15.299999999999997,
"rzTm": "2025-06-06T00:00:00.000Z",
"rzWarning": 0,
"rzState": 2,
"layer": "RealSkLayer",
"layerPop": "RealSkPop"
},
];
if (Array.isArray(data)) {
data.forEach(o => {
const strarz = o.rz - o.fsltdz;
if (!isNaN(strarz)) {
o.strarz = strarz.toFixed(2);
}
});
}
ms.setData(parseGeoJSON(data));
return true;
}
getFeatureTip(record) {
return record.stnm;
}
featureClicked(properties, dispatch) {
if (properties.stnm === '小玉潭水库') {
/*
dispatch.runtime.setInfoDlg({
layerId: 'Three', properties: properties
});
*/
} else {
dispatch.runtime.setFeaturePop({
type: InfoPopNames.RealSkPop,
properties,
coordinates: [properties.lgtd, properties.lttd],
offsetPop: true,
});
}
}
}

View File

@ -4,6 +4,7 @@ import RealHDLayer from "./realhdlayer";
import RealHDLayerQ2 from "./realhdlayerQ2";
import RealSkLayer from "./realsklayer";
import RealSkLayerQ2 from "./realsklayerQ2";
import RealSkLayerQ3 from "./realsklayerQ3";
import { DCPJ_TYPES } from "../../consts";
import WataLayer from "./watalayer";
import PlaneAreaLayer from "./planarealayer";
@ -308,6 +309,10 @@ const sources = {
type: 'geojson',
data: { type: 'FeatureCollection', features: [] },
},
[RealSkLayerQ3.SourceName]: {
type: 'geojson',
data: { type: 'FeatureCollection', features: [] },
},
[PicStLayer.SourceName]: {
type: 'geojson',
data: { type: 'FeatureCollection', features: [] },

View File

@ -104,8 +104,8 @@ function DrpReal({ style }) {
], // 从properties中动态读取icon字段
'icon-size': [
'interpolate', ['linear'], ['zoom'],
10, 0.8,
14, 0.8,
10, 0.5,
14, 0.5,
],
'text-size': [
'interpolate', ['linear'], ['zoom'],

View File

@ -228,7 +228,7 @@ export default function AreaDrp({ style }) {
<>
<div style={{color:'#ffffff',padding:'7px 5px 10px 5px',display:'flex',alignItems:'center',fontWeight:200}}>
{/* 时段选择 */}
麻城市未来24小时最大网格点雨量量级统计
麻城市未来2小时最大网格点雨量量级统计
{/* <div className='tm' style={{position:"relative",zIndex:999999,color:"#fff",width:"71%",margin:'10px'}}>
<RangePicker

View File

@ -60,6 +60,19 @@ export default function AreaDrp({ style }) {
}
},[show])
useEffect(()=>{
if(tab==='1'){
dispatch.rcview.showRealContour('htest')
}else{
dispatch.rcview.showRealContour('htest')
}
return ()=>{
dispatch.runtime.setLayerSetting({ contour: null, dem: undefined });
dispatch.runtime.setLayerSetting({ planeArea: null });
dispatch.map.setLayerVisible({ ContourLayer: false });
}
},[tab])
return (
<PanelBox