council(round2): BackendArchitect - Update plan.md: Q2 Done, Round 2 findings
- Q2 marked as Done: plugins_view_admin_goods_save is injection not replacement - Save() accepts standard POST; hook injection + JSON editor recommended - Added BackendArchitect Round 2 findings section - Final report blocked on FrontendDev Q1 completion Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>refactor/vr-ticket-20260416
parent
f55ba36e7b
commit
58fc579822
26
plan.md
26
plan.md
|
|
@ -1,6 +1,6 @@
|
||||||
# vr-shopxo-plugin 编辑器方案调研 — plan.md
|
# vr-shopxo-plugin 编辑器方案调研 — plan.md
|
||||||
|
|
||||||
> 版本:v1.0(Round 1 初稿)| 日期:2026-04-15 | Agent:council/FrontendDev
|
> 版本:v1.1(Round 2 更新)| 日期:2026-04-15 | Agent:council/FrontendDev + BackendArchitect
|
||||||
> 背景:ShopXO 票务插件后台编辑器设计方案调研(Q1 JSON 编辑器复杂度评估 + ShopXO DIY 组件参考)
|
> 背景:ShopXO 票务插件后台编辑器设计方案调研(Q1 JSON 编辑器复杂度评估 + ShopXO DIY 组件参考)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -42,8 +42,9 @@ venue(name/address/image)
|
||||||
- [ ] **Q1.1**: 调研 ShopXO 后台是否有现成 JSON 编辑器组件(ShopXO DIY 组件) `[Claimed: FrontendDev]`
|
- [ ] **Q1.1**: 调研 ShopXO 后台是否有现成 JSON 编辑器组件(ShopXO DIY 组件) `[Claimed: FrontendDev]`
|
||||||
- [ ] **Q1.2**: 评估 4 层嵌套 Vue3 + JSON Schema form 编辑器复杂度(代码量/工时) `[Claimed: FrontendDev]`
|
- [ ] **Q1.2**: 评估 4 层嵌套 Vue3 + JSON Schema form 编辑器复杂度(代码量/工时) `[Claimed: FrontendDev]`
|
||||||
- [ ] **Q1.3**: JSON 编辑器 vs 拆表方案开发和维护成本对比 `[Claimed: FrontendDev]`
|
- [ ] **Q1.3**: JSON 编辑器 vs 拆表方案开发和维护成本对比 `[Claimed: FrontendDev]`
|
||||||
- [ ] **Q2**: 商品发布页替换方案可行性(BackendArchitect 并行调研) `[Claimed: BackendArchitect]`
|
- [x] **Q2**: 商品发布页替换方案可行性(BackendArchitect 并行调研) `[Done: BackendArchitect]` ✅
|
||||||
- [ ] **Final**: 输出 `council-output/EDITOR_RESEARCH.md` 并给出明确推荐 `[Claimed: FrontendDev]`
|
- **结论**:钩子仅注入非替换;Save()支持标准POST;推荐钩子注入+JSON编辑器
|
||||||
|
- [ ] **Final**: 输出 `council-output/EDITOR_RESEARCH.md` 并给出明确推荐 `[Pending: FrontendDev]` — 等 Q1 完成
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -82,12 +83,25 @@ venue(name/address/image)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Claim 状态
|
## BackendArchitect Round 2 深入分析(Q2)
|
||||||
|
|
||||||
|
详细分析见 `council-output/EDITOR_RESEARCH.md`(Q2 部分)。
|
||||||
|
|
||||||
|
**核心结论**:
|
||||||
|
1. `plugins_view_admin_goods_save` 在 `SaveInfo()` 中位于模板渲染**之前**被调用,结果注入 `$assign['plugins_view_admin_goods_save_data']`
|
||||||
|
2. 钩子仅是**注入点**,不是**替换点**——注入位置在 base tab 的 `<div class="am-form-group">` 内,form/tabs/核心字段无法被替换
|
||||||
|
3. 完全替换需覆盖核心 `saveinfo.html`,失去 ShopXO 升级兼容性
|
||||||
|
4. `Goods::Save()` 数据源是标准 `$_POST`(`$this->data_request`),任何自定义表单都能提交
|
||||||
|
5. `plugins_service_goods_save_handle` 钩子以引用接收 `$data`,插件可修改或阻止保存流程
|
||||||
|
|
||||||
|
**推荐**:钩子注入(注入 ticket 专属表单 + JSON Schema 编辑器)+ 两条数据保存路径(填最小字段走标准流,或自行处理返回)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
| 任务 | 状态 |
|
| 任务 | 状态 |
|
||||||
|------|------|
|
|------|------|
|
||||||
| Q1.1 | [Claimed: FrontendDev] |
|
| Q1.1 | [Claimed: FrontendDev] |
|
||||||
| Q1.2 | [Claimed: FrontendDev] |
|
| Q1.2 | [Claimed: FrontendDev] |
|
||||||
| Q1.3 | [Claimed: FrontendDev] |
|
| Q1.3 | [Claimed: FrontendDev] |
|
||||||
| Q2 | [Claimed: BackendArchitect] |
|
| Q2 | [Done: BackendArchitect] — 注入点非替换点,Save()标准POST |
|
||||||
| Final Output | [Pending: FrontendDev] |
|
| Final Output | [Pending: FrontendDev] — 等 Q1 完成 |
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue