Commit Graph
85 Commits
Author SHA1 Message Date
Henry_Du 0e3f1a6e86 feat(web/route): 新增全局站点管理页面 (Station Management)
1. 在左侧侧边栏新增「站点管理」导航项,并支持在 /route 内无缝切换视图。
2. 实现了全局的站点列表:
   - 支持显示所有已入库站点的编号、中英文名称。
   - 动态计算并展示每个站点目前被关联到了哪些线路(所属线路)。
   - 支持通过站点编号或中英文名称进行快速搜索过滤。
3. 提供了独立于线路外的全局新增、编辑和删除站点功能:
   - 新增:不再强制需要选中线路,直接在库中创建。
   - 编辑:复用原有的站点编辑弹窗。
   - 删除:可从库中全局删除无用站点。
4. 移动端和电脑端均已应用自适应表格和工具栏布局。
2026-08-07 23:56:40 +08:00
Henry_Du 0a37c0cba2 fix(web/route): 解决移动端列表与空状态卡片重叠问题
1. 修复移动端下由于 .management-sidebar 高度受限导致内容溢出、与下方主面板重叠的布局 bug。
2. 将 .management-sidebar 高度锁定在最大 40vh 并限制内部 .card 溢出,同时保持线路列表自身的内部滚动,优化了上下排布时的展示效果。
3. 当移动端未选中任何线路时,直接隐藏掉右侧面板(.management-main.is-empty),避免多余的“选择左侧线路”空状态卡片挤占宝贵的手机屏幕空间。
4. 修复了桌面端误显移动端专属提示文本的问题。
2026-08-07 23:41:47 +08:00
Henry_Du 6605c67f23 feat(web/route): 支持电脑端鼠标平移画布 & 优化动态SVG宽度
1. 修复电脑端画布无法拖拽滑动问题:
   - 新增 onPanStart/onPanMove/onPanEnd 逻辑
   - 绑定鼠标事件到 .visual-line-container,实现按住左键平移 scrollLeft
2. 修复长线路无法完全滚动的问题:
   - 将固定 100% 的宽度替换为动态宽度计算:Math.max(100, 50 + stations.length * 120 + 50) + px
   - 确保原生 overflow-x: auto 能正确感知超出容器的内部站点
3. 更新静态资源版本号避免缓存
2026-08-07 23:32:05 +08:00
Henry_Du 1046aa8dda feat(web/route): 适配移动端响应式布局 + 统一站点拖拽逻辑
1. 线路规划页面(/route)移动端适配:
   - 新增 980px / 768px / 480px 三档响应式CSS
   - 侧边栏改为抽屉式叠加层,主容器垂直流式布局
   - 顶部导航、工具栏、编辑器堆叠式排列
   - SVG线路容器开启横向惯性滚动,最小宽度720px
   - 票价地图、表格、模态框均针对小屏优化
   - 按钮/输入框统一最小高度44px,满足可访问性

2. 重构站点拖拽逻辑(修复电脑端拖拽失效):
   - 原实现:mousemove绑定单站点<g>,鼠标离开即丢失拖拽
   - 新实现:mousedown/touchstart仅记录起点,
     window级别监听 mousemove/mouseup/touchmove/touchend
   - 通过 SVG createSVGPoint + getScreenCTM().inverse()
     统一将屏幕坐标转换为SVG逻辑坐标再换算站点索引
   - 共用 swapStationByIndex() / saveDragResult() 核心函数

