【Hello AI 科技致善】 用 SOLO 打造基于腾讯地图 GIS 的社区医院重点人员管理平台

【智慧医疗】用 SOLO 打造基于腾讯地图 GIS 的社区医院重点人员管理平台


① 摘要

面向社区医院的全科医生和公卫护士,在日常上门随访、重点人群健康管理和签约服务场景下,提供基于腾讯地图 GIS 的重点人员可视化管理和路径规划能力,目前通过完整系统原型(含 6 类重点人员管理、6 种地图可视化图层、驾车/步行路线规划)验证有效。


② 真实场景与需求

目标人群:社区医院的全科医生、公共卫生护士、社区网格员等基层医务人员。

痛点描述:以长沙市岳麓区望月湖社区卫生服务中心为例——

  • 重点人员(重病患、签约居民、新生儿、孕产妇、老年人、慢病患者)信息分散在纸质档案和多个系统中,无法直观了解他们在社区内的地理分布
  • 家庭医生上门随访时,无法提前规划最优路线,经常走冤枉路,一天最多只能完成 5-6 户随访
  • 随访超期、健康指标异常、签约到期等情况缺乏有效预警机制,全靠人工记忆和 Excel 表格跟踪
  • 向卫健委汇报时,缺乏直观的数据可视化,统计报表制作耗时耗力

现有做法:目前主要依赖 Excel 表格管理重点人员名单 + 电话/微信群沟通 + 手工绘制社区网格图,存在信息滞后、缺乏空间感知、难以持续跟踪等问题。


③ 作品介绍

本作品是一个基于腾讯地图 JavaScript API GL 的社区医院医疗平台,以 GIS 地图为核心交互界面,实现重点人员的综合展示和日常业务管理。

核心功能

模块 功能点
重点人员管理 重病患、签约家庭医生、新生儿、孕产妇、老年人、慢病患者 6 类人员的登记、查询、分类筛选
GIS 地图展示 人员标注(6 类 SVG 图标)、点聚合、热力图、蜂窝热力图、社区网格区域图、散点分布图,6 种图层可独立开关
路径规划 驾车路线规划(最短时间策略)和步行路线规划,支持起终点标注、路线绘制、导航步骤展示
随访管理 随访计划制定、逾期/今日/近期随访分类展示、随访记录时间线
签约管理 签约统计、到期预警、续签提醒
数据统计 人员类型分布饼图、网格柱状图、随访完成率、签约履约率
预警中心 随访超期、健康指标异常、签约到期、疫苗接种逾期等多级预警

技术栈:腾讯地图 JSAPI GL(v1.exp)+ 可视化库 + 服务类库 + 纯前端 HTML/CSS/JS


④ 用 SOLO 实现的过程

第一步:需求分析 —— 生成系统需求规格说明书(SRS)

首先让 SOLO 生成了完整的《社区医院医疗平台系统需求规格说明书》(docx),涵盖引言、总体描述、功能需求(4 大模块 20+ 功能点)、非功能需求、GIS 地图专项需求、接口需求、数据需求、系统架构设计、项目实施计划共 9 章 + 附录。

关键 Prompt:“需要开发一个社区医院医疗平台,实现重点人员的管理,比如重病患、签约家庭医生、新生儿等的总和管理。技术架构基于腾讯地图的 GIS 地图能力,对上述人群进行综合展示和日常业务管理。请生成系统需求规格说明书。社区以长沙市岳麓区的某社区为例。”

第二步:查阅 API 文档,确保用法正确

调用 tencentmap-jsapi-gl-skill 技能后,并行查阅了 3 组 API 文档和 Demo 代码

  • JS API 文档:点标记(MultiMarker)、点聚合(MarkerCluster)、信息窗体(InfoWindow)、控件(Control)、地图(Map)
  • 可视化 API 文档:热力图(Heat)、蜂窝热力图(Hexagon)、区域图(Area)、散点图(Dot)
  • Demo 示例代码:20+ 个 HTML 示例文件,提取了数据格式、配置参数和最佳实践

这一步非常关键——确保所有 API 调用严格使用文档中出现的接口和参数格式,避免自造不存在的属性。

第三步:系统界面开发

基于 SRS 和 API 文档,用单个 HTML 文件实现了完整的系统界面:

