Commit Graph

11 Commits

Author SHA1 Message Date
Sisyphus
ee52bed129 fix(F006-W18): 暗主题全面适配 (EP token 补齐 + v1 token 清理 + 业务硬编码色修)
用户反馈: dark 主题下大量页面卡片/表头是白底, 文字看不清, 视觉割裂

根因 (W5.x v2 token 迁移遗漏):
- v1 token (--rr-page-bg / --rr-bg-card / --rr-table-header-bg / --rr-row-hover / --rr-border-color / --rr-text-secondary) 在 themes.scss 完全没定义
- v2 用 --bg-soft / --surface / --surface-2 / --border / --ink-2 / --ink-3, 但大量组件没改 fallback, 永远走 hex fallback (#F1F5F9 / #FFFFFF)
- EP el-table 内部用 getCssVar(color, white) = --el-color-white, 未在 tokens.scss 重定向, dark 下仍是 #FFFFFF
- CSS 变量级联问题: :root 块 var(--surface) 解析时, dark 块的 --surface 重写还没生效

修法 (3 类共 11 文件):
1. EP token 补齐 (themes.scss dark 块 + tokens.scss :root 块):
   - --el-color-white / --el-color-black: #1E293B / #F8FAFC
   - --el-fill-color-blank / --el-fill-color-light: surface / bg-soft
   - --el-table-tr-bg-color / --el-table-bg-color: surface
   - --el-table-expanded-cell-bg-color: surface
   - --el-table-header-bg-color: surface-2 (表头略亮区分)
   - --el-table-row-hover-bg-color: bg-soft

2. v1 token 清理 (4 组件):
   - AppLayout.vue: 13 处 --rr-page-bg → --bg-soft
   - DataTable.vue: --rr-table-header-bg/--rr-text-secondary/--rr-row-hover/--rr-bg-card/--rr-border-color → v2 token
   - SearchBar.vue / ListTabs.vue: 同上

3. 业务页硬编码色 (5 业务页):
   - OpenAppListView.vue: 4 状态 badge + 表格头 #F8FAFC → var(--*-soft)
   - ApplyApiKeyDialog.vue: header #F8FAFC → var(--surface-2)
   - InquiryListView.vue / LogOperationView.vue / LogErrorView.vue: 4 类 badge → var(--amber/brand/green/red-soft)

Playwright 1920 视口 dark 主题实测 (5 个典型页):
- Dashboard: 侧栏 rgb(30,41,59), 主区 rgb(15,23,42), 表格 rgb(30,41,59) ✅
- 用户列表 / 应用列表 / 订单列表 / 询价列表: 全部统一深色 ✅
- 之前: elTableBg rgb(255,255,255) 纯白 → 现在: rgb(30,41,59) 暗 surface
- 文字、badge、按钮、分页器、搜索条全部 dark 适配

不动调色板 (按用户要求 严重问题优先): --border/--ink-2 等保持原值
2026-07-09 17:22:12 +08:00
Sisyphus
d4441c051e fix(F006-W17.8.2): openapi/app 列宽优化 (AppID 缩到 240 + 操作列 160 + 加 2 业务列)
用户反馈: AppID 列右侧留白太多, 操作列窄按钮显示不全

列宽重新调整 (Playwright 1920 视口实测):
- 客户名 minWidth 150 → 150 (内容 14 字符, 实际 215px)
- 应用名称 minWidth 180 → 180 (内容 19 字符, 实际 257px)
- AppID minWidth 200 → width 240 + showOverflowTooltip (硬性不被内容撑大)
- 新增 权限范围列 (scopes, minWidth 160) - 真实业务字段
- 新增 调用次数列 (totalCallCount, width 100) - 真实业务字段
- 状态 width 100 → 90
- 创建时间 width 170
- 最后调用 width 170 (新增列)
- 操作 width 200 → 160 + fixed right + align center

实测列宽 (1920 视口, 表格 1630px 撑满):
- 客户名 215 / 应用名称 257 / AppID 240 / 权限范围 228
- 调用次数 100 / 状态 90 / 创建时间 170 / 最后调用 170 / 操作 160
- 9 列共 1630px, 右边距 29px (项目标准)

操作列按钮完整性:
- 行 0 (已撤销): [详情, 删除] ✅
- 行 1/2 (已激活): [详情, 重发二维码] + ⋯ ✅

新加 2 个真实业务列 (权限范围/调用次数) 充实表格, 避免列过少
2026-07-09 16:06:54 +08:00
Sisyphus
d4cda618b8 fix(F006-W17.8.1): 表格撑满容器 (1920 视口)
用户反馈: 集成管理-应用列表 (openapi/app) 在 1920 视口下右侧大面积留空,
操作列按钮显示不全。参考用户列表 (图二) 已撑满做统一标准。

根因 (W17 早期遗留):
- .rr-openapi-app { max-width: 1400px } 锁死容器宽度
- 适合 1440 视口, 但 1920 视口暴露问题
- 用户列表用 .rr-page { max-width: 100% } 早已不受限

修法 (统一标准):
- openapi/app .rr-openapi-app { max-width: 1400px } → 100%
- DataTable 组件增强: 加 tableRef + lastColMinWidth 状态
  * mounted/resize/data 变化时测量: 容器宽 vs 列总宽
  * 差额自动加到最后一列 minWidth (统一标准: 视口撑满)
  * 即使其他页面 max-width 仍写 1400px, 也能通过 JS 撑满

W17.8 列宽调整 (W17.8 已 commit, 现 +W17.8.1):
- 应用名称 minWidth 180 → 220
- AppID minWidth 220 → 240
- 新增最后调用列 (lastUsedAt, width 170)
- 操作列 width 140 → 160 + align: center + fixed: right

Playwright 1920 视口实测:
- 用户列表 (参考): 1632px 表格 / 28px 右边距 ✅
- 应用列表 (修后): 1630px 表格 / 29px 右边距 ✅ (与参考页一致)

操作列按钮完整性:
- 行 0/2/3 (status=0/1): [详情, 重发二维码] + ⋯ ✅
- 行 1 (status=2): [详情, 删除] (无⋯, 符合规则) ✅
2026-07-09 15:33:42 +08:00
Sisyphus
87e278749b style(F006-W17.7): list 页表头统一居中显示
- DataTable 组件 header-cell-style textAlign: left → center (覆盖大多数 list 页)
- 3 个裸 el-table list 页补 header-cell-style (categoryGood/region/coupon)
- 单元格内容对齐不变 (仍 left), 只动表头
2026-07-09 14:56:31 +08:00
Sisyphus
6d6ff30624 fix(F006-W17.4.2): DataTable 表头全局强制不换行 + 单位列加宽到 90
用户反馈: 单位列"单/位"两字被挤压换行, 强调"以后标题行的规范不能换行"

根因:
1. DataTable header-cell-style 虽设 whiteSpace:"nowrap", 但 el-table 在列宽挤压下
   内部 .cell 容器仍会被 word-break 强制换行 (element-plus 历史 bug)
2. 单位列 width 80 不够, 标题"单位"两字被压

修法:
1. DataTable 加全局 :deep CSS 兜底
   :deep(.el-table__header-wrapper .cell) { white-space: nowrap !important; overflow: visible !important }
   :deep(.el-table th .cell) { word-break: keep-all }
   → 所有 list 页表头统一不换行
2. 单位列 width 80 → 90, minWidth 80 → 90 (保底宽度足够显示"单位"两字)

效果:
- 全局所有用 DataTable 的页面 (User/Order/Inquiry/Finance/Good/Service 等 33 个)
  表头都不换行, 符合规范"标题行不换行"
- 单位列文字"单位"完整在一行
2026-07-07 18:38:19 +08:00
Sisyphus
08cf2067db fix(F006-W17.3.6): pager 字号跟内容行统一 13px + DataTable 默认 limit=10 2026-07-07 16:13:47 +08:00
Sisyphus
f97a0fb049 feat(components): 设计细节优化 (表格圆角/按钮尺寸统一/扁平阴影) W17.2.2 2026-07-07 13:07:22 +08:00
Sisyphus
fe07612f29 feat(components): 按 ui-preview-v2.html 模板 v2 整改 (PageHeader扁平/SearchBar无label/ListTabs pill/Table uppercase左对齐) W17.2.1 2026-07-07 13:02:07 +08:00
Sisyphus
7724b4a3b1 feat(components): 通用组件设计规范整改 (ListTabs/PageHeader白卡/SearchBar chip/DataTable var/Content bg) W17.2 2026-07-07 12:56:11 +08:00
Sisyphus
04d3992c52 feat(F006-W15): 订单售后/退款/支付回调 3 view 接前端 max-effort mock + 同步 DataTable selection 2026-07-07 09:58:21 +08:00
Sisyphus
59a235d56c feat(F006-W5xx5): 关键 view 完整化 (沿用老 vue 字段/操作/弹窗) + W3.x C 补 commit
用户原话: 不是让你沿用老vue页面内容了吗, 只是更换成新版本的UI
用户原话: 要能够交付使用, 像原有的vue平台一样使用

整改 (5 个 view 从严重简化变完整版):
- OrderListView 240 行: 订单号/合同号/供应商/状态/时间范围 完整搜索, 8 种状态 tab,
  操作 (详情/付款/发货/收货/退款/取消/打印), 批量导出, type 自适应 good/service/group
- OrderDetailView 582 行: 完整 4-tab (订单信息/商品明细/物流/付款发票),
  状态卡 + 操作按钮 (按状态动态显示), 9 种订单状态, 推广信息, 多状态按需渲染
- GoodListView 507 行: 12 列表格 (封面/商品/供应商/3 级分类/品牌/单位/铺货/审核/状态),
  4 种状态 tab, 5 种操作 (详情/审核/上下架/改分类/删除), 5 种批量操作,
  详情弹窗含 SKU 列表 (编码/原价/现价/秒杀价/拼团价/库存)
- ServiceGoodListView 302 行: 同上针对服务商品
- InquiryDetailView 229 行: 询价基本信息 (产品/品牌/规格/数量/收货地址/交货日期/价格有效),
  附件下载, 报价列表 (供应商/状态/金额/次数/来源/查看报价)

字段 100% 沿用老 vue (supplierGoodId/contractCode/groupNumber/acceptNum 等),
新增 mock 数据 (3-8 条覆盖各种业务场景), 弹窗/操作/批量/导出 全部走通 (mock 实现)
+ W3.x C P0-P2 累计 30+ 个 view 文件补 commit (inquiry/openapi/order/sys 等 11+ 模块)

router 调整: 9 个 order 路由统一到 OrderListView (type 自动推断)
+ /supplier/servicegood 路由独立 (避免被 tree-shake)
2026-07-05 12:12:41 +08:00