# 数据库表结构设计 v3 ## 〇、报表体系总览(交通运输企业统计调查制度) Demo 阶段仅处理 **交企统H203-2表**,后续陆续扩展。 ### 年报(10张) | 表号 | 表名 | 说明 | |------|------|------| | 交企统101表 | 单位基本情况 | | | 交企统102表 | 法人企业财务状况 | | | 交企统U103-1表 | 公共汽电车运营情况 | | | 交企统U103-2表 | 城市轨道交通车辆及线路情况 | | | 交企统U103-3表 | 城市轨道交通人员及运营情况 | | | 交企统U103-4表 | 城市客运轮渡运营情况 | | | 交企统U104表 | 公共交通能源消耗情况 | | | 交企统H104-1表 | 公路旅客运输能源消耗情况 | | | 交企统W104表 | 水路运输能源消耗情况 | | | 交企统P104表 | 港口能源消耗情况 | | ### 月报/季报(14张) | 表号 | 表名 | 周期 | Demo | |------|------|------|------| | 交企统202表 | 法人企业季度财务状况 | 季报 | | | 交企统H203-1表 | 公路旅客运输月度生产情况 | 月报 | | | **交企统H203-2表** | **道路货物运输月度生产情况** | **月报** | **v1** | | 交企统U203表 | 公共交通月度运营情况 | 月报 | | | 交企统W203表 | 水路运输月度生产情况 | 月报 | | | 交企统P203-1表 | 港口分航线进出港旅客人数 | 月报 | | | 交企统P203-2表 | 港口分货类吞吐量 | 月报 | | | 交企统P203-3表 | 港口集装箱吞吐量 | 月报 | | | 交企统P203-4表 | 一箱制集装箱铁水联运量 | 月报 | | | 交企统P203-5表 | 港口分货类分运输方式集疏运情况 | 季报 | | | 交企统H204表 | 道路货运车辆能源消耗情况 | 季报 | | | 交企统205表 | 企业运行景气状况 | 月报 | | | 交企统W206表 | 船舶受电设施安装使用情况 | 半年报 | | | 交企统P206表 | 港口岸电设施建设使用情况 | 月/半年报 | | --- ## 一、用户权限模块(含三员) ### sys_user 用户表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | username | varchar(50) | 登录名 | | password | varchar(200) | BCrypt | | real_name | varchar(50) | 真实姓名 | | phone | varchar(20) | 手机号 | | dept_id | bigint | 部门ID | | status | tinyint | 0禁用 1启用 | ### sys_role 角色表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | role_name | varchar(50) | 角色名 | | role_code | varchar(50) | SYS_ADMIN/SEC_OFFICER/AUDITOR/PROVINCE/CITY/COUNTY | | role_type | varchar(20) | SYSTEM(三员) / BUSINESS(业务) | | role_level | tinyint | 0三员 1省厅 2市局 3县区 | | is_mutex | tinyint | 1三员互斥 0普通 | ### sys_dept 部门表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | dept_name | varchar(100) | 部门名称 | | dept_code | varchar(20) | 行政区划代码 | | parent_id | bigint | 上级部门 | | dept_level | tinyint | 1省 2市 3县 | ### 三员约束规则 - sys_role 中 role_type=SYSTEM + is_mutex=1 的角色为三员角色 - 用户分配角色时后端校验:三员角色最多1个 - 删除三员角色用户时,检查该三员是否还有其它用户持有 --- ## 二、业务数据模块 ### h2032_enterprise_monthly(交企统H203-2表 道路货物运输月度生产情况) > 数据来源:模板_交企统H203-2表_道路货物运输月度生产情况.xlsx | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | report_period | varchar(20) | 报表期 2026-06 | | region_code | varchar(20) | 所属地区(行政区划代码) | | enterprise_code | varchar(50) | 企业代码 | | enterprise_name | varchar(200) | 企业名称 | | unified_credit_code | varchar(50) | 统一社会信用代码 | | report_unit | varchar(200) | 填报单位 | | vehicle_total | int | 车辆数_总计 | | tons_total | double | 标记吨位数_总计 | | vehicle_tractor | int | 车辆数_牵引车 | | vehicle_trailer | int | 车辆数_挂车 | | tons_trailer | double | 标记吨位数_挂车 | | vehicle_container | int | 车辆数_集装箱车 | | tons_container | double | 标记吨位数_集装箱车 | | vehicle_whole | int | 车辆数_整车 | | tons_whole | double | 标记吨位数_整车 | | freight_total | double | 货运量_总计(吨) | | turnover_total | double | 货物周转量_总计(吨公里) | | freight_container | double | 货运量_集装箱(吨) | | freight_coal | double | 货运量_煤炭及制品(吨) | | freight_oil_gas | double | 货运量_石油天然气及制品(吨) | | freight_crude_oil | double | 货运量_其中原油(吨) | | freight_metal_ore | double | 货运量_金属矿石(吨) | | freight_iron_ore | double | 货运量_其中铁矿石(吨) | | freight_building | double | 货运量_矿物性建筑材料(吨) | | freight_grain | double | 货运量_粮食(吨) | | avg_tonnage | double | 货车平均吨位 | | avg_tonnage_trailer | double | 平均吨位_挂车 | | avg_tonnage_whole | double | 平均吨位_整车 | | avg_distance | double | 货车平均运距(公里) | | daily_trips_per_ton | double | 单吨日均载运次数 | | daily_mileage_per_vehicle | double | 单车单天行驶里程(公里) | | daily_volume_per_vehicle | double | 单车日均运量(吨) | | daily_trips_with_tractor | double | 单吨日均载运次数(结合牵引车) | | vehicle_mom_growth | double | 车辆数-总计环比增速 | | tons_mom_growth | double | 标记吨位-总计环比增速 | | freight_mom_growth | double | 货运量-总计环比增速 | | turnover_mom_growth | double | 货物周转量-总计环比增速 | | avg_distance_mom_growth | double | 货车平均运距-环比增速 | | vehicle_yoy_growth | double | 车辆数-总计同比增速 | | tons_yoy_growth | double | 标记吨位-总计同比增速 | | tractor_trailer_ratio | double | 牵引车挂车比 | | freight_yoy_growth | double | 货运量-总计同比增速 | | turnover_yoy_growth | double | 货物周转量-总计同比增速 | | avg_distance_yoy_growth | double | 货车平均运距-同比增速 | | unit_leader | varchar(50) | 单位负责人 | | stats_leader | varchar(50) | 统计负责人 | | contact_person | varchar(50) | 填表人 | | contact_phone | varchar(20) | 联系电话 | | report_date | date | 报出日期 | | verify_explanation | text | 核实性原因解释 | | report_notes | varchar(200) | 上报说明 | | modify_record | text | 修改记录 | | import_batch_id | bigint | 导入批次 | | created_at | datetime | 创建时间 | ### transport_auth_vehicle(运政车辆数据) > 数据来源:模板_运政车辆.xlsx | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | report_period | varchar(20) | 报表期 | | enterprise_name | varchar(200) | 企业名称 | | tractor_count | int | 总牵引车数 | | trailer_count | int | 总挂车数 | | other_count | int | 其它车辆数 | | trailer_tons | double | 挂车总吨位(吨) | | other_tons | double | 其它车辆总吨位(吨) | | import_batch_id | bigint | 导入批次 | | created_at | datetime | 创建时间 | ### vehicle_track_mileage(车辆轨迹里程) > 数据来源:模板_轨迹里程.xlsx | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | enterprise_name | varchar(200) | 企业名称 | | monthly_mileage | double | 月度总里程(公里) | | tracked_vehicles | int | 有里程的车辆数 | | report_period | varchar(20) | 报表期 | | import_batch_id | bigint | 导入批次 | | created_at | datetime | 创建时间 | ### scale_split_transport(规上规下拆分运输量) > 数据来源:模板_规上规下拆分运输量.xlsx,用户手动上传 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | report_period | varchar(20) | 报表期 2026-06 | | period_type | varchar(10) | MONTH(当月)/ CUMULATIVE(累计) | | region_name | varchar(50) | 市州名称 | | above_scale_freight | double | 规上货运量 | | above_scale_turnover | double | 规上周转量 | | above_scale_rank | int | 规上排名 | | above_scale_yoy | double | 规上同比 | | above_scale_yoy_rank | int | 规上增速排名 | | below_scale_freight | double | 规下货运量 | | below_scale_turnover | double | 规下周转量 | | below_scale_rank | int | 规下排名 | | below_scale_yoy | double | 规下同比 | | below_scale_yoy_rank | int | 规下增速排名 | | total_freight | double | 运输量合计-货运量 | | total_turnover | double | 运输量合计-周转量 | | total_rank | int | 合计排名 | | total_yoy | double | 合计同比 | | total_yoy_rank | int | 合计增速排名 | | import_batch_id | bigint | 导入批次 | | created_at | datetime | 创建时间 | ### freight_turnover_import(模板_货运量周转量导入) > 数据来源:模板_货运量周转量.xlsx,每月导入。每行含 48 个月度列:货运量今年 1-12 月(左半,仅 1-N 月有值)、去年 1-12 月(右半,算同比)、周转量今年/去年(导入存档,报表周转量仍用拆分表) | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | report_period | varchar(20) | 报表期 2026-06(N=月份数) | | region_name | varchar(50) | 市州或湖北省(忠实导入) | | freight_m01 ~ freight_m12 | double | 今年各月货运量(万吨),左半 1-N 月有值 | | last_freight_m01 ~ last_freight_m12 | double | 去年各月货运量(万吨),右半固定 12 个月 | | turnover_m01 ~ turnover_m12 | double | 今年各月周转量(万吨公里),导入存档 | | last_turnover_m01 ~ last_turnover_m12 | double | 去年各月周转量(万吨公里),导入存档 | | import_batch_id | bigint | 导入批次 | | created_at | datetime | 创建时间 | --- ## 三、审核规则模块 ### audit_rule 审核规则表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | rule_name | varchar(100) | 规则名称 | | rule_code | varchar(50) | 规则编码 | | description | text | 规则描述 | | check_field | varchar(200) | 检查字段 | | compare_type | varchar(20) | >/5 → RED) 2. 吨位运政对比(DIFF>50 → RED) 3. 周转量轨迹对比(RATIO>1.3 → RED) 4. 货运类型环比(MOM → YELLOW) 5. 集装箱异常(NULL_CHECK → RED) 6. 整车吨位范围(OUT_RANGE 不在4-40之间 → YELLOW) ## 四、审核结果模块 ### audit_result 审核结果表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | rule_id | bigint | FK → audit_rule | | report_id | bigint | FK → h2032_enterprise_monthly | | enterprise_code | varchar(50) | 企业代码 | | report_period | varchar(20) | 报表期 | | actual_value | varchar(200) | 实际值 | | threshold_value | varchar(200) | 阈值 | | deviation | varchar(200) | 偏差 | | status | varchar(20) | PENDING/CONFIRMED/IGNORED | | reviewer_id | bigint | 审核人 | | review_comment | text | 意见 | | created_at | datetime | 创建时间 | ### audit_explanation 审核解释表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | audit_result_id | bigint | FK → audit_result | | explanation_text | text | 上报人解释 | | llm_suggestion | text | LLM建议 | | llm_confidence | decimal(5,2) | 置信度 | | llm_status | varchar(20) | PENDING/PROCESSED/FAILED | --- ## 五、报表生成模块 > 以下4张输出表由系统根据导入数据自动计算生成,用户点击"生成报表"触发。 | 输出文件 | 数据来源 | 说明 | |------|------|------| | 生成_货运量分市州明细.xlsx | freight_turnover_import + h2032_enterprise_monthly + scale_split_transport | 1-N月明细+同比;货运量合计=模板、规上=H2032、规下=合计-规上;周转量=拆分表 | | 生成_货运量排名.xlsx | freight_turnover_import + h2032_enterprise_monthly | 规上=H2032累计、合计=模板累计、规下=合计-规上 | | 生成_周转量排名.xlsx | scale_split_transport | 规上/规下/合计周转量排名(含忠实导入的全省行) | ## 六、系统日志 ### sys_operation_log 操作日志表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | user_id | bigint | 操作人 | | module | varchar(50) | 模块 | | action | varchar(50) | 操作 | | detail | text | 详情JSON | | ip_address | varchar(50) | IP | ### import_batch 导入批次表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | file_name | varchar(200) | 文件名 | | import_type | varchar(50) | H2032 / TRANSPORT_AUTH / TRACK_MILEAGE / SCALE_SPLIT | | total_rows | int | 总行数 | | success_rows | int | 成功行数 | | fail_rows | int | 失败行数 | | error_detail | text | 错误详情 | | created_at | datetime | 创建时间 | ## 七、LLM脱敏映射 ### llm_desensitize_map 脱敏映射表 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | PK | | original_value | varchar(200) | 原始值 | | masked_value | varchar(200) | 脱敏值 | | mask_type | varchar(20) | ENTERPRISE/REGION | | call_id | varchar(50) | 调用ID |