vr-shopxo-plugin/shopxo/app
Council 4df288c62a refactor(phase4.1): 短码设计改为明文 goods_id 方案,O(1) 解码
设计变更:
- 旧方案:位打包 (goods_id<<17|ticket_id),需要暴力搜索 goods_id
- 新方案:goods_id(4位base36) + ticket_id(5位base36) → Feistel8 → 短码

新设计优势:
- 解码 O(1):直接取前4位=goods_id,后5位=ticket_id
- 无需暴力搜索,只需验证 hint 匹配
- goods_id 范围扩大:0-1,679,615(4位base36)
- ticket_id 范围扩大:0-1,073,741,823(5位base36)
- 安全性不变:Feistel8 混淆仍保护 ticket_id

技术实现:
- shortCodeEncode: base36 固定4位/5位 padding → intval → Feistel8
- shortCodeDecode: 有 hint 直接验证,无 hint 暴力搜索
- 校验边界:goods_id ≤ 0xFFFFFF, ticket_id ≤ 0x3FFFFFFF
2026-04-22 23:37:33 +08:00
..
admin
api
index feat: 添加场馆和分区选择器 + specTypeList 支持 2026-04-21 13:02:38 +08:00
install
lang
module
plugins refactor(phase4.1): 短码设计改为明文 goods_id 方案,O(1) 解码 2026-04-22 23:37:33 +08:00
route
service
tpl
AppService.php
BaseController.php
ExceptionHandle.php
Request.php
common.php
event.php feat(Phase2): Issue 1 修复购买提交流程 2026-04-21 11:41:59 +08:00
middleware.php
provider.php
service.php