任务拆解思路

  1. 先搭骨架(布局:顶部导航 + 左侧面板 + 中央地图 + 右侧面板)
  2. 再填数据(20 条模拟人员数据、8 条随访记录、4 个社区网格)
  3. 然后接地图(初始化 → 标注 → 聚合 → 热力图 → 区域图 → 散点图)
  4. 最后做交互(点击联动、筛选联动、信息窗体、面板切换)

用到的 SOLO 能力

  • 技能调用(tencentmap-jsapi-gl-skill)获取 API 文档
  • 并行子代理(3 个 Explore 代理同时查阅不同文档)
  • 文件读写(生成 HTML 文件)
  • 本地服务器启动和浏览器预览

第四步:路径规划功能开发

在已有地图基础上,新增驾车/步行路线规划:

  • 查阅 TMap.service.DrivingTMap.service.Walking 文档
  • TMap.MultiPolyline 绘制路线(驾车蓝色实线 + 箭头,步行绿色虚线)
  • 在右侧面板展示路线详情(距离、时间、导航步骤时间线)
  • 支持 4 个入口触发导航(随访卡片、人员详情、信息窗体、人员卡片)

踩过的坑

原因 解决方案
地图白屏不显示 API Key 有域名白名单限制 替换为用户自己的 Key
TMap.VectorBaseMap is not a constructor WebGL 不可用时 API 降级,该类不存在 改用字符串配置 baseMap: {type:'vector'}
浏览器不支持 WebGL 腾讯地图 JSAPI GL 依赖 WebGL 添加 WebGL 预检测 + 友好错误提示
API 未加载完就初始化 DOMContentLoaded 时 API 可能还没加载完 添加轮询等待机制 + callback 方式加载

⑤ 成果展示

系统界面

点击上方链接可直接在浏览器中打开系统界面(需使用 Chrome/Edge,需联网加载腾讯地图 API)。

人员信息定位。

人员位置导航。

界面布局

┌──────────────────────────────────────────────────────┐
│  🏥 社区医院医疗平台  │  预警 │ 导出 │ 设置 │ 用户  │
├────────┬──────────────────────────────┬──────────────┤
│ 重点人员│        GIS 地图主区域         │  数据统计     │
│ 随访管理│   📍 6类人员SVG图标标注      │  人员详情     │
│ 签约管理│   🔴 点聚合(缩小时自动聚合)  │  路线规划     │
│        │   🌡️ 热力图(人员密度分布)    │              │
│ 搜索    │   ⬡ 蜂窝热力图(3D网格统计)  │  📊 类型分布  │
│ 筛选    │   ▢ 社区网格区域图(4个网格)  │  📋 随访统计  │
│ 人员卡片│   ● 散点分布图(辐射动画)    │  🗺️ 导航路线  │
│        │   🚗 驾车/步行路线规划        │  🔔 预警信息  │
├────────┴──────────────────────────────┴──────────────┤

交付物

交付物 说明
系统需求规格说明书 完整 SRS 文档,9 章 + 附录,约 11 页
系统界面(HTML) 可直接运行的完整系统原型,约 1800 行

关键技术指标

  • 地图图层:6 种可视化图层(标注 / 聚合 / 热力图 / 蜂窝 / 区域图 / 散点图),可独立开关
  • 人员类型:6 类重点人员,每类独立图标和颜色标识
  • 路线规划:驾车 + 步行双模式,含导航步骤展示
  • 数据面板:饼图、柱状图、进度条、时间线等多种可视化
  • API 调用:全部严格遵循腾讯地图 JSAPI GL 官方文档规范

⑥ 验证方式与下一步

验证方式

  • API 规范验证:通过 3 个并行子代理对照官方文档逐项验证了所有 API 调用的正确性(构造参数、方法签名、数据格式、事件绑定),仅发现 1 处低严重度问题(gradientColor 类型),已修复
  • 功能完整性检查:SRS 中定义的 20+ 功能点全部在界面中实现,包括 6 种地图图层、6 类人员管理、路径规划、预警中心等
  • 浏览器兼容性:代码包含 WebGL 检测、API 加载容错、初始化异常捕获等防护机制

下一步计划

  1. 接入真实数据:与社区医院 HIS 系统对接,导入真实人员数据
  2. 后端开发:搭建 Spring Boot 后端,实现数据持久化和 RESTful API
  3. 移动端适配:优化响应式布局,支持平板和手机端使用
  4. 实地试用:在望月湖社区卫生服务中心进行实际试用,收集医护人员反馈
  5. 性能优化:针对 1000+ 人员数据场景进行标注聚合和热力图渲染优化