日期:2026-09-22 模块:数据查看(前端 DataView + 后端 DataViewController) 测试人:Codex
诉求来源:数据查看的数据类型应做到"能导入什么数据就能看到什么数据",用于核对导入是否完整。
数据查看页原先只有 15 个数据类型,网约车与个体客运虽然已有导入接口和模板,但**没有查看入口**,导入后只能查数据库。本次补齐 3 个类型:
| 新增类型 | 页面名称 | 数据表 | 列数 |
|---|---|---|---|
wycTotal |
网约车总数 | wyc_total_monthly |
5 |
wycOrder |
网约车订单及全省总量 | wyc_order_monthly |
23(含 17 市州订单列) |
passengerIndividual |
个体客运量/周转量 | passenger_individual_monthly |
7(含由区划代码派生的"市州"列) |
改动点:
- 后端 traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataViewController.java:新增 3 个 switch 分支、3 组列定义、3 个 Mapper 注入;passengerIndividual 用 RegionUtil.cityByCode 把 6 位区划代码派生为市州名。
- 前端 traffic-audit-web/src/views/DataView.vue:公路旅客模块加"个体客运量/周转量",城市客运模块加"网约车总数""网约车订单及全省总量"。
mvn spring-boot:run -f traffic-audit-server/pom.xml,8090,日志出现 Started TrafficAuditApplication、Tomcat started on port(s): 8090npm run serve(traffic-audit-web),8080,Compiled successfully in 4769mslocalhost:3308/traffic_audit(mysql CLI 直查核对)POST /api/auth/login(admin/123456)取 JWT,后续接口带 Authorization: Bearer <token>| 编号 | 输入 | 预期 | 实际 | 结论 |
|---|---|---|---|---|
| TC-1 | GET /api/data/list?type=wycTotal |
20 行、5 列,列名与模板一致 | total=20,列:报表期/全省网约车客运量/其中城市内客运量/全省网约车周转量/其中城市内周转量;首行 2025-01:2467.79 / 2325.25 / 14910.54 / 12202.49 | 通过 |
| TC-2 | type=wycOrder |
20 行、23 列(含 17 市州) | total=20,23 列;首行 2025-09:orderSum=17652159,武汉 8076610、黄石 676644…神农架 1424 | 通过 |
| TC-3 | type=passengerIndividual |
139 行、7 列,含派生市州 | total=139;首行 2025-01:regionCode=420900 → 市州=孝感市,个体客运量 6442、周转量 117502.08 | 通过 |
| TC-4 | type=wycOrder&period=2026-08 |
仅 2026-08 一行 | total=1,rows=1,cols=23 | 通过 |
| TC-5 | type=passengerIndividual&period=2026-08 |
仅 2026-08 | total=6 | 通过 |
| TC-6 | type=passengerIndividual&keyword=孝感 |
仅孝感相关行 | total=40 | 通过 |
| TC-7 | 前端下拉 | 公路旅客 3 项、城市客运 5 项 | 下拉新增 3 项,npm run serve 编译成功 |
通过 |
| 编号 | 输入 | 预期 | 实际 | 结论 |
|---|---|---|---|---|
| TC-8 | type=notExist |
空结果、不报错 | total=0、records=0、columns=0 | 通过 |
| TC-9 | type=wycOrder&period=1999-01(无数据的期) |
空结果 | total=0、records=0、列定义正常返回 | 通过 |
| TC-10 | 不带 token 访问 /api/data/list |
401(既有安全策略) | 401 | 通过(非缺陷) |
| TC-11 | type=wycTotal&keyword=xx |
该表无名称列,关键字不生效 | 仍返回 20 行 | 通过(见遗留 1) |
| 表 | 库内行数 | 接口 total | 结论 |
|---|---|---|---|
wyc_total_monthly |
20 | 20 | 一致 |
wyc_order_monthly |
20 | 20 | 一致 |
passenger_individual_monthly |
139 | 139 | 一致 |
h2032 13056 / transportAuth 1270 / trackMileage 628 / scaleSplit 288 / freightTurnover 234 / h2031 15811 / passengerAuth 0 / cityBus 2860 / cityTaxi 340 / cityTaxiAuth 85272 / investmentProject 152 / investmentMonthly 284 / investmentSystem 277 / energyVehicle 2568 / energyAuth 1203 —— 均正常返回,列数不变。
wycTotal / wycOrder 没有名称类字段,页面上"企业/市州名称"关键字框对它无效(返回全量)。属既有交互的一致性问题,未在本次改动,列入待优化。3 个新增类型全部通过正向、负向与入库抽查用例,原有 15 类无回归。数据查看现已覆盖**全部可导入的数据类型**,可用于核对导入完整性。
月报各表的月值均为**当月值**。按市州做"任意起止月"汇总时,列按性质分三类处理:
- 流量类(客运量、周转量、货运量、订单数)→ 逐月求和;
- 时点类(运营车辆数、营运车辆数、企业数)→ 不求和,取期末值(如武汉公交运营车辆 2026 各月 8476→7861,逐月相加会得到 64879 辆,实际 8 月末只有 7861 辆);
- 比率类(环比、同比、平均运距、占比)→ 不求和,按累计口径重算。