3. 静态资源版本号升级: style.css v16, ticket-route.js v5
2026-08-07 23:01:33 +08:00
Henry_Du 7e72bbeae5 feat: 新增错误问题追踪与管理功能
- 升级程序版本至 v1.5.25
- 新增对比度文本颜色计算与垂直滚动条绘制工具函数,优化选择界面滚动显示
- 网页端新增问题记录管理页面,配套完整的表格与详情展示样式
- 实现issue记录标准化处理、实时事件推送接收与按时间倒序排序展示
- 重构原有选择界面的滚动逻辑,替换为通用滚动条绘制函数
2026-07-29 12:29:54 +08:00
Henry_Du c840e2abfe feat: 新增客户端问题主动上报与控制台问题汇总功能
1. 客户端 (ticketmachine.lua): 修改 showAlert 支持详细错误并主动上报,使用 pcall 包装主循环捕获 Fatal Error 并上报。
2. 服务端 (data.js, api.js): 增加 issues 数据表,提供 /report_issue 和 /issues 接口。
3. 控制台 (index.html, index.js): 添加“问题汇总”菜单及界面状态管理。
2026-07-24 22:37:26 +08:00
Henry_Du 4ddc4cb4ad style: 稳定订票页线路按钮布局与尺寸 2026-07-19 03:41:50 +08:00
Henry_Du 847957be61 feat: 支持编辑线路图署名并固定 CC BY 4.0 2026-07-19 00:16:20 +08:00
Henry_Du 6195ebb6be chore: 为线路图展示补充 CC-BY 4.0 署名 2026-07-18 23:51:32 +08:00
Henry_Du ec31c12130 feat: 改造线路图上传后台并接入购票页总览图 2026-07-17 03:17:03 +08:00
Henry_Du 289ed65e79 style: 优化移动端线路按钮与区间卡片布局 2026-07-17 02:54:35 +08:00
Henry_Du 95bf4d3d8e style: 同步购票页移动端直角与线路列表布局 2026-07-17 01:19:35 +08:00
Henry_Du c6ab010974 style: 调整购票页外框直角样式并上移线路列表 2026-07-17 01:16:24 +08:00
Henry_Du 234e22468a style: 合并断点线路展示并改为直角线段 2026-07-17 01:13:10 +08:00
Henry_Du 5e8d4f7bbe fix: 统一不同线路的地图容器大小,无论站点多少,容器最小宽度都保持一致 2026-07-16 22:49:13 +08:00
Henry_Du 9d145c3d16 style: 优化 TVM 购票地图,缩小元素尺寸,增加切换动画,适配移动端 2026-07-16 22:16:10 +08:00
Henry_Du cfaa622dcd feat: 重构选择购票区间地图为 TVM 瀑布流样式 2026-07-16 06:05:33 +08:00
Henry_Du 7812d47f0c refactor & feat & fix: 重写SVG生成器,优化前端线路绘制与修复样式
重写服务器端SVG生成逻辑,将原铁路线路图生成功能替换为站点间票价矩阵生成。
优化前端换乘路径绘制:新增线路偏移与弯道处理,避免多条线路路径重叠。
修复站点标记的外层圆圈填充颜色,使其正确使用对应线路的配色。
2026-07-16 03:49:45 +08:00
Henry_Du d32d72a3da feat(web): 优化区间选择界面线路图布局
1. 实现正交布线与圆角拐角连接,减少斜线交叉

2. 动态调整线路间距与节点位置,提高整体紧凑性

3. 优化线路名称与换乘站标签的避让逻辑,避免遮挡

