Major changes: - New frontend (platform/web/): Vite + React 18 + TypeScript + Tailwind - 4-module navigation: 数据送标 / 模型管理 / 车队管理 / 系统管理 - Data catalog with charts (DMS/ADAS/Lane 3-tab view) - Quality review workflow (标注质检): Good/Fine/Bad scoring with auto-advance - Audit enhancements: batch operations, rejection categories, Feishu notifications - Operation audit log (操作日志) - World model simulation studio (仿真工坊) - Dataset version management with snapshots and diff - ADAS 7-class dataset integration (138K images organized + compressed) - User management with Feishu integration and pagination - CRUD/search/filter on all pages, card layout redesign - PIL-optimized image overlay rendering - Auto-snapshot on build, in_review workflow stage - Removed embedded algorithm code (now in workspace)
3.3 KiB
3.3 KiB
HSAP 车队地图(演示 / T-Box)
功能
- 实时查看采集车位置与当前趟次轨迹(默认高德栅格底图,国内可访问;可选
AS_MAP_TILE_PROVIDER=osm) - 演示环境默认注入 3 台长沙周边假车(湘A),轨迹由贝塞尔曲线密点生成(弯道而非直线折线),后台每 8 秒模拟 T-Box 推进
环境变量
| 变量 | 默认 | 说明 |
|---|---|---|
AS_FLEET_MAP_ENABLED |
1 |
启用车队 API |
AS_FLEET_MOCK_SEED |
1 |
首次启动无车辆时注入演示数据 |
AS_FLEET_MOCK_SIMULATE |
1 |
后台模拟 GPS 推进 |
AS_FLEET_SIM_INTERVAL_SEC |
8 |
模拟间隔秒 |
AS_TBOX_INGEST_TOKEN |
hsap-demo-tbox-token |
T-Box 上报 Token |
AS_MAP_TILE_PROVIDER |
gaode |
底图:gaode / osm(国内勿用 osm,易灰屏) |
AS_AMAP_KEY |
空 | 高德 Web JS Key(可选,后续 AMap API) |
T-Box 与车辆关联(无需页面「新建车辆」)
关联键是 device_id(入库字段 tbox_device_id):
- 运维在 T-Box / 采集机配置 HSAP 上报地址与
X-Tbox-Token(环境变量AS_TBOX_INGEST_TOKEN)。 - 终端首次
POST /api/v1/tbox/gps时,若该device_id不存在,平台自动创建车辆记录(可用 body 里的plate_no填车牌)。 - 后续同一
device_id的点写入当前 active 行程;run_signal=end/idle时结束行程。
可选 body 字段:plate_no、engineer、project、batch、speed_kmh、heading、ts。
Web 页仅用于查看地图、改车牌备注、GPX 补录;不需要手工新建车辆。
T-Box 上报示例
curl -X POST http://127.0.0.1:8787/api/v1/tbox/gps \
-H "Content-Type: application/json" \
-H "X-Tbox-Token: hsap-demo-tbox-token" \
-d '{"device_id":"TBOX-001","lat":22.72,"lng":114.25,"speed_kmh":40,"run_signal":"active","plate_no":"湘A·采集01"}'
手动重播种 / 推进
需登录且具备 write:fleet(工程师/管理员):
POST /api/v1/fleet/mock/seed— 仅在无车辆时创建演示数据POST /api/v1/fleet/mock/reseed— 清空并重新注入长沙演示数据POST /api/v1/fleet/mock/tick— 手动推进一轮模拟 GPS
切换区域后重新注入:
curl -X POST http://127.0.0.1:8787/api/v1/fleet/mock/reseed \
-H "Authorization: Bearer <你的 token>"
Phase 2 API(生产化)
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /api/v1/tbox/gps/batch |
批量上报(最多 100 点),body {"points":[...]} |
| GET | /api/v1/fleet/stream |
SSE 推送 fleet.gps(需 Redis + JWT) |
| POST | /api/v1/fleet/runs/import-csv |
CSV 补录:lat,lng 或带表头 lat,lng,ts;可选 project/batch 关联 DMS 批次 |
超时关趟: 车辆超过 10 分钟无新 GPS(RUN_IDLE_TIMEOUT_MIN)时,/fleet/live 与 ingest 前会自动结束 active 行程。
GPX 轨迹补录
需 write:fleet:
curl -X POST http://127.0.0.1:8787/api/v1/fleet/runs/import-gpx \
-H "Authorization: Bearer <token>" \
-F vehicle_id=1 \
-F file=@track.gpx
前端车队页侧栏也可选择车辆上传 .gpx 文件。
前端
导航 车队地图(权限 read:fleet),页面每 15 秒轮询 live;选中行程显示里程与里程碑,地图红色点为里程碑。