编辑 | blame | 历史 | 原始文档

功能测试报告_汇总大表日期格式与规则联动及数据查看滚动加载_2026-09-08

  • 功能范围:本批 7 项要求(日期统一显示、VBA 列宽宏、数据查看滚动加载、小数位/排名复核、要求基线清单、RULE_004 双向提醒、RULE_P005 阈值与名称/说明联动)
  • 测试环境:本机 traffic-audit(后端 8090、前端 8080 热编译运行中);MySQL 5.7 @ localhost:3308 traffic_audit;Chrome 内嵌浏览器真机(Playwright/CUA)实测 UI
  • 验证基线:docs/要求与验收基线清单.md;决策基线《确认回执汇总…_2026-09-07》

用例与结论

# 用例(输入) 预期 实际 结论
1 生成汇总大表 2026-07/08,检查货运页 CQ 列等日期锚点显示 期次显示 yyyy"年"m"月",不得显示成数字 两文件全簿扫描:日期型单元格坏格式=0;货运页 CQ3 等 = datetime(2023-10-01) 且格式 yyyy"年"m"月";无 General 数字残留 ✅ 通过
2 全簿格式体检(导出的 7/8 月大表) 数值 0.00 / 百分比 0.00% / 排名 0;无 3/4 位小数、无底色 bad3=0、General 数值=0、fills=0(两份文件) ✅ 通过
3 排名与数值尾数抽查:货运量排名/货运周转量排名/中口径排名/道路运输周转量 排名整列整数,数值列显示两位小数且保留全精度 货运量排名 C/F/H/K/M/P 列格式 0(34 行);货运周转量排名/道路运输周转量排名为 =RANK()(0) 公式列;数值/同比列 0.00/0.00%;周转量无 3/4 位小数 ✅ 通过
4 VBA 宏交付物 提供可导入模块,含全表/当前表两个宏与用法 docs/工具/VBA_生成物全表自动列宽_2026-09-08.txt(AutoFitAllSheets + AutoFitActiveSheet + 说明) ✅ 通过
5 数据查看页滚动到底自动加载 普通/全屏滚动至底部追加下一页,行数递增、总数不变、无 JS 报错 Chrome 真机:行数 20→40→60→80→100→120→140,共 13056 条不变;控制台 error/warning=0 ✅ 通过
6 RULE_004 双向(货运类型环比)审核 2026-07 上月无→本月有、上月有→本月无均提醒 命中 7 家:新增 6、消失 3(1 家双向);样例 91420700090568838U 本月消失: 集装箱(上月=32210,本月无) 与库中 6/7 月数据逐字吻合;91429006793269842X 新增煤炭+消失油气双向命中且吻合 ✅ 通过
7 RULE_P005 阈值联动:20 → 30 → 20 名称/说明里的 ±N% 随阈值自动改写并持久化 列表 20 时名称=平均运距环比超±20%核实;改 30 后列表与 DB 均为 ±30%;改回 20 恢复 ±20%;DB id=11 threshold=20 持久化确认 ✅ 通过

关键数据与抽查证据

  • 格式体检(两份导出)汇总行:SUM: bad3=0 genNum=0 dtBadFmt=0,各排名页格式 TOP 见下表:
  • 货运量排名:0×204 / 0.00×108 / 0.00%×210
  • 货运周转量排名:0.00×85 / 0.00%×108(排名列为 RANK 公式,格式 0)
  • 道路运输周转量:0.00×216 / 0.00%×107,无 3/4 位小数
  • RULE_004 库核对 SQL:6/7 月各 636 家;审核结果(audit_result join audit_rule id=4)2026-07 共 7 条:
  • 本月新增: 集装箱=9716、本月新增: 铁矿石=2114、本月消失: 集装箱(上月=32210,本月无)、
  • 本月新增: 金属矿石=223041、本月新增: 石油天然气及制品=10757;本月消失: 煤炭及制品(上月=10137,本月无)、
  • 本月新增: 煤炭及制品=20231;本月消失: 石油天然气及制品(上月=22310,本月无) 等
  • RULE_P005 API 序列:GET /api/rules/list?reportType=H2031(id=11)threshold=20 名称±20% → POST /api/rules/update {id:11,threshold:"30"} 后名称/描述±30% → 改回 20 后恢复 ±20%;audit_rule 表核对一致。
  • 数据查看:GET /api/data/list?type=h2032&page=1&size=20 total=13056、页间 0 重复;UI 滚动实测见 #5。

涉及改动

  • docs/生成汇总大表/2026年7月道路运输量汇总表.xlsx、2026年8月道路运输量汇总表.xlsx(版式归一:日期锚点/0.00/排名 0/去底色,本次复验导出按此母版)
  • traffic-audit-server/.../auditengine/service/AuditEngineService.java(RULE_004 新增/消失双向)
  • traffic-audit-server/.../rulemanage/controller/RuleManageController.java(阈值 ±N% → 名称/说明联动)
  • traffic-audit-web/src/views/DataView.vue(滚动捕获监听修复 + 加载更多,见下)
  • docs/init.sql(RULE_004 说明、RULE_P005 名称/说明种子同步)
  • docs/工具/VBA_生成物全表自动列宽_2026-09-08.txt(新增)
  • docs/要求与验收基线清单.md(新增,含本批登记)

修复过程记录(DataView)

  • 初版仅监听 window 与 .table-wrap;实测发现普通/全屏下真正滚动容器是 el-table 内部 .el-table__body-wrapper(overflow-y:auto),初版在普通模式不会触发。
  • 修复:onScroll 改为取事件 target 的实际滚动容器度量(scrollTop/clientHeight/scrollHeight),scroll 监听加 capture:true(scroll 不冒泡但可捕获),mounted/beforeDestroy 成对注册/移除。
  • 修复后 Chrome 真机复测(见 #5)通过,控制台无异常。

发现的问题与处置

  • 无阻塞问题。待办沿用基线:8 月数据导入后 M2/M3 填值复验;日期锚点在 8 月母版中显示为序列号期的显示口径已在基线 F3 关闭。

结论

本批 7 项要求全部实现并通过实测,可交付。相关产物:导出验证文件在 docs/生成汇总大表/输出/生成_道路运输量汇总表_2026-07_格式验证.xlsx 与 _2026-08_格式验证.xlsx。