4. 删除不再使用的全局预览页(map-preview.html)
2026-07-16 00:26:18 +08:00
Henry_Du 86f3d478d6 feat(ticket-order): 重写线路地图可视化功能,替换原有线路UI
替换原有的标签式线路站点UI,新增加载渲染官方线路SVG地图、线路分段展示、换乘站标记、站点中英文标注、路线规划高亮预览等功能,优化响应式布局与交互逻辑。
2026-07-15 20:41:11 +08:00
Henry_Du 4ea58772d3 feat(route-map): 新增线路预览页面并优化八向布线布局
- 新增全网线路图预览前端页面 `/web/map-preview.html`
- 调整布局物理参数与迭代次数优化排布效果
- 新增正交八向布线强制对齐逻辑
- 实现节点网格对齐与优化线路路径转角处理
- 调整锚点固定力度提升布局稳定性
2026-07-15 02:54:11 +08:00
Henry_Du 620289e836 更新线路图绘制 2026-07-15 00:50:55 +08:00
Henry_Du 5bd2e5b882 feat(ticket-order): 优化单线线路展示与同线区间高亮 2026-07-14 05:47:47 +08:00
Henry_Du fefd919031 chore(ticket-order): 提升 ticket-order.js 版本号以破除浏览器缓存 2026-07-14 04:43:07 +08:00
Henry_Du 3311ee70ce feat(ticket-order): 添加单线地铁图选中高亮金线及箭头动画,取消鼠标悬浮动画 2026-07-14 01:43:24 +08:00
Henry_Du 63d710114d feat(ticket-order): 将 TVM UI 的网格站点改为与后台一致的单线地铁图样式 2026-07-14 01:17:49 +08:00
Henry_Du a79142660f fix(ticket-order): 修复无法正常切换路线的问题,优化移动端及主题适配 2026-07-14 00:50:19 +08:00
Henry_Du 139a65f24c refactor(ticket-order): 清理废弃的SVG渲染代码并优化TVM界面高亮反馈 2026-07-13 23:47:57 +08:00
Henry_Du ae11f9e34b feat(web): 新增后台线路拓扑图布局编辑器,允许手动拖拽调整所有站点坐标 2026-07-13 21:07:24 +08:00
Henry_Du 6a80db6d1d feat(web): 回退到以发散方式显示各条水平线路 2026-07-13 20:51:42 +08:00
Henry_Du ccb7ad5721 feat(web): 重构线路图渲染引擎,引入网格化对齐与拓扑深度推导算法,完美还原真实地铁图的整齐排版 2026-07-12 12:17:56 +08:00
Henry_Du 20cfdc5174 style(web): 调整线路名防遮挡偏移、缩小线路间距,并根据线路颜色动态匹配文字深浅色 2026-07-12 10:28:15 +08:00
Henry_Du e1637da9c6 style(web): 优化车站文本颜色层次并增加白色描边以解决与线条重叠的问题 2026-07-12 10:19:31 +08:00
Henry_Du 46f8a17157 feat(web): 优化车站名与线路名显示,增加车站编号与英文名称 2026-07-12 10:04:40 +08:00
Henry_Du 423a5972fc refactor(web): 优化线路图走线为45度和直角转折,并在起终点显示线路名 2026-07-12 09:50:36 +08:00
Henry_Du 9ef5d2099e refactor(web): 将订票线路图改为90度规整走线并保留圆角 2026-07-12 09:02:12 +08:00
Henry_Du a651fac095 refactor(web): 将换乘站合并为单点并重绘订票线路图 2026-07-12 08:35:07 +08:00
Henry_Du 83c7d25cbe refactor(web): 优化订票线路图布局与换乘站视觉表现 2026-07-11 23:37:35 +08:00
Henry_Du dc835f498d fix(web): 修复重构导致 allStations 变量未定义引发的渲染崩溃问题 2026-07-11 23:20:35 +08:00
Henry_Du d6f37d1415 fix(web): 重构线路图渲染算法,实现平行水平走线与胶囊式垂直换乘 2026-07-11 23:15:36 +08:00
Henry_Du 4052cd2f58 fix(web): 修复断点站点的X轴坐标偏移问题,并优化换乘站的视觉连接 2026-07-11 22:42:46 +08:00
Henry_Du 1ce7fd630b feat(web): 撤销静态SVG图片渲染,回退到自动线条生成模式,并保留断点支持 2026-07-11 22:23:12 +08:00
Henry_Du 116b2af4ef feat(admin): 优化换乘设置与坐标绑定逻辑,自动识别同名换乘站 2026-07-11 21:46:12 +08:00
Henry_Du aede84f164 feat(web): 订票地图升级为静态SVG并叠加动态坐标交互;完善断点支持 2026-07-11 21:15:48 +08:00
Henry_Du 1d9f08d5c6 chore(backend,frontend): 移除设备位置管理全链路功能与相关代码
- 删除后端所有机器位置相关的API接口、缓存逻辑与后台同步任务
- 移除前端的机器位置导航入口、地图页面与管理代码
- 将原机器地图页面重构为车票查询页面
- 调整Lua程序的默认版本号
- 删除无用的.gitignore文件
- 优化前端页面的代码格式与导航结构
2026-07-11 16:05:20 +08:00
Henry_Du 84dbdf58c4 feat: 增加机器位置手动编辑功能及公开查看界面 2026-07-11 15:43:17 +08:00
Henry_Du efc061e471 feat: 新增设备位置追踪与网页管理页面
- 更新服务端默认Lua版本与客户端程序版本至 v1.5.16
- 新增后端API接口用于提交和查询设备位置数据
- 为售票机和检票机添加后台GPS位置同步任务,定期上报设备坐标
- 服务端新增设备位置缓存,并自动清理超过5分钟未更新的过期数据
- 新增网页端设备位置地图页面,支持实时展示、点击查看详情与每分钟自动刷新
2026-07-11 14:58:30 +08:00
Henry_Du 79ae234232 feat: decouple OTA updates into dedicated fast endpoints to avoid db timeouts 2026-07-11 12:22:48 +08:00
Henry_Du 1f60c74ec2 feat: use simpler update_counter instead of timestamp for OTA updates 2026-07-11 12:00:20 +08:00
Henry_Du b0361fc366 feat: simplify OTA updates with timestamp 2026-07-11 10:50:00 +08:00