补记:2026-09-12 无代码改动、无提交(
git log --since=2026-09-12为空),故未单独留档。
城市汇总、城市分市州、中口径分析、道路运输周转量 四页标题仍写「1-7月/7月」、数值也是 7 月静态值。公交/出租/网约车/轨道、轮渡/班线包车/货运)逐格聚合,反推四页口径,与四页成品**逐格 0 差异**后才动代码。traffic-audit-server/src/main/java/com/trafficaudit/reportexport/service/ReportExportService.java(+494 −2):refreshSummaryCumulativeSheets(wb, year, month),插在 refreshSummaryRankSheets 之后、applySummaryReferenceLayout 之前;smReadLedgerMetrics 全部**按行标签识别**(不写死行号),19 维指标位;2026 逐月列 C…Q、2025 同期列 V…AJ;smSetVal 遇目标格是公式**直接跳过**(保留母版公式,打开重算)、0 且原为空格不新增;smSetTitle 先 setBlank() 再写(母版标题是 inlineStr,POI 只写 <v> 不更新 <is> 的坑)。mvn -o -q compile 通过;start-dev.ps1 重启后端(PID 27840)与前端(PID 23416)均就绪。docs/生成汇总大表/输出/生成_道路运输量汇总表_2026-08_四页数据驱动_2026-09-13.xlsx。_v5_four.py:覆盖标题 10 格 + 城市汇总累计块 28 格 + 当月块 28 格 + 城市分市州 408 格 + 中口径 10 格 + 道路运输周转量 102 格 = 586 格,差异 0 格。_verify_four.py 复核 13:06 归档件(含与母版 1-7 月静态值对照),同样 0 差异。docs/功能测试报告/。ea7cc07(ReportExportService.java + 《功能测试报告_汇总大表四页数据驱动_2026-09-13.md》 + 本《工作日结》,3 文件 +689 −2)已推送双仓库:git push gitea main(09e612a..ea7cc07)、git push origin main:master(09e612a..ea7cc07),并 git branch -f master main。git fetch gitea / git fetch origin 均无新提交(rev-list --left-right --count = 0 0),未覆盖同事代码。_t4_2026-08.xlsx 再做 586 格独立复核 = 差异 0 格;与发布前产物逐 zip 条目比对,内部条目字节完全一致(MD5 差异仅来自 zip 头时间戳)。package-deploy.py:前端 npm run build → dist 内嵌进后端 jar(拷入 resources/static)→ mvn clean package → 清空 static → 组装 deploy/traffic-audit-deploy-YYYYMMDD/ → 压缩 traffic-audit-deploy-YYYYMMDD.zip(本次 69.9 MB / 246 文件,jar 55.5 MB)。backend/(jar + docs + application.yml + start-backend.cmd/.sh)、frontend/(dist + nginx 示例)、db/(init.sql + sql_city_bus/taxi/wyc.sql)、README。jwt.secret 填成非法 Base64(如中文)会让登录接口 500(jjwt 0.9.1 按 Base64 解码 secret)→ JwtUtils 新增 secretKeyBytes() 兜底(Base64 优先、否则 UTF-8 字节 + WARN)。docs/打包部署说明.md 三处不实:① 不需要 Redis(pom 无依赖、代码未用);② 前端改为内嵌进 jar(旧说明称「已内置 file:./web/」,实际 jar 内无静态文件);③ 补 sql_wyc.sql 与 summary.template-dir。_deploytest/ 用 8091 端口独立启动 → 启动成功、GET / 200 有 #app、静态 js 200、登录 200 拿到 token、导出汇总大表 200 / 950,783 字节(与开发机产物同尺寸);另测中文 secret 兜底路径同样 200。docs/功能测试报告/功能测试报告_部署包打包与独立启动_2026-09-13.md。traffic_audit_full_20260913.sql(45.5 MB,mysqldump --databases,含建库语句与全部 29 张表数据)。traffic_audit_vfy 导入,逐表 COUNT(*) 与源库比对 —— 29 张表 0 差异,抽查 wyc_order_monthly 2026-08 行数正确,验证后删除临时库。USE 语句,必须 -D traffic_audit 执行;init.sql 自带建库语句可独立执行。D:\mysql\mysql-5.7.41-winx64 只是 5.7 客户端工具),昨晚按「本机是 5.7」写的说明不准确;② 29 张表的排序规则统一为 utf8mb4_0900_ai_ci,**目标机必须装 MySQL 8.0,5.7 会导入失败**。C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe 重新导出备份 traffic_audit_full_20260913.sql(45.5 MB)。traffic_audit_vfy → 表数量 29=29、表名一致、**逐表 SHOW CREATE TABLE 结构差异 0**、**逐表 COUNT(*) 行数差异 0**、抽查 wyc_order_monthly 2026-08 order_sum 一致 → 验证后删除临时库。DROP TABLE 覆盖警告)。.nb3;本机已有 8/27 那份:D:\文档\Navicat\MySQL\Servers\mysql80\traffic_audit\20260827152017.nb3(**已过期**:27 张表、缺网约车两张、数据停在 8/27)。tar 容器 = 每张表 <uuid>.meta.json.gz(DDL/字段)+ <uuid>.data.000NN.sql.gz(gz 数据分片)+ 末尾未压缩 meta.json(DatabaseType/Schema/Objects[UUID,Type,Name,Rows,Metadata{Filename,Checksum}]);Checksum 经实测就是该 meta 文件的 SHA1(大写)。.nb3 只能由 Navicat 自身生成、也只能用「还原备份」还原,**用 .sql 点「还原备份」必然失败**;我无法在命令行侧可靠合成并验证 Navicat 是否接受,所以不提供手工拼的 .nb3,改为在文档里写清「本机 Navicat 点一次备份 → 拷到目标机同路径 → 还原备份」的傻瓜步骤。docs/打包部署说明.md 5.1 节新增「路线 B2:Navicat 备份/还原(.nb3)」,并注明三种方式任选其一、不可叠加。01a08b6d-30de-7500-8c98-f6e87100e55c)按用户 23:05 的要求,依据 D:\05\_数据分类\运距异常\2026年1-8月全省规上货物周转量差异率汇总表(4).xlsx(市州汇总/企业明细副本)与 D:\桌面\副本1-6月货运量测算数据各市州.xlsx(Sheet1 分市州规上货运量、Sheet2 高速车货总重/总重里程/运距)重写 D:\桌面\分析报告(出版).docx,产出 D:\桌面\分析报告(出版)_新_20260913.docx(43045 字节,6 页,5 张表),生成脚本 _gen_report.py;结构为 一 总体情况/二 与高速公路指标对比(表1 单月、表2 累计)/三 分运输方式(表3)/四 分市州(表4)/五 企业与运力(表5)/六 下一步对市州的要求与建议(6 条)。_render_check\rp01~rp06.png。事故与恢复(重要)
- 本会话中一条参数写反的命令把 D:\桌面\分析报告(出版)_新_20260913.docx 覆盖成**纯文本**(10508 字节,zipfile.is_zipfile=False),Word 打开即为无排版的文字流、表格被拆成一行一词——这就是用户反馈「格式全乱、内容差太多」的直接原因。
- 处置:误覆盖件已备份到 _误覆盖备份_分析报告_新_20260913_纯文本.txt;用 D:\render_src.docx(23:10:07 原样副本)还原桌面文件,**SHA256 一致**(1723594DC746BA4458F19381D893AC0A17060CCC5B20513A8A10AFB19B415373),结构校验 zip 正常、5 表 262 段。已核对:备份纯文本内容与还原件内容一致,**无内容丢失**。
已查清的残留格式缺陷(待修)
- _gen_report.py 的 borders() 把 w:tblBorders 追加在 w:tblLook 之后(合法顺序应为 tblW→jc→tblBorders→tblLayout→tblLook),且 tblW=0(type=auto)、gridCol 6 列均分 1568,列宽与内容不匹配。
- 页面尺寸:还原件为 12240×15840(Letter)+1417 twips 页边距,用户底稿《分析报告(出版).docx》为 A4(11906×16838)+1800 twips,待统一。
- 已起草修复脚本 _gen_report_v3.py(自还原件读回内容 → 重排 tblPr 顺序、tblLayout=fixed、autofit=False、按内容分配列宽、A4/25.4mm 页边距、表内行距改单倍),**本次未执行、未产出文件**,明日继续。
| 项 | 结果 |
|---|---|
| 导出 2026-08 | HTTP 200 / 950,783 字节 / 36.8 秒;两次导出字节数一致(确定性) |
| 四页标题 | 城市汇总、城市分市州(4 块)、中口径分析(2 块)、道路运输周转量(2 块)全部更新为 1-8月/8月 |
| 逐格复核 | 586 格,差异 0 格(从生成件自身台账页独立重算) |
| 月份回退(回归) | 导出 2026-07 时四页精确回退成母版 1-7 月权威值:城市汇总 B3=237412.33、中口径 B3=27524.4906、周转量 G4=15222118.44638293、城市分市州 B6=135474.77989442425 —— 与母版逐项一致 |
| 负向 | 母版公式格未被覆盖(城市分市州!B5、道路运输周转量!J4 仍为公式);2025 无库数据时同比取母版缓存、不出现 NaN/Inf;空+0 不新增 |
| 前端 | http://localhost:8080/ HTTP 200(首页正常) |
wyc_order_monthly 的 2026-08 行 created_at=2026-09-11 16:35:10,对应 import_batch #317、文件名 _t_wyc_aug.docx(09-11 自测时用 7 月报告改标题的临时副本);你真实的 模板_网约车订单.docx 只导入过 2026-07 期(#314/#318/#319)。该行只有 4 个全省 pin 是真实 8 月数据(来自《网约车总数》#306),17 市州订单数与 7 月完全相同。**待用户重传真实 8 月运行监测报告(报表期 2026-08)覆盖。**_t_wyc_aug.docx;其余 100+ 个 _* 临时文件未动):_*.py / _*.sql / _*.xlsx / _*.txt / _bak_*.java 等 100+ 个未跟踪文件(用户未同意前不清理、不提交)。docs/生成汇总大表/生成_道路运输量汇总表.xlsx(版式参照件)与 docs/生成汇总大表/输出/ 下的历史产物均为未跟踪文件,暂按惯例不纳入提交。tblPr 顺序、列宽、页边距待重排(脚本 _gen_report_v3.py 已起草未执行)。D:\05_数据分类\货运\8月\道路货物运输月度生产情况(2026)_2026-09-13 18_24_49.xls(636 家)对比 D:\需要导入的数据\货运\2025年月报\道路货物运输月度生产情况(2025年8月).xls(664 家)——**尚未由我独立核实,不得直接写入报告**。_gen_report_v3.py,重排 5 张表的 tblPr 顺序、tblLayout=fixed、按内容分配列宽、统一 A4 页面,产出后**自查渲染**(Word→PDF→PNG,图片只用于自查不发给用户),确认表格不越界、打开不报修复提示。