rebuild(stage-4): deliver shared shell and account interfaces

This commit is contained in:
leefer
2026-07-30 02:08:20 +08:00
parent d1c658d8ef
commit 3b75bf2d63
47 changed files with 3042 additions and 99 deletions
+78
View File
@@ -0,0 +1,78 @@
# 阶段4验收记录
## 范围
本阶段只验收全局前端基础和阶段3已有业务的前端交互:认证、16项工作区注册表、PC/移动Shell、主题、日期、统一API、统一弹窗与Toast、账户菜单、会员状态、系统凭据、模型池和会员管理。
行情摘要真实数据、全局搜索结果、后台刷新任务和16个工作区的业务内容分别属于阶段5及后续阶段。本阶段只提供稳定入口和明确空态,不将这些页面报告为已迁移。
## 设计规范第12节自检
### 表格
- 会员管理表按内容类型分配列宽;每日上限为右对齐等宽数字。
- 单位写在“每日上限(次)”表头,空到期时间保持为空。
- 每日上限表头可排序,并显示当前升降方向。
- 本阶段没有行情图表;图例规则留到实际图表切片验收,未用占位图假装完成。
### 间距
- Playwright实测PC内容区上内边距14px、左右内边距16px。
- 侧栏200px、顶栏46px、摘要条收起36px、状态栏30px均来自唯一令牌。
- 16个工作区共用同一Shell和动态路由,不存在页面专属骨架副本。
### 字体
- 页面标题17px/800、卡片标题14px/700、正文13px、辅助文字11至12px。
- 数字使用`tabular-nums`;未使用随视口连续缩放字号或负字距。
### 布局
- Shell与页面内容分离;4K内容限制最大可读宽度,没有将卡片和字体放大两倍。
- 1023px及以下进入独立移动Shell,底部保留“行情、选股、问师、问天、复盘”五个入口。
- 1920×1080、3840×2160和390×844实测无页面横向溢出。
### 细节
- 顶栏日期固定为`YYYY-MM-DD`,不使用会按Windows区域设置显示斜杠的原生日期外观。
- 市场数据未接入时保留空值和原因,不展示模拟数字或满屏`--`
- 状态栏固定于视口底部;短页面不会把风险提示上移。
- 日间/夜间在Vue挂载前选择主题,弹窗、表单、表格和空态均使用语义令牌。
- 弹窗位于视口中心,支持Escape、遮罩关闭、焦点循环和焦点回收;成功反馈只使用自适应Toast。
## 权限与交互
- 真实注册/登录通过;首个账号显示管理员,普通用户不显示后台刷新和系统管理。
- 管理员兼会员时前端可同时显示两个标识;管理员未开会员时仍显示真实“普通用户”会员状态。
- 账户菜单严格包含个人资料、会员状态、修改密码、切换账号、退出五项。
- 浏览器实际保存并重读个人出生资料;会员状态显示开通状态、到期、剩余时长、今日用量、今日剩余和暂不可用加油包。
- 普通用户访问智能选股、问师和问天时保留相同页面结构,顶部提示会员限制,内容不可操作。
- 非管理员直接访问`/system`会被前端送回情绪周期,所有管理API仍由后端独立拒绝。
## 减法证据
- 16项工作区只在`workspaceRegistry.ts`登记一次,路由和两种导航共同读取。
- 浏览器请求只经`shared/api/client.ts`CSRF由该出口统一附加。
- 全站只存在一个主题Store、一个当前会话Store、一个弹窗Host和一个Toast Host。
- CSS按令牌、基础、组件、Shell、账户、系统和移动端职责拆分;最长CSS为332行,未复制原型整份样式或增加覆盖补丁层。
- 组件CSS未出现令牌文件之外的色值;`1023px`仅作为CSS媒体查询不可变量化的语法边界。
## 自动验证
- Ruff:通过。
- pytest40项通过。
- Vue类型检查:通过。
- Vitest2个文件、5项通过。
- Vite生产构建:通过。
- Playwright:2项通过,覆盖管理员与普通用户、账户真实写入、三类系统管理、Ctrl+K、主题持久化、弹窗居中、桌面/4K/移动视口、HTTP失败和控制台错误审计。
## 截图
- [日间Shell 1920×1080](shell-light-1920x1080.jpg)
- [夜间Shell 1920×1080](shell-dark-1920x1080.jpg)
- [夜间系统管理 3840×2160](system-dark-3840x2160.jpg)
- [夜间移动Shell 390×844](shell-dark-390x844.jpg)
## 后续入口
阶段5建立唯一数据网关、交易日期真相、行情快照、搜索和图表基础后,替换当前市场摘要与工作区空态。移动端逐页业务信息重组仍在阶段13完成,不把本阶段的移动Shell当作全部移动页面验收。
Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB