- postgres-init:02 建 basicdata schema 与 25 张基础数据表(表列对齐 admin-api secondary 实体注解),03 灌双流 T2 种子(fims_* 待 Q25 不造数); 独立 schema 避免 public 非空导致 Flyway 首次 migrate 失败 - admin-mysql-init:原样引入 admin-api 仓库 adminapi_* 建表与字典/UI 种子, v0.0.2 补 FLIGHT_TASK/FLIGHT_TYPE 条目;compose 强制 utf8mb4 并设 LANG, 防 initdb 客户端落 latin1 造成中文双重编码 - es-init 一次性服务:按 admin-api mapping 建 flight_hts2(别名 flight_hts), 副本置 0 保持单节点 green - dev/mysql-init:CMINMSGS 5 条样例报文(SCHD/FLOP×2/REGN/ARPT), REGN/ARPT 标注现状预期(SKIPPED / DEAD(EXHAUSTED)) - seed-flight.sql:Flyway 建表后手动执行,8 条航班 6 场景 + 资源明细 - admin-api.yml secondary 加 currentSchema=basicdata,public - README:初始化/种子/重建卷/验收边界说明 已用 podman compose 重建数据卷全链实测;ACM2-76 有评审与验收全记录。
357 lines
12 KiB
SQL
357 lines
12 KiB
SQL
-- =====================================================================
|
||
-- deploy/integration/postgres-init/02-basicdata-schema.sql
|
||
-- 联调栈基础数据表:admin-api 只读(`C-10`)。
|
||
--
|
||
-- 权威口径:表与列直接取自 admin-api 实体
|
||
-- com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata / .schedule
|
||
-- 的 @Table / @Column 注解,不改名、不合并、不按 SIS 标签重排。
|
||
-- 基础数据数据集见 docs/requirements.md「查询侧(admin-api)的数据面」。
|
||
-- 本 schema 是 admin-api 联调的唯一测试承载;`REF_MASTER` 的物理形态
|
||
-- 仍待 `Q22` 定稿,定稿前不以本表冒充。
|
||
--
|
||
-- 为什么独立 schema 而不是 public:
|
||
-- public 由应用 Flyway 管辖,docker-entrypoint 先在里面建表会让首次
|
||
-- migrate 命中「非空 schema 无 history 表」而失败(baselineOnMigrate=false)。
|
||
-- admin-api 侧用 secondary URL 的 currentSchema=basicdata,public 解析表名。
|
||
--
|
||
-- 执行环境:docker-entrypoint-initdb.d,仅空卷首启时以 msgx_dev 运行;
|
||
-- admin_reader 角色由 01-admin-reader.sql 先建。
|
||
-- =====================================================================
|
||
|
||
CREATE SCHEMA IF NOT EXISTS basicdata;
|
||
|
||
COMMENT ON SCHEMA basicdata IS
|
||
'联调栈基础数据(admin-api 实体口径,只读;表列取自 admin-api secondary 实体注解)。';
|
||
|
||
GRANT USAGE ON SCHEMA basicdata TO admin_reader;
|
||
ALTER DEFAULT PRIVILEGES FOR ROLE msgx_dev IN SCHEMA basicdata
|
||
GRANT SELECT ON TABLES TO admin_reader;
|
||
|
||
SET search_path = basicdata;
|
||
|
||
-- ① 国家 SYS_COUNTRY(admin-api SysCountry)
|
||
CREATE TABLE sys_country (
|
||
COUNTRY_ID BIGINT NOT NULL PRIMARY KEY,
|
||
COUNTRY_CODE VARCHAR(16),
|
||
COUNTRY_NAME_CHN VARCHAR(64),
|
||
COUNTRY_NAME_ENG VARCHAR(64),
|
||
OPERATE SMALLINT
|
||
);
|
||
|
||
-- ② 城市 SYS_CITY(SysCity)
|
||
CREATE TABLE sys_city (
|
||
CITY_ID BIGINT NOT NULL PRIMARY KEY,
|
||
CITY_CODE VARCHAR(16),
|
||
CITY_ICCDE VARCHAR(16),
|
||
CITY_NAME_CHN VARCHAR(64),
|
||
CITY_NAME_ENG VARCHAR(64),
|
||
COUNTRY_ID BIGINT,
|
||
MAIN_CITY_TAG NUMERIC(18,0),
|
||
OPERATE NUMERIC(18,0),
|
||
TEL_CITY_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ③ 机场集团 SYS_AIRPORTGROUP(SysAirportGroup)
|
||
CREATE TABLE sys_airportgroup (
|
||
AIRPORT_GROUP_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRPORT_GROUP_CODE VARCHAR(16),
|
||
AIRPORT_GROUP_NAME VARCHAR(64)
|
||
);
|
||
|
||
-- ④ 机场 SYS_AIRPORT(SysAirport;haul/operate 为无注解字段,列名即字段名)
|
||
CREATE TABLE sys_airport (
|
||
AIRPORT_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRPORT_CODE VARCHAR(16),
|
||
AIRPORT_CODE_CAA VARCHAR(16),
|
||
AIRPORT_CODE_IATA VARCHAR(16),
|
||
AIRPORT_CODE_ICAO VARCHAR(16),
|
||
AIRPORT_GROUP_ID BIGINT,
|
||
AIRPORT_NAME_CHN VARCHAR(64),
|
||
AIRPORT_NAME_ENG VARCHAR(64),
|
||
BRIEF_NAME_CHN VARCHAR(64),
|
||
BRIEF_NAME_CHN_COPY VARCHAR(64),
|
||
BRIEF_NAME_ENG VARCHAR(64),
|
||
CITY_ID BIGINT,
|
||
HAUL VARCHAR(8),
|
||
HOST_FLAG NUMERIC(18,0),
|
||
INTERNATIONAL_FLAG NUMERIC(18,0),
|
||
OPERATE NUMERIC(18,0)
|
||
);
|
||
|
||
-- ⑤ 航空集团 SYS_AIRLINEGROUP(SysAirlineGroup)
|
||
CREATE TABLE sys_airlinegroup (
|
||
AIRLINE_GROUP_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRLINE_GROUP_CODE VARCHAR(16),
|
||
AIRLINE_GROUP_NAME VARCHAR(64),
|
||
AIRLINE_GROUP_CODE_CAA VARCHAR(16),
|
||
AIRLINE_GROUP_CODE_IATA VARCHAR(16),
|
||
AIRLINE_GROUP_CODE_ICAO VARCHAR(16)
|
||
);
|
||
|
||
-- ⑥ 航空公司 SYS_AIRLINE(SysAirline;code/namc/name/operate 为无注解字段)
|
||
CREATE TABLE sys_airline (
|
||
AIRLINE_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRLINE_CODE VARCHAR(16),
|
||
AIRLINE_CODE_CAA VARCHAR(16),
|
||
AIRLINE_CODE_IATA VARCHAR(16),
|
||
AIRLINE_CODE_ICAO VARCHAR(16),
|
||
AIRLINE_GROUP_ID BIGINT,
|
||
AIRLINE_NAME VARCHAR(64),
|
||
AIRLINE_NAME_ENG VARCHAR(64),
|
||
BRIEF_NAME_CHN VARCHAR(64),
|
||
BRIEF_NAME_ENG VARCHAR(64),
|
||
CODE VARCHAR(16),
|
||
COUNTRY_ID BIGINT,
|
||
HOST_FLAG NUMERIC(18,0),
|
||
INTERNATIONAL_FLAG NUMERIC(18,0),
|
||
NAMC VARCHAR(64),
|
||
NAME VARCHAR(64),
|
||
OPERATE NUMERIC(18,0),
|
||
PARENT_AIRLINE_ID BIGINT
|
||
);
|
||
|
||
-- ⑦ 机型分组 SYS_AIRCRAFTTYPEGROUP(SysAircrafttypeGroup)
|
||
CREATE TABLE sys_aircrafttypegroup (
|
||
AIRCRAFTTYPEGROUP_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRCRAFTTYPEGROUP_CODE VARCHAR(16),
|
||
AIRCRAFTTYPEGROUP_NAME VARCHAR(64)
|
||
);
|
||
|
||
-- ⑧ 机型 SYS_AIRCRAFTTYPE(SysAircrafttype;chap/operate/transitstoptime 无注解)
|
||
CREATE TABLE sys_aircrafttype (
|
||
AIRCRAFT_TYPE_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
AIRCRAFT_HEIGHT NUMERIC(18,4),
|
||
AIRCRAFT_LENGTH NUMERIC(18,4),
|
||
AIRCRAFT_TYPE_CODE_CAA VARCHAR(16),
|
||
AIRCRAFT_TYPE_CODE_IATA VARCHAR(16),
|
||
AIRCRAFT_TYPE_CODE_ICAO VARCHAR(16),
|
||
AIRCRAFT_TYPE_NAME VARCHAR(64),
|
||
AIRCRAFT_WIDTH NUMERIC(18,4),
|
||
AIRCRAFTTYPEGROUP_ID BIGINT,
|
||
CHAP VARCHAR(16),
|
||
MAX_AIRBRIDGES NUMERIC(18,0),
|
||
MAX_FREIGHT_WEIGHT NUMERIC(18,4),
|
||
MAX_PASSENGERS NUMERIC(18,0),
|
||
MAX_TAKEOFF_WEIGHT NUMERIC(18,4),
|
||
OPERATE NUMERIC(18,0),
|
||
TRANSITSTOPTIME NUMERIC(18,0)
|
||
);
|
||
|
||
-- ⑨ 机号 SYS_AIRCRAFT(SysAircraft;operate/owid 无注解)
|
||
CREATE TABLE sys_aircraft (
|
||
AIRCRAFT_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRCRAFT_NUMBER VARCHAR(32),
|
||
AIRCRAFT_OWNER_CODE VARCHAR(16),
|
||
AIRCRAFT_TYPE_CODE VARCHAR(16),
|
||
AIRLINE_CODE VARCHAR(16),
|
||
MAX_AIRBRIDGES NUMERIC(18,0),
|
||
MAX_FREIGHT_WEIGHT NUMERIC(18,4),
|
||
MAX_PASSENGERS NUMERIC(18,0),
|
||
MAX_TAKEOFF_WEIGHT NUMERIC(18,4),
|
||
OPERATE NUMERIC(18,0),
|
||
OWID NUMERIC(18,0)
|
||
);
|
||
|
||
-- ⑩ 航班类型 SYS_FLIGHT_TYPE(SysFlightType;Byte 映射 SMALLINT)
|
||
CREATE TABLE sys_flight_type (
|
||
FLIGHT_TYPE_CODE VARCHAR(8) NOT NULL PRIMARY KEY,
|
||
FLIGHT_TYPE_CAA_CODE VARCHAR(8),
|
||
FLIGHT_TYPE_NAME VARCHAR(64),
|
||
C_TAG VARCHAR(8),
|
||
VIP_TAG VARCHAR(8),
|
||
FLIGHT_TYPE_NAME_CN VARCHAR(64),
|
||
OPERATE SMALLINT
|
||
);
|
||
|
||
-- ⑪ 航班外部状态码 SYS_FLIGHT_STATUS(SysFlightStatus)
|
||
CREATE TABLE sys_flight_status (
|
||
STTC VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
ABNS VARCHAR(64),
|
||
STDC VARCHAR(64),
|
||
STTD VARCHAR(8)
|
||
);
|
||
|
||
-- ⑫ 航班代理单位 SYS_FLIGHTAGENT(SysFlightAgent)
|
||
CREATE TABLE sys_flightagent (
|
||
FLIGHTAGENT_ID VARCHAR(32) NOT NULL PRIMARY KEY,
|
||
FLIGHTAGENT_NAME VARCHAR(64),
|
||
OGID VARCHAR(32)
|
||
);
|
||
|
||
-- ⑬ 延误异常定义 FIMS_FLIGHTSTATUS_DEFINITION(FimsFlightStatusDefinition)
|
||
CREATE TABLE fims_flightstatus_definition (
|
||
FLIGHTSTATUSDEF_REC_ID BIGINT NOT NULL PRIMARY KEY,
|
||
FLIGHT_STATUS VARCHAR(16),
|
||
FLIGHT_STATUS_TYPE VARCHAR(16),
|
||
FLIGHT_STATUS_DESC VARCHAR(128),
|
||
ENABLED_FLAG VARCHAR(16),
|
||
DCOD VARCHAR(16),
|
||
DCDN BIGINT,
|
||
DDES VARCHAR(128),
|
||
DDSC VARCHAR(128),
|
||
OPERATE SMALLINT
|
||
);
|
||
|
||
-- ⑭ 航站楼 ORMS_TERMINAL(OrmsTerminal;operate 无注解)
|
||
CREATE TABLE orms_terminal (
|
||
TERMINAL_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
OPERATE NUMERIC(18,0),
|
||
TERMINAL_NAME VARCHAR(64)
|
||
);
|
||
|
||
-- ⑮ 航站楼区域 ORMS_TERMINALAREA(OrmsTerminalarea)
|
||
CREATE TABLE orms_terminalarea (
|
||
TERMINAL_AREA_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
ROUTE_TYPE VARCHAR(8),
|
||
TERMINAL_AREA_NAME VARCHAR(64),
|
||
TERMINAL_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ⑯ 机位类型 ORMS_STANDTYPE(OrmsStandType)
|
||
CREATE TABLE orms_standtype (
|
||
STAND_TYPE VARCHAR(32) NOT NULL PRIMARY KEY,
|
||
STAND_TYPE_DESC VARCHAR(64)
|
||
);
|
||
|
||
-- ⑰ 机位 ORMS_STAND(OrmsStand;ddgt/digt/maxflightnum/operate/satc/stml 无注解)
|
||
CREATE TABLE orms_stand (
|
||
STAND_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
CURRENT_FLIGHT_ID BIGINT,
|
||
DDGT VARCHAR(16),
|
||
DIGT VARCHAR(16),
|
||
FSTAND_CODE VARCHAR(16),
|
||
ICON_LENGTH NUMERIC(18,4),
|
||
ICON_WIDTH NUMERIC(18,4),
|
||
LSTAND_CODE VARCHAR(16),
|
||
MAX_PERMIT NUMERIC(18,0),
|
||
MAXFLIGHTNUM NUMERIC(18,0),
|
||
OPERATE NUMERIC(18,0),
|
||
PIER_CODE VARCHAR(16),
|
||
POS_X NUMERIC(18,4),
|
||
POS_Y NUMERIC(18,4),
|
||
RSTAND_CODE VARCHAR(16),
|
||
SATC VARCHAR(16),
|
||
STAND_AREA_CODE VARCHAR(16),
|
||
STAND_LAYOUTED NUMERIC(18,0),
|
||
STAND_LENGTH NUMERIC(18,4),
|
||
STAND_NAME VARCHAR(64),
|
||
STAND_ORDER NUMERIC(18,0),
|
||
STAND_STATUS NUMERIC(18,0),
|
||
STAND_TYPE VARCHAR(16),
|
||
STAND_WIDTH NUMERIC(18,4),
|
||
STML VARCHAR(16),
|
||
TERMINAL_AREA_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ⑱ 机位廊桥 ORMS_STAND_AIRBRIDGE(OrmsStandAirbridge + OrmsStandAirbridgePK)
|
||
CREATE TABLE orms_stand_airbridge (
|
||
STAND_CODE VARCHAR(16) NOT NULL,
|
||
AIRBRIDGE_CODE VARCHAR(16) NOT NULL,
|
||
PRIMARY KEY (STAND_CODE, AIRBRIDGE_CODE)
|
||
);
|
||
|
||
-- ⑲ 登机门 ORMS_GATE(OrmsGate;gtml/operate 无注解)
|
||
CREATE TABLE orms_gate (
|
||
GATE_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
ACTION_ORDER NUMERIC(18,0),
|
||
GATE_CATEGORY VARCHAR(8),
|
||
GATE_NAME VARCHAR(64),
|
||
GATE_STATUS NUMERIC(18,0),
|
||
GATE_TYPE VARCHAR(8),
|
||
GTML VARCHAR(16),
|
||
ICON_LENGTH NUMERIC(18,4),
|
||
ICON_WIDTH NUMERIC(18,4),
|
||
OPERATE NUMERIC(18,0),
|
||
PIER_CODE VARCHAR(16),
|
||
POS_X NUMERIC(18,4),
|
||
POS_Y NUMERIC(18,4),
|
||
STAND_LAYOUTED NUMERIC(18,0),
|
||
TERMINAL_AREA_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ⑳ 行李滑槽 ORMS_CHUT(OrmsChut;bcat/btml/operate 无注解)
|
||
CREATE TABLE orms_chut (
|
||
CHUT_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
BCAT VARCHAR(16),
|
||
BTML VARCHAR(16),
|
||
CHUT_LENGTH NUMERIC(18,4),
|
||
CHUT_NAME VARCHAR(64),
|
||
CHUT_STATUS VARCHAR(8),
|
||
OPERATE NUMERIC(18,0)
|
||
);
|
||
|
||
-- ㉑ 值机柜台 ORMS_CHECKINDESK(OrmsCheckindesk;ccat/ctra/operate 无注解)
|
||
CREATE TABLE orms_checkindesk (
|
||
CHECKINDESK_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
CCAT VARCHAR(16),
|
||
CHECKIN_GROUP_CODE VARCHAR(16),
|
||
CHECKINDESK_NAME VARCHAR(64),
|
||
CHECKINDESK_STATUS VARCHAR(8),
|
||
CHUT_CODE VARCHAR(16),
|
||
CTRA VARCHAR(8),
|
||
NEXTCHECKINDESK_CODE VARCHAR(16),
|
||
OPERATE NUMERIC(18,0),
|
||
TERMINAL_AREA_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ㉒ 值机岛 ORMS_CHECKIN_GROUP(CheckinGroup)
|
||
CREATE TABLE orms_checkin_group (
|
||
CHECKIN_GROUP_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
CHECKIN_GROUP_NAME VARCHAR(64)
|
||
);
|
||
|
||
-- ㉓ 行李转盘 ORMS_CAROUSEL(OrmsCarousel;bcls 无注解)
|
||
CREATE TABLE orms_carousel (
|
||
CAROUSEL_CODE VARCHAR(16) NOT NULL PRIMARY KEY,
|
||
ACTION_ORDER NUMERIC(18,0),
|
||
BCLS VARCHAR(16),
|
||
CAROUSEL_NAME VARCHAR(64),
|
||
CAROUSEL_STATUS VARCHAR(32),
|
||
ICON_LENGTH NUMERIC(18,4),
|
||
ICON_WIDTH NUMERIC(18,4),
|
||
POS_X NUMERIC(18,4),
|
||
POS_Y NUMERIC(18,4),
|
||
STAND_LAYOUTED NUMERIC(18,0),
|
||
TERMINAL_AREA_CODE VARCHAR(16)
|
||
);
|
||
|
||
-- ㉔ 季度计划 FIMS_FLIGHTSCHD_SEASON(FimsFlightschdSeason;remarks 无注解)
|
||
-- 供数方待定(`Q25`),本轮只建空表,不造数。
|
||
CREATE TABLE fims_flightschd_season (
|
||
SEASONFLIGHT_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRCRAFT_TYPE_CODE VARCHAR(16),
|
||
AIRLINE_ID BIGINT,
|
||
ARRI_OR_DEPT VARCHAR(4),
|
||
ARRIVAL_TIME VARCHAR(8),
|
||
DEPARTURE_TIME VARCHAR(8),
|
||
END_AIRPORT VARCHAR(16),
|
||
END_DATE DATE,
|
||
FLIGHT_NUMBER VARCHAR(16),
|
||
FLIGHT_TASK VARCHAR(16),
|
||
FLIGHT_TYPE_CODE VARCHAR(8),
|
||
FLYING_DISTANCE NUMERIC(18,4),
|
||
FLYING_TIME NUMERIC(18,4),
|
||
INTERNATIONAL_CODE VARCHAR(8),
|
||
OPERATION_DAYS VARCHAR(32),
|
||
REMARKS VARCHAR(256),
|
||
ROUTE_TYPE VARCHAR(8),
|
||
SEASON_NAME VARCHAR(32),
|
||
SEASON_REC_ID BIGINT,
|
||
START_AIRPORT VARCHAR(16),
|
||
START_DATE DATE,
|
||
SUB_AIRLINE_ID BIGINT
|
||
);
|
||
|
||
-- ㉕ 季度计划经停 FIMS_MIDAIRPORTS_SEASON(FimsMidairportsSeason;orderno 无注解)
|
||
CREATE TABLE fims_midairports_season (
|
||
MIDAIRPORTS_REC_ID BIGINT NOT NULL PRIMARY KEY,
|
||
AIRPORT_ID BIGINT,
|
||
ARRIVAL_TIME VARCHAR(8),
|
||
DEPARTURE_TIME VARCHAR(8),
|
||
ORDERNO NUMERIC(18,0),
|
||
SEASONFLIGHT_ID BIGINT
|
||
);
|
||
|
||
CREATE INDEX idx_fims_midairports_season_flight
|
||
ON fims_midairports_season (SEASONFLIGHT_ID);
|