-- 三大 IP 支撑：文物回归状态 + 叙事路线（南迁之路 / 回归之路）

-- 回归状态：domestic 国内传承 / lost_overseas 流失海外 / repatriated 已回归 / in_transit 在途
ALTER TABLE artifacts ADD COLUMN IF NOT EXISTS repatriation_status VARCHAR(30) NOT NULL DEFAULT 'domestic';

-- 叙事路线（南迁、回归等）
CREATE TABLE IF NOT EXISTS narrative_routes (
  id          UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
  code        VARCHAR(50) UNIQUE NOT NULL,
  title       VARCHAR(255) NOT NULL,
  type        VARCHAR(30) NOT NULL,          -- migration（南迁）| repatriation（回归）
  color       VARCHAR(20),
  summary     TEXT,
  created_at  TIMESTAMPTZ NOT NULL DEFAULT NOW()
);

-- 路线途经点（按 seq 顺序连线）
CREATE TABLE IF NOT EXISTS route_stops (
  id          UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
  route_id    UUID NOT NULL REFERENCES narrative_routes(id) ON DELETE CASCADE,
  seq         INT NOT NULL,
  name        VARCHAR(255) NOT NULL,
  lng         DOUBLE PRECISION NOT NULL,
  lat         DOUBLE PRECISION NOT NULL,
  year_label  VARCHAR(50),
  event       TEXT
);
CREATE INDEX IF NOT EXISTS idx_route_stops_route ON route_stops(route_id, seq);
