From 8b5d2b35f86fd230467b3a85493f972752ce1cb3 Mon Sep 17 00:00:00 2001 From: Codex Date: Sun, 13 Sep 2026 19:54:31 +0800 Subject: [PATCH] docs: define reference-driven dual-client UI redesign --- ...e-driven-dual-client-ui-redesign-design.md | 356 ++++++++++++++++++ 1 file changed, 356 insertions(+) create mode 100644 docs/superpowers/specs/2026-09-13-reference-driven-dual-client-ui-redesign-design.md diff --git a/docs/superpowers/specs/2026-09-13-reference-driven-dual-client-ui-redesign-design.md b/docs/superpowers/specs/2026-09-13-reference-driven-dual-client-ui-redesign-design.md new file mode 100644 index 0000000..6eeb902 --- /dev/null +++ b/docs/superpowers/specs/2026-09-13-reference-driven-dual-client-ui-redesign-design.md @@ -0,0 +1,356 @@ +# 善缘丹阳 V1.1 双端参考图驱动 UI 重设计规格 + +日期:2026-09-13 + +状态:待用户书面复核 + +适用范围:管理端全局框架与工作台;小程序首批 11 个核心页面;旧 UI 代码与冲突文档治理 + +## 1. 目标 + +以用户确认的两张参考图为唯一视觉基准,在不改变现有业务接口、权限边界和核心业务不变量的前提下: + +1. 安全清理管理端和小程序端冗余、无用、废弃的旧 UI 代码; +2. 清理或修订与本规格冲突的设计、规范、计划、进度和验收文档; +3. 第一批严格重构管理端全局框架与工作台; +4. 第一批严格重构小程序 11 个核心页面; +5. 建立后续页面必须复用的单一设计基线和视觉验收门禁。 + +## 2. 唯一视觉来源与优先级 + +### 2.1 参考图 + +- 管理端:`ChatGPT Image 2026年9月11日 10_34_34 (1).png` +- 小程序端:`ChatGPT Image 2026年9月11日 12_46_40.png` + +参考图决定色彩关系、布局层级、卡片形态、信息密度、图片风格、图标语言和整体氛围。 + +### 2.2 冲突裁决 + +后续 UI 开发按以下顺序裁决: + +1. 用户最新明确指令; +2. 本规格及上述两张参考图; +3. `AGENTS.md` 中仍有效的产品红线、权限规则和业务不变量; +4. 页面功能、API、数据库和业务流程文档中的非视觉契约; +5. 当前代码行为。 + +任何旧文档中的暖白小程序首页、浅色管理侧栏、通用 Element Plus 后台、旧 Phase 07 视觉验收结论、全量 63/64 页一次性重构要求,均不得覆盖本规格。 + +## 3. 已确认范围 + +### 3.1 管理端第一批 + +- 页面外层公益主题背景; +- 中央大圆角管理系统容器; +- 深灰蓝侧栏与权限菜单; +- 顶部搜索、通知和管理员区域; +- 工作台欢迎区; +- 六项指标卡; +- 今日待办事项; +- 近期公益活动; +- 服务数据概览; +- 项目服务成效; +- `1366×768` 与 `1920×1080` 响应式适配。 + +管理端其他业务页面本批次不进行逐页高保真重构,但必须继续在新框架中可用,且不得破坏路由、权限和操作流程。 + +### 3.2 小程序第一批 + +1. 首页; +2. 找对象; +3. 消息; +4. 公益活动; +5. 我的; +6. 公益红娘; +7. 婚恋咨询; +8. 婚前辅导; +9. 婚恋课堂; +10. 婚恋反诈; +11. 善缘服务站。 + +其余页面不在第一批逐屏重构范围内,只处理会阻塞编译、路由或公共主题迁移的问题。 + +### 3.3 首页入口裁决 + +参考图首页展示 4 个快捷入口,但正式业务要求 8 个固定入口。用户已确认采用两行四列,并保持以下顺序: + +第一行:找对象、公益红娘、公益活动、婚恋咨询。 + +第二行:婚恋课堂、婚前辅导、婚恋反诈、善缘服务站。 + +## 4. 非目标 + +- 不重写后端、数据库或 API; +- 不改变现有角色、权限与 DataScope; +- 不迁移 Vue 3、Element Plus 或微信原生小程序技术栈; +- 不在第一批重构管理端所有业务页面; +- 不在第一批重构小程序其余约 53 个页面; +- 不增加付费、会员、外链 Banner 或参考图之外的新业务; +- 不用虚构数据冒充接口成功; +- 不以整目录覆盖、强制回滚或无引用证据的批量删除完成清理。 + +## 5. 核心业务不变量 + +视觉重构不得改变以下行为: + +- 用户永久免费; +- Required 条件不可自动放宽; +- Mutual Match 后才能聊天; +- Block 双向优先于推荐、搜索、互动与聊天; +- 红娘只能辅助推荐,不能替用户 Like; +- 活动单向意向保密; +- 活动互选必须经过双方分别确认后才能创建或复用 Match; +- Counselor 只能访问 Assigned Service; +- Content Editor 不得访问用户婚恋数据; +- Service Station Operator 不得浏览全用户库; +- 用户端入口由服务端 Capability 决定; +- 敏感数据权限和审计逻辑保持不变。 + +## 6. 旧代码清理设计 + +### 6.1 清理分类 + +所有候选文件必须进入以下一种状态: + +- `KEEP`:仍被运行时、构建、路由或业务流程使用; +- `REFACTOR`:仍有效,但需迁入新设计系统; +- `DELETE`:能够证明无引用、已被替代或属于失败视觉实现; +- `REVIEW`:证据不足,暂不删除。 + +### 6.2 清理顺序 + +1. 建立路由、页面、组件、样式、素材和脚本引用图; +2. 处理同名 `.ts/.js` 页面漂移,确认 TypeScript 是唯一手写源; +3. 删除无路由、无配置、无 import 或无模板引用的页面与组件; +4. 删除被新设计系统完全替代的局部样式和主题变量; +5. 删除无引用图片、图标、字体、截图和临时预览产物; +6. 每一批删除后立即执行对应静态检查、构建和页面启动验证。 + +### 6.3 删除门禁 + +删除必须同时满足: + +- 已完成全文引用、路由配置、组件注册和构建入口检查; +- 替代实现覆盖原有有效行为; +- 删除后构建与核心页面检查不退化; +- Git 能单独展示删除范围并可恢复; +- 不包含用户未授权清理的后端业务、数据库迁移或运维数据。 + +## 7. 文档治理与防偏航设计 + +### 7.1 单一事实源 + +完成文档治理后: + +- `AGENTS.md` 必须将本规格列为唯一有效 UI 视觉基线; +- `docs/STATUS.md` 只记录当前可验证状态; +- `docs/JIRA_BACKLOG.md` 的 UI 任务状态与本轮实际验收一致; +- 后续实现计划只能引用本规格,不能引用旧 UI 计划; +- 文档中的“已完成”不能替代构建、截图和人工视觉验收。 + +### 7.2 直接删除的冲突文档 + +以下文件属于已被本规格替代的旧 UI 方向或执行计划,实施清理时直接删除,由 Git 历史保留追溯能力: + +- `docs/superpowers/specs/2026-09-10-ui-v11-fidelity-design.md` +- `docs/superpowers/specs/2026-09-11-codex-baseline-cleanup-design.md` +- `docs/superpowers/specs/2026-09-11-dual-client-full-ui-redesign-design.md` +- `docs/superpowers/plans/2026-09-10-ui-v11-fidelity.md` +- `docs/superpowers/plans/2026-09-11-codex-baseline-cleanup.md` +- `docs/superpowers/plans/2026-09-11-admin-full-ui-redesign.md` +- `docs/superpowers/plans/2026-09-11-miniapp-full-ui-redesign.md` +- `docs/superpowers/plans/2026-09-11-ui-foundation-and-pilot.md` +- `docs/UI-V11-Visual-Acceptance-2026-09-10.md` +- 根目录 `design-qa.md` + +旧 Phase 07 对比截图和被否决的验收产物同步删除,不能继续作为视觉正确性的证据: + +- `artifacts/phase07-miniapp-home.png` +- `artifacts/phase07-miniapp-discover.png` +- `artifacts/phase07-home-comparison.png` +- `artifacts/phase07-discover-comparison.png` + +### 7.3 修订而非删除的文档 + +以下文件包含仍有效的业务或审计信息,必须修订,不能简单删除: + +- `AGENTS.md`:替换旧 UI 文档入口,写入本规格优先级和首批范围; +- `docs/STATUS.md`:将旧 Phase 07 视觉结果改为“已否决,待重新实现”; +- `docs/JIRA_BACKLOG.md`:重新打开对应 UI 任务,并拆分管理端第一批与小程序 11 页; +- `docs/Phase-07-V11-Recovery-Completion-Report-2026-09-13.md`:保留业务测试证据,但明确视觉验收结论已失效; +- `docs/UI_REDESIGN_PAGE_MATRIX_V1.1.md`:缩减为当前第一批范围,其他页面标为后续批次; +- `docs/善缘丹阳 V1.1 客户需求基线增量开发与修复计划.md`:更新 UI 阶段入口,不保留“旧 Phase 07 视觉已完成”的表述; +- `docs/善缘丹阳 V1.1 当前进度校正与严格Phase修复计划.md`:同步当前暂停点与新 UI 重构门禁。 + +### 7.4 旧高保真规范处理 + +`docs/善缘丹阳 V1.1 前端 UI-UX 高保真原型修订说明.md` 含有大量旧视觉处方,继续保留为活动规范会造成偏航。执行时必须: + +1. 将仍有效的业务状态、权限、页面流程和可访问性要求迁移到对应业务文档或本规格; +2. 完成迁移核对后删除该旧高保真文件; +3. 在 `AGENTS.md` 中移除对它的正式基线引用; +4. 不创建带同等权威但内容重复的新旧双份规范。 + +其他需求、API、数据库、安全和运维文档只清理与本轮视觉结论直接冲突的段落,不得因 UI 重构删除有效业务契约。 + +### 7.5 文档验收门禁 + +- `rg` 搜索旧规格文件名时,只允许在删除记录或新规格的治理清单中出现; +- 有效文档不得再把旧 Phase 07 截图标记为 passed; +- 有效 UI 计划不得再要求一次性改造全部 63/64 页; +- `AGENTS.md`、`STATUS.md`、`JIRA_BACKLOG.md` 与本规格的范围、优先级和状态一致; +- 所有活动 Markdown 文件必须为 UTF-8 且中文可正常读取。 + +## 8. 管理端设计 + +### 8.1 视觉语言 + +- 外层为浅粉公益主题背景,包含低对比丹阳城市、塔、桥、爱心和人物剪影; +- 主系统为居中的暖白大圆角容器; +- 侧栏使用深灰蓝,当前菜单使用珊瑚红渐变或同色高亮; +- 内容卡片使用暖白底、细边框、柔和阴影和统一圆角; +- KPI 状态色使用低饱和粉、橙、蓝、绿、紫; +- 字体使用本地系统中文字体栈,不依赖境外字体或运行时 CDN。 + +### 8.2 信息架构 + +侧栏按参考图保持一层清晰入口,并继续由权限控制可见性:工作台、用户管理、资料审核、匹配管理、公益红娘、公益咨询、活动管理、内容管理、善缘服务站、举报风控、数据统计、组织人员、系统设置。 + +同一业务域存在多个现有路由时,可在进入模块后使用页面内标签或二级导航承载,不删除功能。 + +### 8.3 工作台 + +工作台必须呈现:欢迎信息、六项核心指标、今日待办、近期公益活动、服务数据概览和项目服务成效。所有数字来自现有 API;无数据时显示正式空状态,不使用参考图中的演示数字。 + +### 8.4 响应式 + +- `1920×1080`:完整展示背景氛围与工作台两列布局; +- `1366×768`:保证侧栏、六项指标和首屏核心待办可读; +- 窄于管理端支持宽度时允许侧栏收起和内容纵向重排,不采用整体缩放。 + +## 9. 小程序设计 + +### 9.1 全局视觉 + +- 深靛蓝与紫色夜景作为顶部和品牌氛围; +- 珊瑚粉用于主操作、当前 Tab、未读和重点提示; +- 内容区使用白色或浅色卡片,正文保持高对比; +- 图片、Logo、头像、活动封面和服务站封面使用正式本地资源或真实业务数据; +- 不使用 Emoji、字符图标、CSS 拼图或临时占位图冒充正式资产; +- 适配微信胶囊按钮、状态栏和底部安全区。 + +### 9.2 底部导航 + +固定为:首页、找对象、消息、活动、我的。五项均提供统一的普通态和选中态图标,不改变现有 Tab 路由语义。 + +### 9.3 十一个页面 + +- 首页:品牌状态、夜景 Banner、8 入口、今日推荐、公益服务、近期活动、服务站、课堂和安全提醒; +- 找对象:顶部搜索与筛选、人物卡片、认证和兴趣信息、真实推荐状态; +- 消息:新朋友、互动喜欢、我的关注、系统通知和会话列表; +- 公益活动:分类、日历、活动大图卡、人数和报名状态; +- 我的:个人摘要、统计、公益身份卡、红娘/咨询/活动/预约/设置入口; +- 公益红娘:公益服务说明、申请、进度、红娘与服务记录; +- 婚恋咨询:分类、预约、服务说明、预约记录与授权状态; +- 婚前辅导:沟通、责任、财务、冲突等主题与预约状态; +- 婚恋课堂:分类、内容列表、封面、发布时间与加载状态; +- 婚恋反诈:风险类型、安全提醒、举报与求助入口; +- 善缘服务站:站点封面、地址、电话、开放时间、服务项目、定位与预约。 + +## 10. 状态、数据与错误处理 + +所有页面必须使用真实接口或现有开发态数据适配层,并具备: + +- 加载与骨架状态; +- 空数据状态; +- 网络失败与重试; +- 未登录引导; +- 无权限与 Capability 禁用原因; +- 提交中、成功和失败反馈; +- Block、Unmatch、审核中、服务不可用等业务状态。 + +视觉层只消费后端权限和关系事实,不在前端自行推导或修改事实。 + +## 11. 实施阶段与门禁 + +### Stage 0:可恢复基线 + +记录 Git 状态,运行双端现有检查,建立代码和文档引用清单。 + +门禁:基线报告完整,用户改动与本轮候选清理项可区分。 + +### Stage 1:旧代码与冲突文档清理 + +按第 6、7 章执行,先列清单,再分批删除或修订。 + +门禁:构建不退化;有效文档只剩一个视觉事实源;输出清理报告后暂停等待用户确认。 + +### Stage 2:双端设计基础 + +建立管理端与小程序端 Token、基础组件、图标与正式素材。 + +门禁:组件状态齐全,无境外运行时依赖,用户确认视觉样板。 + +### Stage 3:管理端第一批 + +依次实现全局框架、侧栏、顶部栏和工作台。 + +门禁:两种目标分辨率截图通过人工验收,权限和路由回归通过。 + +### Stage 4:小程序公共框架 + +实现全局主题、五项 Tab、安全区、公共卡片和状态组件。 + +门禁:五项 Tab 可达,八个入口顺序与 Capability 行为正确。 + +### Stage 5:小程序 11 页 + +- A 组:首页、找对象、消息、活动、我的; +- B 组:公益红娘、婚恋咨询、婚前辅导; +- C 组:婚恋课堂、婚恋反诈、善缘服务站。 + +每组完成真实数据映射、状态处理、交互检查、截图对比和回归测试,验收后再进入下一组。 + +### Stage 6:最终验收 + +完成双端截图矩阵、功能回归、静态检查、构建和受影响后端测试。 + +门禁:无旧主题混用、无无响应入口、无业务不变量回归,并输出剩余差异说明。 + +## 12. 测试与验收 + +### 12.1 管理端 + +- TypeScript 类型检查; +- Vite 生产构建; +- 路由与权限菜单检查; +- 搜索、通知、管理员菜单和退出登录检查; +- `1366×768`、`1920×1080` 实际页面截图; +- 工作台与参考图并排视觉检查。 + +### 12.2 小程序 + +- 项目现有 TypeScript 和静态契约检查; +- 微信开发者工具编译; +- 五项 Tab、八入口和 11 页主要操作检查; +- 常见设备宽度和安全区截图; +- 未登录、空数据、网络失败、无权限、Block 等状态检查; +- 每个页面与参考图对应区域并排视觉检查。 + +### 12.3 后端 + +执行受影响的首页聚合、权限、推荐、关系、消息、活动、咨询和服务站测试。Docker 仅用于联调,不删除或重建现有数据库卷。 + +## 13. 完成定义 + +只有同时满足以下条件,第一批重设计才完成: + +1. 管理端框架与工作台达到参考图的视觉语言和信息密度; +2. 小程序 11 页达到参考图的统一紫蓝粉视觉语言; +3. 首页保留固定 8 入口与正式模块顺序; +4. 当前代码和有效文档中不存在会把开发引回旧视觉的入口; +5. 所有主要入口有真实交互反馈; +6. 业务不变量和权限边界无回归; +7. 双端构建、检查和受影响测试通过; +8. 用户完成最终截图验收。