Commit Graph

6 Commits (main)

Author SHA1 Message Date
Council c5eb2e9996 feat: VR ticket plugin full update - Tree API, City selector, seatmap service, wallet plugin
Core changes:
- Add Tree API design docs + implementation plan (14/15/16_*.md)
- Add CityService + City API (city selector component)
- Enhance SeatMapService + SeatSkuService (seatmap.test.json)
- Add Hook.php event injection, AdminGoodsSave hooks
- Update ticket_detail.html, venue/save.html views
- Add CORS middleware, Weixin payment fix

Wallet plugin (new submodule):
- Full wallet plugin: admin (Cash/Recharge/Transfer/Config)
- API layer: User/Walletlog/Recharge/Cash/Transfer endpoints
- Hook integration

Docs:
- VR_TICKET_TREE_API.md, VR_TICKET_WALLET_VERIFY_API.md
- Council evaluation report, test files

Tools:
- strip_batch.py, strip_page.py (cleanup utilities)

(153 files, +27784/-686 lines)
2026-06-03 13:34:38 +08:00
Council 4e5aaeacd2 feat(Task1): 票夹页面左上角加返回按钮
- HTML: 固定定位返回按钮(history.go(-1))
- CSS: AmazeUI am-icon-angle-left 风格,圆形白底 + 阴影
- 同步 app/ + public/ 两份 ticket.css
- ShopXO 最佳实践: AmazeUI 内置图标,无需额外 iconfont 依赖
2026-04-24 16:57:43 +08:00
Council f8bb136d97 fix(Task1): 票夹API双斜杠404 — 修复apiBase构造 + 同步static文件到public/
根因:ticket_card.js 的 apiBase 动态构造错误(双斜杠)
+ static文件只更新了app/未同步public/导致Nginx仍serve旧版

详见 docs/DEBUG_STATIC_FILE_SYNC.md(第17条踩坑经验)
2026-04-24 15:39:43 +08:00
Council fdd89fbb70 fix: 优化规格选择器样式 - 处理长名称显示和添加 tooltip 2026-04-21 13:09:48 +08:00
Council de9134773f feat: 添加场馆和分区选择器 + specTypeList 支持
- SeatSkuService: 返回 specTypeList 包含所有4维规格
- Goods.php: 注入 specTypeList
- ticket_detail.html:
  - 添加 venueSelector 和 sectionSelector HTML 容器
  - 添加 renderAllSelectors() 渲染场次/场馆/分区
  - 添加 selectVenue/selectSection/filterSeats 函数
- CSS: 添加规格选择器样式
2026-04-21 13:02:38 +08:00
Council c581395a9c feat(Phase2): Issue 1 修复购买提交流程
- Goods.php: 注入 seatSpecMap 到票务模板
- ticket_detail.html: submit() 改 POST + 4维spec数组

关键修复:
- submit() 使用隐藏表单 POST 到 Buy 链路(不再用 location.href)
- spec 从 seatSpecMap[seatKey].spec 读取完整4维数组
- extension_data 嵌套在 order_base 内
- 直接 JSON.stringify,不需要 base64
2026-04-21 11:41:59 +08:00