-- 城市客运第1步（公交）建表 + 审核规则
-- 数据源：导入_城市公共交通月度运营情况（2026年7月）.xls（企业级明细，含公共汽电车/轨道/轮渡三类，本表只取公共汽电车字段）

CREATE TABLE IF NOT EXISTS city_bus_monthly (
  id BIGINT NOT NULL AUTO_INCREMENT,
  report_period VARCHAR(20) NOT NULL COMMENT '报表期 2026-07',
  region_code VARCHAR(20) DEFAULT NULL COMMENT '所属地区代码',
  city VARCHAR(50) DEFAULT NULL COMMENT '市州（由地区代码映射）',
  enterprise_code VARCHAR(50) DEFAULT NULL COMMENT '企业代码',
  enterprise_name VARCHAR(200) DEFAULT NULL COMMENT '企业名称',
  op_vehicles DOUBLE DEFAULT NULL COMMENT '公共汽电车运营车数',
  stop_total DOUBLE DEFAULT NULL COMMENT '运营站点总个数',
  stop_city DOUBLE DEFAULT NULL COMMENT '其中：城市内运营站点',
  passenger_volume DOUBLE DEFAULT NULL COMMENT '公共汽电车客运量（万人次）',
  passenger_city DOUBLE DEFAULT NULL COMMENT '其中：城市内客运量（万人次）',
  turnover DOUBLE DEFAULT NULL COMMENT '公共汽电车旅客周转量（万人公里）',
  turnover_city DOUBLE DEFAULT NULL COMMENT '其中：城市内旅客周转量（万人公里）',
  avg_distance DOUBLE DEFAULT NULL COMMENT '公共汽电车平均运距（公里）',
  avg_distance_city DOUBLE DEFAULT NULL COMMENT '城市内平均运距（公里）',
  passenger_chengxiang DOUBLE DEFAULT NULL COMMENT '城际城乡客运量（万人次）',
  turnover_chengxiang DOUBLE DEFAULT NULL COMMENT '城际城乡旅客周转量（万人公里）',
  avg_distance_chengxiang DOUBLE DEFAULT NULL COMMENT '城际城乡平均运距（公里）',
  rate_op_vehicles_mom DOUBLE DEFAULT NULL COMMENT '运营车数环比增速',
  rate_passenger_mom DOUBLE DEFAULT NULL COMMENT '客运量环比增速',
  rate_passenger_city_mom DOUBLE DEFAULT NULL COMMENT '城市内客运量环比',
  rate_chengxiang_mom DOUBLE DEFAULT NULL COMMENT '城际城乡客运量环比增速',
  rate_chengxiang_turnover_mom DOUBLE DEFAULT NULL COMMENT '城际城乡旅客周转量环比增速',
  rate_turnover_mom DOUBLE DEFAULT NULL COMMENT '旅客周转量环比增速',
  avg_distance_mom_change DOUBLE DEFAULT NULL COMMENT '平均运距环比增减（公里）',
  avg_distance_city_mom_change DOUBLE DEFAULT NULL COMMENT '城市内平均运距环比增减（公里）',
  daily_passenger_per_vehicle DOUBLE DEFAULT NULL COMMENT '单车日均客运量',
  rate_op_vehicles_yoy DOUBLE DEFAULT NULL COMMENT '运营车数同比增速',
  rate_passenger_yoy DOUBLE DEFAULT NULL COMMENT '客运量同比增速',
  rate_passenger_city_yoy DOUBLE DEFAULT NULL COMMENT '城市内客运量同比增速',
  rate_chengxiang_yoy DOUBLE DEFAULT NULL COMMENT '城际城乡客运量同比增速',
  rate_chengxiang_turnover_yoy DOUBLE DEFAULT NULL COMMENT '城际城乡旅客周转量同比增速',
  rate_turnover_yoy DOUBLE DEFAULT NULL COMMENT '旅客周转量同比增速',
  stop_city_ratio DOUBLE DEFAULT NULL COMMENT '城市内运营站点占比',
  passenger_city_ratio DOUBLE DEFAULT NULL COMMENT '城市内客运量占比',
  chengxiang_ratio DOUBLE DEFAULT NULL COMMENT '城际城乡客运量占比',
  contact_person VARCHAR(100) DEFAULT NULL COMMENT '填表人',
  contact_phone VARCHAR(50) DEFAULT NULL COMMENT '联系电话',
  report_date VARCHAR(20) DEFAULT NULL COMMENT '报出日期',
  verify_explanation TEXT COMMENT '核实性原因解释',
  report_note TEXT COMMENT '上报说明',
  modify_record TEXT COMMENT '修改记录',
  created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id),
  KEY idx_period (report_period),
  KEY idx_city (city),
  KEY idx_enterprise (enterprise_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='城市公交企业月度数据（城市公共交通月度运营情况）';

-- 城市公交 4 组审核规则（report_type=CITY_BUS）
INSERT IGNORE INTO audit_rule (rule_name, rule_code, description, check_field, compare_type, threshold, alert_level, report_type, is_enabled, sort_order) VALUES
  ('城市内与城际城乡客运量趋势一致核实', 'RULE_B001', '城市内客运量环比/同比与城际城乡客运量环比/同比趋势不一致且增速>2%需核实', 'passengerCityMom,passengerChengxiangMom,passengerCityYoy,passengerChengxiangYoy', 'TREND_CONSISTENCY', '0.02', 'YELLOW', 'CITY_BUS', 1, 51),
  ('客运量与旅客周转量趋势一致核实', 'RULE_B002', '客运量同比/环比与旅客周转量同比/环比趋势不一致需核实', 'passengerMom,turnoverMom,passengerYoy,turnoverYoy', 'TREND_CONSISTENCY', '0.02', 'YELLOW', 'CITY_BUS', 1, 52),
  ('城市内/城际城乡客运量占比变化核实', 'RULE_B003', '城市内客运量占比和城际城乡客运量占比与上月相比变化>1%需核实', 'passengerCityRatio,chengxiangRatio', 'RATIO_CHANGE', '0.01', 'YELLOW', 'CITY_BUS', 1, 53),
  ('平均运距变化幅度核实', 'RULE_B004', '平均运距与上月相比变化幅度超过3公里需核实（特别是城际城乡）', 'avgDistanceMomChange,avgDistanceCityMomChange,avgDistanceChengxiang', 'AVG_DIST_CHANGE', '3', 'YELLOW', 'CITY_BUS', 1, 54);
