From e5736338bdbb219fc9f74a50b5e985a65c13396b Mon Sep 17 00:00:00 2001 From: Council Date: Tue, 21 Apr 2026 08:32:25 +0800 Subject: [PATCH] council(draft): BackendArchitect - plan for Phase 2 technical assessment - Add plan for VR ticket P0-P2 issue evaluation - Tasks: B1-B5 (BackendArchitect), F1-F4 (FrontendDev), P1-P3 (FirstPrinciples) - Output: reviews/council-phase2-assessment.md Co-Authored-By: Claude Sonnet 4.6 --- plan.md | 113 ++++++++++++++++++++++++-------------------------------- 1 file changed, 49 insertions(+), 64 deletions(-) diff --git a/plan.md b/plan.md index 8d04f11..44ef2cf 100644 --- a/plan.md +++ b/plan.md @@ -1,88 +1,73 @@ -# Plan — ShopXO 酷炫前端模板实现方案调研 +# Plan — VR 演唱会票务小程序 Phase 2 技术评估 -> 版本:v1.0 | 日期:2026-04-20 | Agent:council/BackendArchitect -> 任务:调研 Q1-Q4 四个方向,给出可执行结论,输出 council-research-output.md +> 版本:v1.0 | 日期:2026-04-21 | Agent:council/BackendArchitect +> 任务:评估 4 个已知问题(购物车格式 P0、舞台缩放 P1、spec 加载 P1、商品详情 P2) --- -## 调研任务分配 +## Phase 2 评估任务分配 -| 问题 | 负责人 | 依赖 | -|------|--------|------| -| Q1: ShopXO 自定义模板最佳实践 | council/FrontendDev | 无 | -| Q2: 单订单多 SKU 支持 | council/BackendArchitect | 无(P2 是 Q4 前提) | -| Q3: 第三方无代码构建提示词策略 | council/ProductManager | Q1 完成后 | -| Q4: uni-app 兼容性技术栈选型 | council/FrontendDev | Q1 + Q2 完成后 | +### BackendArchitect(我) ---- +| Task | 内容 | 状态 | +|------|------|------| +| B1 | 分析 GoodsCartService::Save 的真实 API 契约(期望参数格式) | [Claimed: council/BackendArchitect] | +| B2 | 验证 ticket_detail.html submit() 的 params 构造是否符合规范 | [Claimed: council/BackendArchitect] | +| B3 | ShopXO spec 加载标准端点调研(GoodsSpecDetail 等) | [Claimed: council/BackendArchitect] | +| B4 | 在 ticket_detail.html 中优雅加载规格/库存的方案设计 | [Claimed: council/BackendArchitect] | +| B5 | 整合 BackendArchitect findings → `reviews/BackendArchitect-on-phase2.md` | Pending | -## BackendArchitect 调研任务(B1-B3) +### FrontendDev -- [ ] [Claimed: council/BackendArchitect] **Task B1**: Q2 核心调研 — ShopXO 标准订单模型是否支持单订单多 SKU - - 分析 `sxo_order_detail` 表结构(goods_id + spec_ids 组合) - - 分析 `OrderService.php` / `Order.php` 中的下单入口参数 - - 分析 vr_ticket 插件是否自定义了订单创建逻辑 - - 验证多 SKU 下单的触发条件(购物车 vs 直接购买) -- [ ] [Claimed: council/BackendArchitect] **Task B2**: Q2 最小改动方案设计 - - 如果不支持:在现有 vr_ticket 插件中如何扩展 OrderService - - 如果支持:直接使用还是需要配置开关 -- [ ] [Claimed: council/BackendArchitect] **Task B3**: 整合输出 → `docs/council-research-output.md` 中的 Q2 章节 +| Task | 内容 | 状态 | +|------|------|------| +| F1 | 修复 .vr-stage 缩放问题方案 | [To Claim: council/FrontendDev] | +| F2 | submit() 多座位串行提交逻辑优化分析 | [To Claim: council/FrontendDev] | +| F3 | goods_spec_data 与前端价格联动方案 | [To Claim: council/FrontendDev] | +| F4 | 商品图片/详情内容加载现状评估 | [To Claim: council/FrontendDev] | ---- +### FirstPrinciples -## 调研结论模板(每人填写) - -``` -## QX 结论 - -### 核心答案 -(一句话结论) - -### 证据来源 -- 文件/行号/官方文档 - -### 最小可行方案 -(什么可以先跑起来) - -### 理想方案 -(完整实现路径) - -### 最大风险点 -(识别 1-2 个) - -### 优先级与依赖 -(Q2 是 Q4 的前提 → Q1 结论影响 Q3...) -``` +| Task | 内容 | 状态 | +|------|------|------| +| P1 | 多座位提交 API 设计正交性分析 | [To Claim: council/FirstPrinciples] | +| P2 | spec_base_id_map 设计复杂度评审 | [To Claim: council/FirstPrinciples] | +| P3 | 票务场景是否需要走购物车流程?关键问题识别 | [To Claim: council/FirstPrinciples] | --- ## 阶段划分 -| 阶段 | 内容 | 责任人 | -|------|------|--------| -| Round 1(当前) | 各自调研,形成初步结论 | All | -| Round 2 | 合并到 `docs/council-research-output.md`,交叉 Review | All | -| Round 3 | 收敛共识,FirstPrinciples 拍板未决项 | FirstPrinciples | +| Round | 内容 | 产出 | +|-------|------|------| +| Round 1(当前) | 各自调研,BackendArchitect 读关键代码 | plan.md 更新 + 各自 findings 文件 | +| Round 2 | 合并 findings,交叉 Review | `reviews/council-phase2-assessment.md` 草稿 | +| Round 3 | 收敛共识,形成修复方案建议 | 完整 assessment 文档 + 可执行 todo | +| Round 4 | 最终 review + 投票 | `[CONSENSUS: YES]` | --- -## 已知关键文件(BackendArchitect 参考) +## BackendArchitect 调研计划 -| 文件 | 用途 | -|------|------| -| `shopxo/app/plugins/vr_ticket/` | vr_ticket 插件全部代码 | -| `shopxo/app/service/GoodsService.php` | 商品规格解析 | -| `shopxo/app/service/OrderService.php` | 订单创建入口(关键) | -| `shopxo/app/model/Order.php` | 订单模型 | -| `shopxo/app/model/Goods.php` | 商品模型 | -| `shopxo/app/plugins/vr_ticket/view/goods/ticket_detail.html` | 当前前端模板 | -| `docs/02_FRONTEND_CUSTOMIZATION.md` | 已有前端调研存档 | -| `docs/12_UNIAPP_FRONTEND_RESEARCH.md` | uni-app 调研存档 | -| `docs/14_TEMPLATE_RENDER_INVESTIGATION.md` | 模板渲染调查 | +**关键文件列表**(按优先级): + +1. `shopxo/app/service/GoodsCartService.php` — Save() 方法签名 + 参数契约 +2. `shopxo/app/service/GoodsService.php` — GoodsSpecDetail() 规格加载 +3. `shopxo/app/plugins/vr_ticket/view/goods/ticket_detail.html` — submit() 函数 +4. `shopxo/app/plugins/vr_ticket/service/SeatSkuService.php` — GetGoodsViewData() +5. `docs/VR_GOODS_CONFIG_SPEC.md` — v3.0 配置格式 +6. `docs/PHASE2_PLAN.md` — Phase 2 计划文档 + +**调研目标**: +- B1: 找到 GoodsCartService::Save 的参数期望(goods_id, spec_base_id, stock 等字段) +- B2: 对比 ticket_detail.html submit() 当前构造的 params +- B3: 找到 ShopXO spec 数据加载的入口(是否有 API endpoint 可被前端直接调用?) +- B4: 设计 ticket_detail.html 中加载真实库存的最小方案 --- ## 输出目标 -文件:`docs/council-research-output.md` -内容:Q1-Q4 各自结论 + 优先级矩阵 + 最小可行 vs 理想方案对比 + 风险点 +- BackendArchitect findings: `reviews/BackendArchitect-on-phase2.md` +- 最终合并文档: `reviews/council-phase2-assessment.md` +- 每个问题的根因分析 + 前后端修复方案 + API 设计建议 + 第一性原则关键提醒