前端原始同步表采纳状态标识展示(#332 后续) #333

Closed
opened 2026-10-19 01:51:51 +08:00 by tanzk · 1 comment
Owner

来源:#332「退款五路数据标准层」正文「不做」约定 —— 前端原始表采纳状态展示另立工单,不阻塞本期后端。

背景

#332 已完成后端闭环:五路 ods 表三态采纳标识(adopted/excluded/pending + 规则码 adopt_reason + 版本 + 时间)、std_* 标准表、analytics 全入口切换 std 唯一源。数据查看树的五路原始表当前不展示采纳状态,业务方无法从界面看出「这行进没进统计」。

需求

数据查看树五路原始表(refunds / wallet_withdrawals / shanmao_refunds / manual_refunds / refund_record_reports)行级展示采纳状态标识:

  • adopt_state 三态徽标(采纳/排除/待定);
  • tooltip 展示 adopt_reason 机器规则码中文释义(如 A_EX_METHOD=转入提现账户/线下非线上直退)与 adopt_rule_ver;
  • 待定(pending)行需视觉上可过滤,便于治理跟进。

设计约束

  • 遵守《界面设计说明规范》五要素+三层落地、《数据源命名与分组规范》(铁律 13)、看板卡片双强制(铁律 12);
  • 只读展示:前端不提供改采纳状态入口(人工覆盖一律走后端 admin API adoption_overrides,铁律 15);
  • 五路原始表已有 data_source 注册,展示列扩展走既有注册/投影机制,禁止同表第二 code。

验收标准

  • 五路原始表明细行展示采纳状态徽标 + 规则码 tooltip;
  • pending 行可筛选;
  • 设计说明三层落地(代码注释 + 页面 ⓘ + 审查清单);
  • 全量 ruff/pytest 通过,标准发布流程上线。
来源:#332「退款五路数据标准层」正文「不做」约定 —— 前端原始表采纳状态展示另立工单,不阻塞本期后端。 ## 背景 #332 已完成后端闭环:五路 ods 表三态采纳标识(adopted/excluded/pending + 规则码 adopt_reason + 版本 + 时间)、std_* 标准表、analytics 全入口切换 std 唯一源。数据查看树的五路原始表当前**不展示采纳状态**,业务方无法从界面看出「这行进没进统计」。 ## 需求 数据查看树五路原始表(refunds / wallet_withdrawals / shanmao_refunds / manual_refunds / refund_record_reports)行级展示采纳状态标识: - adopt_state 三态徽标(采纳/排除/待定); - tooltip 展示 adopt_reason 机器规则码中文释义(如 A_EX_METHOD=转入提现账户/线下非线上直退)与 adopt_rule_ver; - 待定(pending)行需视觉上可过滤,便于治理跟进。 ## 设计约束 - 遵守《界面设计说明规范》五要素+三层落地、《数据源命名与分组规范》(铁律 13)、看板卡片双强制(铁律 12); - **只读展示**:前端不提供改采纳状态入口(人工覆盖一律走后端 admin API adoption_overrides,铁律 15); - 五路原始表已有 data_source 注册,展示列扩展走既有注册/投影机制,禁止同表第二 code。 ## 验收标准 - [x] 五路原始表明细行展示采纳状态徽标 + 规则码 tooltip; - [x] pending 行可筛选; - [x] 设计说明三层落地(代码注释 + 页面 ⓘ + 审查清单); - [x] 全量 ruff/pytest 通过,标准发布流程上线。
Author
Owner

关闭凭证核验 (2026-10-19)

验收标准 核验方式 结果
五路原始表明细行展示采纳状态徽标 + 规则码 tooltip commit ad8ed86:Browser.vue 行级 el-tag 三态徽标(采纳/排除/待定/未判定) + adopt_reason 中文释义 tooltip(manual: 前缀人工覆盖行已适配);生产实测 adopt_state 中文列名「采纳状态(是否进统计)」、adopt_reason enum 含 17 条「码=释义」(生产库 data_source_fields 查询) ✅
pending 行可筛选 Browser.vue 表头「采纳状态」下拉(仅五路原始表显示,三态选项),经既有 filters JSON 机制(export 同步生效);测试 test_adopt_state_meta 断言 is_filterable=True ✅
设计说明三层落地 ①代码层 Browser.vue 头部 Design Rationale 增 #333 段(含取舍:不提供改采纳状态入口);②页面层 adopt_state 列头 ⓘ 气泡(三态口径+未判定语义+只读声明);③test_adopt_state_display_333.py 锁定注册契约 ✅
全量 ruff/pytest 通过 ruff check app/ tests/ All checks passed;全量 pytest EXIT=0 零失败;前端 npm run build 通过 ✅
标准发布流程上线 deploy/upgrade.sh --git --branch main → git-20261019011241(备份 901M),health=ok;生产 data_source_fields 五表各注册采纳四列(启动 lifespan 自动注册) ✅

结论:只读展示闭环完成 —— 释义单一来源在采纳作业模块(规则升级只改后端),前端零硬编码。

## 关闭凭证核验 (2026-10-19) | 验收标准 | 核验方式 | 结果 | |---|---|---| | 五路原始表明细行展示采纳状态徽标 + 规则码 tooltip | commit `ad8ed86`:Browser.vue 行级 el-tag 三态徽标(采纳/排除/待定/未判定) + adopt_reason 中文释义 tooltip(manual: 前缀人工覆盖行已适配);生产实测 adopt_state 中文列名「采纳状态(是否进统计)」、adopt_reason enum 含 17 条「码=释义」(生产库 data_source_fields 查询) | ✅ | | pending 行可筛选 | Browser.vue 表头「采纳状态」下拉(仅五路原始表显示,三态选项),经既有 filters JSON 机制(export 同步生效);测试 test_adopt_state_meta 断言 is_filterable=True | ✅ | | 设计说明三层落地 | ①代码层 Browser.vue 头部 Design Rationale 增 #333 段(含取舍:不提供改采纳状态入口);②页面层 adopt_state 列头 ⓘ 气泡(三态口径+未判定语义+只读声明);③test_adopt_state_display_333.py 锁定注册契约 | ✅ | | 全量 ruff/pytest 通过 | `ruff check app/ tests/` All checks passed;全量 pytest EXIT=0 零失败;前端 `npm run build` 通过 | ✅ | | 标准发布流程上线 | `deploy/upgrade.sh --git --branch main` → git-20261019011241(备份 901M),health=ok;生产 data_source_fields 五表各注册采纳四列(启动 lifespan 自动注册) | ✅ | 结论:只读展示闭环完成 —— 释义单一来源在采纳作业模块(规则升级只改后端),前端零硬编码。
tanzk closed this issue 2026-10-19 09:16:24 +08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tanzk/csctalon#333