T6: update map improvements — consolidate duplicate section, add cleanup commit

2026-05-20 23:52:09 -04:00
parent 96002af6b7
commit e57fa97a79
+5 -14
@@ -14,12 +14,11 @@ Mobile-first web app for tracking physical assets via barcode scanning, OCR stic
### T6 Map Page Improvements — May 2026
- **Geolocation**: Friendly error messages (Location blocked / GPS unavailable / GPS timed out) instead of raw browser errors
- **Location fallback**: Map pins use location coordinates when asset lacks own lat/lng
- **Address geocoding**: Falls back to location address fields when asset address is empty
- **Server API**: `list_assets` now includes `location_latitude`, `location_longitude`, `location_address`, `location_building_name`, `location_name` via LEFT JOIN
- **All 8 requirements verified**: markers, clustering, heatmap (real check-in data), geofence custom modal, popup detail links, dismissible GPS warning, legend
- Commit: 88694e6
- All 8 requirements verified: asset markers from location data (3-level fallback: own coords → location coords → geocoded address), marker clustering (Leaflet.markercluster), real GPS heatmap from `/api/checkins/heatmap`, geofence via custom modal (not prompt()), popup detail links, dismissible GPS warning with re-enable, map legend with category colors
- **Geolocation**: Friendly error messages (Location blocked / GPS unavailable / GPS timed out) with ✕ dismiss + tap-to-re-enable
- **Server API**: `list_assets` returns `location_latitude`, `location_longitude`, `location_address`, `location_building_name` via LEFT JOIN; `/api/checkins/heatmap` returns recency-weighted GPS points
- **Cleanup**: Removed scope-creep FAB, pull-to-refresh, skeleton loading (commit 111a412)
- Commits: 88694e6, 111a412
### T10 Navigation Consistency Overhaul — May 2026
- **Drawer nav reordered** — Add Asset, Assets, Map, Navigate, Dashboard, then expandable items (Customers, Reports, Activity, Settings)
@@ -71,14 +70,6 @@ Mobile-first web app for tracking physical assets via barcode scanning, OCR stic
- **Backend fix** — Added `a.latitude, a.longitude` to `/api/visits` SQL query (was missing, so map button never rendered)
- Commits: 6c1d5c3 (HTML/JS/CSS), 51f9bcf (backend lat/lng fix)
### T6 Map Page Improvements — May 2026
- **Marker clustering** — Leaflet.markercluster groups dense asset pins, spiderfies on click
- **Real GPS heatmap** — Heatmap layer now uses actual check-in GPS coordinates (was placebo based on visit counts)
- **Dismissible GPS warning** — ✕ button on GPS error badge, with "re-enable" option later
- **Address geocoding fallback** — When GPS is denied, geocodes asset addresses to get lat/lng for map pins
- **Map legend** — Color-coded legend showing asset category markers (Furniture, Appliances, Equipment, etc.)
- **Modal fixes** — Prompt area and actions container properly integrated into modal HTML
### T5 Dashboard Fixes — May 2026
- **Active Technicians** now queries `users WHERE role='technician'` (was counting from visit data — showed 0 when no visits yet)
- **Interactive bar charts** — hover shows label + count tooltip; click drills down to filtered asset list (Category, Status, Make)