用户诉求:数据查看的数据类型应做到"能导入什么数据就能看到什么数据",用于核对导入是否完整。
原先网约车总数、网约车订单、个体客运三张表**有导入接口和模板但没有查看入口**,导入后只能查数据库。
DataViewController:新增 wycTotal / wycOrder / passengerIndividual 三个分支 + 三组列定义 + 三个 Mapper 注入;passengerIndividual 用 RegionUtil.cityByCode 把 6 位区划代码派生为"市州"列(如 420900 → 孝感市)。DataView.vue:公路旅客模块加"个体客运量/周转量",城市客运模块加"网约车总数""网约车订单及全省总量"(订单表 23 列,17 市州各一列,保持与导入文件列序一致)。D:\桌面\按市州汇总_2026年1-8月累计_样例.xlsx:公交、巡游出租、货运规上企业三张表,17 市州 + 全省合计行 + "口径说明"页。用户在别处看到"汇总"按钮,实际核查:前端 DataView.vue 全文无"汇总/导出"(ReportExport.vue 才有),后端只有 /api/data/list,全仓 + traffic-audit-web/dist + 部署 jar + gitea 远端 main 均无相关代码。已向用户说明,按"尚未实现、由本仓实现"推进。
traffic-audit-web/src/views/ReportExport.vue):taskDownloaded/taskFileName/taskFileSize/taskBlob。用户三点反馈:①跨期汇总时点列怎么处理——决定**不放时点列**;②横向滚动时看不到企业名称;③数据类型做成下拉框更简洁。
el-select(按 5 个模块分组、支持输入搜索),切换类型时同步 activeModule。renderColumns 按表自适应冻结 报表期/所属地区/市州/企业名称 等前导列(此实现 09:56 已落在工作区但未提交,本次真机验证后一并提交)。popper-class 精确命中;WycSplitCalc 拆分口径,全省行取台账 pin;investment_project 补项目名称与市州(原表只有 project_id,页面显示数字无法辨识);/api/data/list 新增 periodType 参数;切换类型自动复位;CityRollupService + 三个接口:/api/data/rollupTypes、/api/data/summary、/api/data/export;ReportExportTaskService.java 为主):docs/生成汇总大表/_cache/,文件名 <key>_v<数据版本>.xlsx(数据版本=MAX(import_batch.id)),已加 .gitignore;elapsedMs 为负数(任务起点用现在、结束时间是历史生成时间)→ 已改为以生成时间作起点。fromCache=false 重新生成(验证「有新导入即失效」);浏览器点导出秒出、文案与按钮正确、控制台 0 报错。MAX(import_batch.id),①导入投资/能耗等无关数据会白失效;②**不含母版文件**,换母版时会错误命中旧结果(正确性漏洞)。ReportExportTaskService.java):CHECKSUM TABLE 校验和(能捕捉原地 UPDATE)」+「母版目录全部文件 + 网约车订单 xlsx 的名称/大小/修改时间」,SHA-256 前 8 字节写进缓存文件名;import_batch,其余全纳入(宁可多算不可出错);abf468c 中口径排名累计同比基数改用母版 2025 静态列(方案 A,ReportExportService.java)、47a8734 软件输出与手工定稿差异报告、ceaa5f2 AGENTS 改公司 gitea 单仓库、a5a9545 09-22 记录与 Codex 卡顿复核、zyj 的 8 月母版 196 格文本转数值 + 差异清单。ReportExportService.java:6251 仍写同一格(第 24 列),无追列逻辑;getLastMidIssues() 全仓库无调用方;fund_channel 字段;06b1cb7):§0 最紧急清单 4→3 件并列出三项已闭环(十堰源文件 / 中口径基数双轨制 / 导出缓存);abf468c;§1.3 与 §7.4 从「双仓库」改为**公司 gitea 单仓库**;§6 索引补同事两份文档。fixCityMonthHeaderText()(09-03 加入)docs/功能测试报告/功能测试报告_数据查看补齐网约车与个体客运类型_2026-09-22.mddocs/功能测试报告/功能测试报告_数据查看冻结列与数据类型下拉框_2026-09-22.md(冻结列/下拉框真机用例 12 条全通过)docs/功能测试报告/功能测试报告_数据查看展示优化与网约车按市州竖排_2026-09-22.md(接口 6 条 + 真机 6 条全通过)docs/功能测试报告/功能测试报告_数据查看口径筛选与表头单位_2026-09-22.md(接口 7 条 + 真机 2 条全通过)docs/功能测试报告/功能测试报告_数据查看按市州汇总与导出_2026-09-22.md(接口 10 条 + 真机 4 条全通过)docs/功能测试报告/功能测试报告_汇总大表进度弹窗优化_2026-09-22.md(6 条用例通过:生成中状态 / 完成提示 / 再次下载走缓存 / 关闭 / 无控制台报错 / 其它导出未受影响)docs/功能测试报告/功能测试报告_汇总大表导出结果落盘缓存复用_2026-09-22.md(10 条用例通过:首次生成写缓存 / 内存命中 164ms / 重启后落盘命中 1.19s / 有新导入即失效 / 同 key 只留最新版本 / 时长显示修复 / 浏览器端到端)docs/功能测试报告/功能测试报告_导出缓存改用数据指纹_2026-09-22.md(12 条用例通过:无关导入仍命中 / 相关源表原地 UPDATE 必失效 / 换母版必失效 / 失效提示显示 / 命中无提示 / 数据还原核对)mvn spring-boot:run(8090,Started TrafficAuditApplication);前端 npm run serve(8080,Compiled successfully in 4769ms);MySQL localhost:3308/traffic_audit;登录 admin/123456 取 JWT。stickyProps/nameProps。scale_split_transport(规上/规下拆分)288 行数值全为 NULL,若哪张报表依赖它按市州出数会取不到值,建议与同事确认导入来源。model_catalog_json 清单,待用户重启客户端确认界面显示 deepseek-flash。/api/data/summary 与 /api/data/export,前端加"明细/汇总"切换与导出按钮。fix-codex-typing-retry-storm.js 存在且 user_scripts.json 仍为 enabled=true。13.28% 单核;修复前约 115% 单核。window.__codexPlusRetryTimerGuardInstalled=true,本次会话 window.__codexPlusRetryTimerGuardDropped=16。用户要求:把软件生成的《客运站投资明细表》《物流站场投资明细》与人工维护的两份定稿逐格比对,列出所有不同。
D:\05_数据分类\投资\8月\8月客运站投资明细表.xlsx、8月物流站场投资明细.xlsD:\桌面\生成数据\生成_所选报表_2026-08 (1)\生成_客运站投资明细表.xlsx、生成_物流站场投资明细.xls。_tmp_diff_invest_0922.py);先核对 B 列项目名逐行对齐(192/121 行全部一致,无错位),再统计差异,最后回溯源文件 / 数据库 / 底稿模板定位根因。id=154(竣工 2026)与 id=181(竣工 2029)两档,导出取到旧档,写了 7 月值 20081/2900/214(应 20377/3196/296)。docs/功能测试报告/数据比对报告_投资明细表软件生成与人工版_2026-09-22.md(含 156 格全量清单 + 逐条核对结论 + 处置建议)。_tmp_diff_invest_0922.py、_tmp_dump_invest_full_0922.py、_tmp_diff_invest_annot_0922.py、_tmp_diff_tables_0922.py、_tmp_src_spotcheck_0922.py、_tmp_src_spotcheck2_0922.py、_tmp_db_probe*_0922.py、_tmp_tpl_*_0922.py 及对应 _*.txt 输出。按第六节比对结论动手修了三处"会静默出数"的取数缺陷,并顺带端到端暴露+修复了潜江导入选错历史页签。
ReportExportService.java):normInvestName() 归一化补标点(半/全角句点、顿号、分号等)→ 荆州「中国供销.公安商贸物流园」可匹配,写入库内 15986/15986/8227.5;preferMonthlyCandidate():同名多档优先取「当月有数据」的档 → 十堰「快递物流产业园二期」改取 id=181,写入 20377/3196/296、竣工 2029;logSkippedRows():未覆盖行逐行 WARN([未覆盖] 第N行 市州 项目名 → 原因 + 按市州统计),不再静默结转上期值。DataImportService.java):investHeaderKey() 先去全部空白(含换行/全角空格)再判定关键词 → 天门 H/J/K 三列恢复识别,2026-08 入库 16677.7/16677.7/500(原为 0/0/0);investSheetPeriodCellHit() + 评分加权 2000000:按表内报表期(2026.08.24)选 sheet,优先于「sheet 名含同月」→ 潜江不再把 2018 年「潜江(8月)」当 2026-08,重导后 2026-08 入库「中国虾谷冷链仓储物流园」11947.9/1135/0。mvn -o compile 通过;停旧起新后端(8090 就绪);接口重导 + 重跑 2026-08 导出;逐格比对**156 格 → 129 格**(降 27 格:物流分项目 108→91、分市州 15→11、市州汇总 17→11),无新增差异。docs/功能测试报告/功能测试报告_投资明细表取数修复_2026-09-22.md。_tmp_*_0922.*、_tmp/gen_new_0922/)。生成_道路运输量汇总表_2026-08 (5).xlsx,手工定稿 2026年8月客运量、货运量定稿.xlsx。#VALUE! 假差异。货运 2022 年累计同比,业务已确认软件正确。班线包车 2019、2020 年历史块 #VALUE! 经重算确认是缓存假差异,本次已剔除。docs/问题汇总/汇总大表_软件输出与手工定稿差异清单_2026-08_20260922.md,逐格明细 docs/问题汇总/汇总大表_差异明细_2026-08_20260922.csv。db0ee92(投资明细取数/导入修复 + 日结第七/八节);合并后本地编译 mvn -q -DskipTests compile 通过。关机前将 HANDOFF、本日结快照提交并推送 origin/main。8090、前端 8080 均未运行,未发现对应 Java/Node 进程;backend.log 最后写入 09-21 17:29,frontend.log 最后写入 09-21 17:36。MySQL80(3305)、MySQL57(3306) Running,关机后自动停止,无需手工处理。powershell -NoProfile -ExecutionPolicy Bypass -File start-dev.ps1;数据库和生成缓存已持久化。_tmp*_0922.* 与 _tmp/gen_new_0922/ 等均保留,未经确认不删除。