# -*- coding: utf-8 -*-
|
import io
|
content = """# 交通统计报表审核系统 - Demo 说明
|
|
> Demo 范围:交企统H203-2表(道路货物运输月度生产情况)
|
> 需求文档:`货运简化.docx`、`database.md`、`architecture.md`;数据库脚本:`init.sql`
|
|
## 一、环境要求
|
|
| 组件 | 要求 |
|
|------|------|
|
| JDK | 1.8 |
|
| Maven | 3.x |
|
| Node.js | 14+(Vue CLI) |
|
| MySQL | 5.7(本机 `localhost:3305`,账号 `root/root`) |
|
|
## 二、初始化数据库
|
|
```bash
|
mysql --default-character-set=utf8mb4 -h localhost -P 3305 -u root -proot < docs/init.sql
|
```
|
|
`init.sql` 会重建 `traffic_audit` 库(含旧版表清理),并预置:
|
- 部门:湖北省交通运输厅
|
- 角色:三员 + 省厅业务员
|
- 账号:`admin / admin123`
|
- 6 条审核规则(RULE_001 ~ RULE_006)
|
|
## 三、启动后端
|
|
```bash
|
# 方式一:直接运行
|
mvn spring-boot:run -f traffic-audit-server/pom.xml
|
|
# 方式二:后台运行(日志写入 backend.log,已提供脚本)
|
run-backend.cmd
|
```
|
|
- 端口:`8090`
|
- 接口前缀:`/api/**`(当前为 permitAll,便于 Demo)
|
|
## 四、启动前端
|
|
```bash
|
cd traffic-audit-web
|
npm install
|
npm run serve
|
```
|
|
- 端口:`8080`
|
- 登录:`admin / admin123`
|
|
## 五、Demo 操作流程
|
|
1. 登录系统,进入「数据导入」页,按顺序导入 `docs/` 下 4 个模板:
|
- `模板_交企统H203-2表_道路货物运输月度生产情况.xlsx` → 报表期 `2026-07`
|
- `模板_运政车辆.xlsx` → 无需报表期
|
- `模板_轨迹里程.xlsx` → 报表期 `2026-07`
|
- `模板_规上规下拆分运输量.xlsx` → 报表期 `2026-06`(模板内为 2026 年 6 月当月 + 1-6 月累计)
|
2. 进入「数据审核」页,选择报表期 `2026-07`,点「执行审核」,查看问题列表,可逐条「确认/忽略」。
|
3. 进入「报表生成」页,选择报表期,下载 4 张报表:
|
- 生成_货运量周转量.xlsx(38 行 × 21 列)
|
- 生成_货运量分市州明细.xlsx(112 行 × 16 列)
|
- 生成_货运量排名.xlsx(47 行 × 18 列)
|
- 生成_周转量排名.xlsx(47 行 × 18 列)
|
|
## 六、主要接口
|
|
| 接口 | 说明 |
|
|------|------|
|
| `POST /api/import/h2032` | 导入 H203-2 月报(file + period) |
|
| `POST /api/import/transportAuth` | 导入运政车辆(file) |
|
| `POST /api/import/trackMileage` | 导入轨迹里程(file + period) |
|
| `POST /api/import/scaleSplit` | 导入规上规下拆分(file + period) |
|
| `POST /api/audit/execute?period=` | 执行审核 |
|
| `GET /api/audit/results?period=` | 查询审核结果 |
|
| `POST /api/audit/review` | 审核确认/忽略(id + status + comment) |
|
| `GET /api/report/export/freightTurnover?period=` | 生成_货运量周转量 |
|
| `GET /api/report/export/cityDetail?period=` | 生成_货运量分市州明细 |
|
| `GET /api/report/export/freightRank?period=` | 生成_货运量排名 |
|
| `GET /api/report/export/turnoverRank?period=` | 生成_周转量排名 |
|
|
## 七、数据与公式说明
|
|
- 导入采用**幂等覆盖**:同报表期重新导入会先删除旧数据。
|
- 6 条审核规则:
|
1. RULE_001 车辆数运政对比(差距 > 5 台)
|
2. RULE_002 吨位运政对比(差距 > 50 吨)
|
3. RULE_003 周转量轨迹对比(上报 / 轨迹测算 > 1.3)
|
4. RULE_004 货运类型环比(本月新增货类)
|
5. RULE_005 集装箱异常(无集装箱车但有集装箱货运量)
|
6. RULE_006 整车吨位范围(不在 4-40 吨之间)
|
- 轨迹测算周转量 = 轨迹里程 / 轨迹车辆数 ×(牵引车数 × 31 + 整车吨位),其中整车吨位 = 运政其它车辆总吨位 / 其它车辆数。
|
- 报表中 1-5 月为空属正常:当前模板只有 2026-07(H2032)与 2026-06(拆分)单月数据,按月补充数据后各月自动填充。
|
|
## 八、当前限制 / 后续规划
|
|
- 规上货运量来自 H2032 汇总(按市州),规下/合计来自拆分表(周转量口径)。
|
- 拆分模板暂为 13 列(周转量+排名+同比);代码已兼容带货运量列的 15 列扩展布局。
|
- 后续按统计调查制度扩展其他表(表名按业务编号命名,如 `h2032_enterprise_monthly`),可复用本框架的导入→审核→报表链路。
|
"""
|
path = r'C:\Users\jcxiong\Documents\Codex\MyProject\trafficAudit\docs\README.md'
|
with io.open(path, 'w', encoding='utf-8', newline='') as f:
|
f.write(content)
|
print('written:', path, len(content), 'chars')
|