2026-09-09-water-supply-gis-marker-style.md 3.4 KB

供水 GIS 点位标注规范

状态

accepted

决策

供水 GIS 一张图包含供水设施 GIS 一张图、监测设备 GIS 一张图和监测报警一张图。三张图共用统一地图页壳与交互框架,但数据边界、图层语义和详情内容不同。

统一地图使用 GisMapCanvas 渲染点位。输入坐标保持 WGS84;组件在渲染到百度地图前统一转换为 BD09。 统一页壳使用 WaterGisPageShell 承载页头、左侧信息面板和地图区;设施图、设备图和报警图只替换面板数据与地图内容。

坐标点

  • 使用百度地图官方 T_MarkPoint_* 图标素材和 BMapGL.Marker + BMapGL.Icon 渲染坐标点。
  • 点位名称使用独立 BMapGL.Label,显示在坐标点上方;名称框宽度固定为坐标点图标宽度的 2 倍(56px),单行最多 6 个中文字符,超长自动换行。
  • 点击点位或搜索结果时定位并放大到对应要素。
  • 管网 LineString 只绘制管线,不绘制起点、终点坐标点;点击管线时由页面查询并展示详情。

重叠点位合并

  • 同屏相邻点位按像素半径(默认 48px)合并为一个簇,簇复用点位图标并显示数量;合并只发生在渲染层,不修改业务数据。
  • 当簇内包含多种类型或多种状态图标时,使用 T_MarkPoint_Colorful.png 作为聚合图标。
  • 聚合文本带业务前缀:设施图显示“设施集合:数量”,设备图显示“设备集合:数量”,报警图显示“报警集合:数量”。
  • 点击簇时,画布优先缩放展开簇内点位;当簇内坐标完全重合、无法通过缩放展开时,画布发出 cluster-click 事件,由页面层展示簇内点位列表。

设施类型颜色

设施类型与官方图标素材的映射如下:

类型 名称 图标
source 水源地 T_MarkPoint_Blue.png
plant 水厂 T_MarkPoint_Green.png
pumpStation 泵站 T_MarkPoint_Red.png
pipe 供水管网 T_MarkPoint_Yellow.png
user 用水户 T_MarkPoint_Black.png

该映射只表示设施类型,不表示设备运行状态。

监测点状态颜色

监测设备和报警点位使用状态语义:

状态 颜色/素材
正常 绿色 / T_MarkPoint_Green.png
报警 红色 / T_MarkPoint_Red.png
预警 黄色 / T_MarkPoint_Yellow.png
有关联工单 蓝色 / T_MarkPoint_Blue.png
离线 灰色 / T_MarkPoint_Grey.png

状态判定不得替代设备状态、报警记录状态或工单状态的独立数据来源。

监测报警一张图使用报警点位接口提供地图坐标,并通过报警台账与设备点位补全状态来源。设备报警状态、报警记录状态和关联工单状态必须分别展示;任一来源缺失时显示“未获取”,不得由另一来源推导。

统一交互

  • 默认地图中心为沅陵县。
  • 地图同时显示当前查询范围内全部有效点位和管线,不得只显示第一条记录。
  • 点击地图点位或左侧搜索结果时,定位并放大到对应要素,并打开右侧详情抽屉。
  • 左侧面板由 side-panel-body 统一采用有界滚动;统计、图层、图例和搜索结果完整可用,搜索结果不得再嵌套独立滚动。
  • 设施详情抽屉中的字段名和枚举值必须使用中文业务口径,不得直接展示接口原始英文字段。