Feature Description
捷運分頁目前沒有任何文字搜尋(全檔零個 Autocomplete),選站流程是:ChoiceChip 選系統 → _LinePill 選路線 → 在列表裡找到自己的站並點下去。要找一個特定的站只能用眼睛掃。
考慮到捷運站密度高、使用者通常人就站在站裡,最有價值的一項是定位最近的車站:自動選好系統、路線與車站,一步到位。
做法
lib/core/user_location.dart(#49 新增)已經有 resolveUserPosition;nearestRailStation 目前吃 RailStation,捷運用的是 MetroStation,需要一個對應版本或把它泛型化。
資料是齊的:
/api/v1/metro/{system}/stations 回傳 line_id + lat/lon
/api/v1/metro/{system}/station-of-line 回傳站序
定位後要能反推出「哪個系統 → 哪條路線 → 哪一站」,所以需要跨系統比對(使用者可能在高雄卻選著台北捷運)。
不做
- 滾輪選擇器:捷運的路線膠囊 UI 已經夠好,滾輪不見得更好
- 已開出變灰:捷運顯示的是 ETA 倒數秒數不是時刻表時間,沒有「已過站」的概念
- 起訖站區間:捷運分頁沒有 OD 概念
Motivation
捷運是四個分頁裡唯一連「找到我人在的那一站」都做不到的。
Notes
由 #49 拆出,共用元件在 #53。
Feature Description
捷運分頁目前沒有任何文字搜尋(全檔零個
Autocomplete),選站流程是:ChoiceChip選系統 →_LinePill選路線 → 在列表裡找到自己的站並點下去。要找一個特定的站只能用眼睛掃。考慮到捷運站密度高、使用者通常人就站在站裡,最有價值的一項是定位最近的車站:自動選好系統、路線與車站,一步到位。
做法
lib/core/user_location.dart(#49 新增)已經有resolveUserPosition;nearestRailStation目前吃RailStation,捷運用的是MetroStation,需要一個對應版本或把它泛型化。資料是齊的:
/api/v1/metro/{system}/stations回傳line_id+ lat/lon/api/v1/metro/{system}/station-of-line回傳站序定位後要能反推出「哪個系統 → 哪條路線 → 哪一站」,所以需要跨系統比對(使用者可能在高雄卻選著台北捷運)。
不做
Motivation
捷運是四個分頁裡唯一連「找到我人在的那一站」都做不到的。
Notes
由 #49 拆出,共用元件在 #53。