From b9f3414e3cc678432319faec43c59f67ee644cf9 Mon Sep 17 00:00:00 2001 From: Council Date: Wed, 15 Apr 2026 13:53:48 +0800 Subject: [PATCH] council(draft): FrontendDev - create plan.md with Phase 2 research directions Co-Authored-By: Claude Sonnet 4.6 --- plan.md | 134 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 plan.md diff --git a/plan.md b/plan.md new file mode 100644 index 0000000..a87b1f8 --- /dev/null +++ b/plan.md @@ -0,0 +1,134 @@ +# vr-shopxo-plugin Phase 2 后台管理 — 实施计划 + +> 版本:v1.0 | 制定日期:2026-04-15 | Agent:council/FrontendDev + +--- + +## 目标概述 + +Phase 2 后台管理页面开发,涵盖: +1. 座位模板管理(CRUD) +2. 电子票列表 / 详情 / 导出 +3. 核销员管理(增删改查) +4. 核销记录查询 +5. Admin 控制器鉴权(P1 安全问题) + +--- + +## 阶段划分 + +| Phase | 任务 | 状态 | +|---|---|---| +| **Phase 1** | 研究方向讨论(各 Agent 输出 Research Direction List) | [In Progress] | +| **Phase 2** | 资料收集 + 技术验证 | [Pending] | +| **Phase 3** | 后台 API 设计 + 权限模型 | [Pending] | +| **Phase 4** | Admin 控制器实现 | [Pending] | +| **Phase 5** | 后台视图层(HTML)实现 | [Pending] | +| **Phase 6** | 核验与安全加固 | [Pending] | + +--- + +## 任务清单 + +### 座位模板管理 +- [ ] 座位模板列表页(seat_template_list.html) +- [ ] 座位模板新增/编辑页(seat_template_save.html) +- [ ] 座位图可视化编辑器集成 +- [ ] 分类绑定功能 + +### 电子票管理 +- [ ] 电子票列表页(ticket_list.html) +- [ ] 票详情页(ticket_detail.html) +- [ ] 批量导出功能(CSV/Excel) +- [ ] 票状态筛选(未核销/已核销/已退款) + +### 核销员管理 +- [ ] 核销员列表页 +- [ ] 核销员新增/编辑/删除 +- [ ] 核销员绑定店铺/场次 + +### 核销记录 +- [ ] 核销记录列表页 +- [ ] 多条件查询(时间/核销员/场次) +- [ ] 核销统计看板 + +### Admin 鉴权(P1 安全) +- [ ] 所有 Admin 控制器继承 Base controller +- [ ] 鉴权中间件验证 +- [ ] 敏感操作日志审计 + +--- + +## Research Direction List(FrontendDev 输出) + +### FR-1: ShopXO Admin UI 框架选型 +**背景**:ShopXO 后台使用 Layui,需确认是否继续使用还是迁移 Vue。 + +Key Questions: +- ShopXO 官方后台(v6.8.0)使用的是什么 UI 版本? +- Layui 是否支持 Vue 3?如果不支持,混用 Vue + Layui 是否会导致冲突? +- 票务插件是否应保持与 ShopXO 原生风格一致,还是可以独立升级? +- 是否有 ShopXO 插件使用 Vue 3 的先例? + +### FR-2: 现有 ShopXO Admin 页面风格适配 +**背景**:保持与 ShopXO 原生后台风格一致可降低学习成本。 + +Key Questions: +- ShopXO 后台使用的是什么设计系统(颜色/字体/间距规范)? +- 表格组件(数据列表)用的是 Layui table 还是自建? +- 分页、筛选、搜索的通用组件封装在哪里? +- 弹窗/表单布局的规范是什么? + +### FR-3: 座位图编辑器集成方案 +**背景**:座位模板需要可视化编辑,复杂度高。 + +Key Questions: +- 是否有开源的 Vue 座位图编辑器可以集成? +- Canvas vs SVG vs CSS Grid,哪个方案最适合票务座位图? +- 座位图编辑后如何序列化存储到 seat_map JSON? +- 编辑器是否需要支持拖拽、分区着色、座位类型标注? + +### FR-4: 数据导出方案(CSV/Excel) +**背景**:电子票列表需要支持批量导出。 + +Key Questions: +- ShopXO 后台是否有现成的导出组件? +- 大量数据(10000+ 条)导出的处理策略是什么(流式导出 vs 后台队列)? +- 是否需要支持 Excel 格式(.xlsx)还是只需 CSV? +- 导出字段如何与 vr_tickets 表字段对应? + +### FR-5: 响应式与权限控制 +**背景**:后台页面需要同时支持不同屏幕和权限级别。 + +Key Questions: +- ShopXO 后台的权限体系是如何设计的(RBAC?按钮级?字段级?)? +- 票务管理员是否需要独立的角色?与 ShopXO 管理员如何隔离? +- 后台页面是否需要支持移动端(PAD 核销场景)? +- 操作日志记录哪些字段(用户/时间/操作/IP/变更前后)? + +--- + +## 依赖关系 + +- FR-1、FR-2 优先完成,决定技术栈选型 +- FR-3 依赖 FR-1 的选型结论 +- FR-4 可在 Phase 3 后端 API 确定后并行进行 +- FR-5 与 SecurityEngineer 协同,需要等 BackendArchitect 输出权限模型 + +--- + +## 进度追踪 + +| 任务 | 负责人 | 状态 | +|---|---|---| +| 座位模板管理 | [Pending] | - | +| 电子票管理 | [Pending] | - | +| 核销员管理 | [Pending] | - | +| 核销记录 | [Pending] | - | +| Admin 鉴权 | [Pending] | - | + +--- + +## 共识投票 + +[CONSENSUS: NO] — 本轮仅完成研究讨论,实际执行待后续阶段