-- 城市客运第2步（巡游出租）建表 + 审核规则
-- 数据源1：导入_巡游出租汽车运营服务情况月报（2026年7月）.xls（市州级，17行）
-- 数据源2：输入_出租车信息(运政车辆信息).xls（车辆级明细 42636 行）

CREATE TABLE IF NOT EXISTS city_taxi_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 '市州',
  trip_total DOUBLE DEFAULT NULL COMMENT '载客车次总数',
  trip_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 '旅客周转量_城市内',
  op_vehicles DOUBLE DEFAULT NULL COMMENT '运营车辆数',
  avg_distance DOUBLE DEFAULT NULL COMMENT '巡游出租汽车平均运距（公里）',
  avg_distance_city DOUBLE DEFAULT NULL COMMENT '城市内平均运距（公里）',
  daily_trips_per_vehicle DOUBLE DEFAULT NULL COMMENT '单车日均载客车次',
  daily_passenger_per_vehicle DOUBLE DEFAULT NULL COMMENT '单车日均客运量',
  passengers_per_trip DOUBLE DEFAULT NULL COMMENT '单车次载客人数',
  passengers_per_trip_city DOUBLE DEFAULT NULL COMMENT '单车次载客人数_城市内',
  passengers_per_trip_chengxiang DOUBLE DEFAULT NULL COMMENT '单车次载客人数_城际城乡',
  rate_op_vehicles_mom DOUBLE DEFAULT NULL COMMENT '运营车数环比增速',
  rate_op_vehicles_yoy DOUBLE DEFAULT NULL COMMENT '运营车数同比增速',
  rate_trip_mom DOUBLE DEFAULT NULL COMMENT '载客车次总数环比增速',
  rate_trip_yoy DOUBLE DEFAULT NULL COMMENT '载客车次同比增速',
  rate_passenger_mom DOUBLE DEFAULT NULL COMMENT '客运量环比增速',
  rate_passenger_yoy DOUBLE DEFAULT NULL COMMENT '客运量同比增速',
  avg_distance_mom_change DOUBLE DEFAULT NULL COMMENT '平均运距环比增减（公里）',
  avg_distance_city_mom_change DOUBLE DEFAULT NULL COMMENT '平均运距_城市内环比增减（公里）',
  rate_trip_city_mom DOUBLE DEFAULT NULL COMMENT '载客车次总数环比增速_城市内',
  rate_passenger_city_mom DOUBLE DEFAULT NULL COMMENT '客运量环比增速_城市内',
  rate_trip_chengxiang_mom DOUBLE DEFAULT NULL COMMENT '载客车次总数_城际城乡环比增速',
  rate_passenger_chengxiang_mom DOUBLE DEFAULT NULL COMMENT '客运量_城际城乡环比增速',
  avg_distance_chengxiang DOUBLE DEFAULT NULL COMMENT '平均运距_城际城乡（公里）',
  trip_city_ratio DOUBLE DEFAULT NULL COMMENT '载客车次总数_城市内占比',
  passenger_city_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)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='巡游出租汽车运营服务情况月报（市州级）';

CREATE TABLE IF NOT EXISTS city_taxi_auth (
  id BIGINT NOT NULL AUTO_INCREMENT,
  report_period VARCHAR(20) NOT NULL COMMENT '报表期 2026-07',
  city VARCHAR(50) DEFAULT NULL COMMENT '市州（由证号/档案号/地址提取）',
  plate_no VARCHAR(30) DEFAULT NULL COMMENT '车牌号码',
  vehicle_type VARCHAR(50) DEFAULT NULL COMMENT '车辆类型',
  biz_type VARCHAR(50) DEFAULT NULL COMMENT '经营类型',
  owner_name VARCHAR(100) DEFAULT NULL COMMENT '车主名称',
  license_no VARCHAR(100) DEFAULT NULL COMMENT '经营权号',
  archive_no VARCHAR(100) DEFAULT NULL COMMENT '档案号',
  road_cert_no VARCHAR(100) DEFAULT NULL COMMENT '道路运输证字号',
  fuel_type VARCHAR(50) DEFAULT NULL COMMENT '燃料类型',
  operator_name VARCHAR(200) DEFAULT NULL COMMENT '业户名称',
  operator_addr VARCHAR(300) DEFAULT NULL COMMENT '业户地址',
  op_status VARCHAR(20) DEFAULT NULL COMMENT '营运状态',
  cert_status VARCHAR(20) DEFAULT NULL COMMENT '证件状态',
  created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id),
  KEY idx_period (report_period),
  KEY idx_city (city),
  KEY idx_period_city (report_period, city)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='出租车运政车辆信息（车辆级明细）';

-- 城市客运第2步：巡游出租 7 组审核规则（report_type=CITY_TAXI）
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_T001', '月报运营车辆数与运政系统车辆数差距>3%需核实', 'opVehicles', 'CROSS_DIFF_PCT', '3', 'RED', 'CITY_TAXI', 1, 61),
  ('城市内与城际城乡客运量趋势一致核实', 'RULE_T002', '城市内客运量环比与城际城乡客运量环比趋势不一致且增速>2%需核实', 'passengerCityMom,passengerChengxiangMom', 'TREND_CONSISTENCY', '0.02', 'YELLOW', 'CITY_TAXI', 1, 62),
  ('客运量与旅客周转量趋势一致核实', 'RULE_T003', '客运量环比与旅客周转量环比（由平均运距推导）趋势不一致需核实', 'passengerMom,turnoverMomDerived', 'TREND_CONSISTENCY', '0.02', 'YELLOW', 'CITY_TAXI', 1, 63),
  ('城市内客运量占比变化核实', 'RULE_T004', '城市内客运量占比与上月相比变化>1%需核实', 'passengerCityRatio', 'RATIO_CHANGE', '0.01', 'YELLOW', 'CITY_TAXI', 1, 64),
  ('平均运距变化幅度核实', 'RULE_T005', '平均运距与上月相比变化超过3公里需核实（特别是城际城乡）', 'avgDistanceMomChange,avgDistanceCityMomChange,avgDistanceChengxiang', 'AVG_DIST_CHANGE', '3', 'YELLOW', 'CITY_TAXI', 1, 65),
  ('单车次载客人数系数变化核实', 'RULE_T006', '单车次载客人数=客运量/载客车次总数，与上月相比变化>0.2需核实', 'passengersPerTrip', 'PAX_PER_TRIP_CHANGE', '0.2', 'YELLOW', 'CITY_TAXI', 1, 66),
  ('载客车次总数与客运量趋势一致核实', 'RULE_T007', '载客车次总数环比/同比与客运量环比/同比趋势不一致需核实', 'tripMom,passengerMom,tripYoy,passengerYoy', 'TREND_CONSISTENCY', '0.01', 'YELLOW', 'CITY_TAXI', 1, 67);
