feat(flight-state): add V1.3.0 detail tables and domain command engine
Introduce lossless detail-table schema and FlightStateEngine command model per flight-state-design-v2 (FieldCommand, FlightNextState, collection semantics).
This commit is contained in:
@@ -0,0 +1,146 @@
|
||||
-- flight-state-design-v2 (ACM2-29): lossless detail tables + tracking columns
|
||||
|
||||
ALTER TABLE flight_schd
|
||||
ADD COLUMN IF NOT EXISTS last_message_id VARCHAR(64),
|
||||
ADD COLUMN IF NOT EXISTS state_version BIGINT NOT NULL DEFAULT 0;
|
||||
|
||||
ALTER TABLE schd_gen
|
||||
ADD COLUMN IF NOT EXISTS last_message_id VARCHAR(64);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_gate (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
gate VARCHAR(64),
|
||||
pgot VARCHAR(64),
|
||||
pgct VARCHAR(64),
|
||||
gotm VARCHAR(64),
|
||||
gctm VARCHAR(64),
|
||||
gtyp VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_checkin (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
chkc VARCHAR(64),
|
||||
ccls VARCHAR(64),
|
||||
pcot VARCHAR(64),
|
||||
pcct VARCHAR(64),
|
||||
cotm VARCHAR(64),
|
||||
cctm VARCHAR(64),
|
||||
ctyp VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_belt (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
belt VARCHAR(64),
|
||||
bcls VARCHAR(64),
|
||||
pcot VARCHAR(64),
|
||||
pcct VARCHAR(64),
|
||||
fbag VARCHAR(64),
|
||||
lbag VARCHAR(64),
|
||||
btyp VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_stand_plan (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
psst VARCHAR(64),
|
||||
stst VARCHAR(64),
|
||||
stet VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_chute (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
chut VARCHAR(64),
|
||||
chcls VARCHAR(64),
|
||||
pcbt VARCHAR(64),
|
||||
pcet VARCHAR(64),
|
||||
cbtm VARCHAR(64),
|
||||
cetm VARCHAR(64),
|
||||
chtyp VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_delay (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
code VARCHAR(64),
|
||||
strt VARCHAR(64),
|
||||
dura VARCHAR(64),
|
||||
remc VARCHAR(80),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_bridge_op (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
abdg VARCHAR(64),
|
||||
abop VARCHAR(64),
|
||||
aotm VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_chock_op (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
chid VARCHAR(64),
|
||||
chst VARCHAR(64),
|
||||
chtm VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS flight_route_point (
|
||||
flid VARCHAR(32) NOT NULL,
|
||||
ordinal INTEGER NOT NULL,
|
||||
source_seq VARCHAR(64),
|
||||
record_version BIGINT NOT NULL DEFAULT 0,
|
||||
route_kind VARCHAR(8) NOT NULL,
|
||||
apcd VARCHAR(64),
|
||||
scat VARCHAR(64),
|
||||
scdt VARCHAR(64),
|
||||
created_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
updated_at TIMESTAMP(6) WITH TIME ZONE NOT NULL,
|
||||
PRIMARY KEY (flid, ordinal)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_flight_gate_flid ON flight_gate (flid);
|
||||
CREATE INDEX IF NOT EXISTS idx_flight_checkin_flid ON flight_checkin (flid);
|
||||
CREATE INDEX IF NOT EXISTS idx_flight_belt_flid ON flight_belt (flid);
|
||||
Reference in New Issue
Block a user