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

功能测试报告:2026-07 导入与报表生成回归(2026-09-02)

目的:验证今日三条数据链「导入→入库→报表」全程可用
① 出租运政车辆 7 月(D:\桌面\测试数据\城市客运\出租车信息列表 (2).xls)
② 个体客运量/周转量 7 月(新市州汇总模板:湖北省公路旅客运输个体户月度生产情况(2026.7).xlsx,对应 docs\公路旅客\模板_*.xlsx)
③ 货运 7 月数据齐全后的报表口径(D:\桌面\测试数据\货运\7月)
顺带完成数据污染清理 + 22 个报表接口错误单元格全量扫描。

一、导入功能验证

类型 报表期 源文件 批次 总数/成功/失败 入库核对
出租运政车辆 CITY_TAXI_AUTH 2026-07 出租车信息列表 (2).xls(真实 4.2 万行) #188 42636 / 42636 / 0 city_taxi_auth 2026-07 = 42636 行、17 市州,与 2026-08(42636/17)完全一致
个体客运量 PASSENGER_INDIVIDUAL 2026-07 湖北省公路旅客运输个体户月度生产情况(2026.7).xlsx(市州汇总模板) #187 7 / 7 / 0 passenger_individual_monthly 合计 189998 人 / 4584040.2 人公里 = 源表全省合计;抽检黄冈 5886/175992、孝感 19636/386845 等一致
货运量/周转量(数据层补齐) 2026-07 2026年7月客运量、货运量-5xlsx.xlsx SQL 补齐 18 行(17 市州+湖北省) 城市月合计 16285.7105 万 = 湖北省 16285.7105;周转量城市合计 2181925.708 = 湖北省 2181925.71;武汉 4940.9715/667561.3739 与源一致
规上规下拆分(数据层重建) 2026-07 同上 SQL 重建 MONTH/CUMULATIVE 各 18 行 MONTH 合计周转量 2181925.71(规上 597278.64/规下 1584647.07)、CUM 合计 15222118.45;武汉 MONTH 204809.56/462751.81/667561.37

补充说明:
- 修复前 2026-07 曾存在黄石等行 freight_m07 为 NULL → 分市州月季差出现 -323.97 等负值,已消除。
- import_batch #177/#178/#179/#186 为“模板仅表头/旧模板首试”产生的 0 行批次,未产生数据,保留作审计历史。

二、报表生成回归(period=2026-07&mode=month)

  • 22 个导出接口全部 HTTP 200,输出留档:outputs\report_check\regression_2026-07\
  • 全文件错误公式扫描(含 4 个 series 包内层):#REF! / #DIV/0! / #VALUE! 等 0 残留。
  • 数值抽查与官方源表一致:
  • cityDetail:全省 7 月货运量 O5=16285.71、武汉 O11=4940.97、武汉 1-7 累计 AA11=34306.78。
  • turnoverRank:全省累计规上 4357157.34 / 规下 10864961.11 / 合计 15222118.45,与 scale_split CUMULATIVE 逐位一致。
  • freightRank:武汉累计规上 8905.15 / 规下 25401.63 / 合计 34306.78。
  • 公交/出租/轨道轮渡三张表:表头为「2026年1月…2026年7月、2026年累计」,无 46082 数字序列号;轨道全省行求和 = 武汉+黄石(6 月 11921.16 = 11886.3+34.86 ✓)。
  • 系列包(cityPassengerSeries / passengerSeries / freightSeries / investSeries)内层全部 clean。
  • 说明:投资四张 invest* 为 HSSF 老格式导出(扩展名 .xlsx、内容为二进制 .xls,Excel 可正常打开),本日未做逐格公式扫描。

三、本轮修复与清理

代码(ReportExportService.java 为主):
1. 报表同期数据按 report_period 同年过滤 —— 修复 H2032 去年同月混入当年导致“规上货运量×2、规下为负大值”的源头问题。
2. fixCityMonthHeaderText:未格式化日期序列号(46082 等)→「yyyy年M月」。
3. clearFormulaErrorCells / clearFormulaErrorsAll:清空求值错误的公式结果(模板跨簿/跨表同比 #REF!、无去年数据 #DIV/0!),不改写公式文本。
4. 已接入:exportCityByTemplate(公交/出租)、exportCityRailFerryDetail、exportPassengerMidDetail、exportEnergySummary、exportCityPassengerCitySum、exportCityPassengerDetailSum。
5. DataImportService:个体客运双模板(保留旧“企业名称”模板 + 新增市州汇总模板按标题块逐行入库);RegionUtil 增加市州名→6 位区划码反向解析与短名别名。

数据(SQL 已执行,留档 outputs\fill_2026-07_freight_scale.sql):
- freight_turnover_import、scale_split_transport 2026-07 补齐/重建(见第一节)。
- h2032_enterprise_monthly:2026-01~2026-08 各 636 户、0 重复(8/29 记录的 2026-07 “734 行 / 98 户重复”已消除);2025-01~12 各 664 户为去年基期,正常。

四、已知缺口(数据源问题,非代码缺陷)

  • 城市客运月度数据(公交 U203/出租 U402/轨道/轮渡)库内并非每月都有真实值:轨道 2026 年仅 6、7 月有数据 → 报表 1-5 月列留空。补齐各月源文件后重新导入即可完整。
  • 网约车无源数据,模板样例已清空(设计上不计入城市客运合计)。
  • 前端“导入进度无显示”:本次导入均走接口并成功落库(批次可查);4.2 万行大文件在页面上的进度提示未复现排查,属 UI 侧待办。

五、结论

  • 导入功能:三条链 0 失败,入库值与源文件逐项核对一致 → 可用。
  • 报表生成:22 接口可出数,无 #REF!/#DIV/0! 污染,货运 7 月数字与官方 workbook 一致 → 可用。
  • 遗留:城市客运缺月源文件补齐;投资 .xls 老格式如需彻底扫描另议;页面进度条 UI 复现排查。