gendesign/data/sql/114_22c_flat_plans.sql
lekss361 b37e011aaa
Some checks failed
Deploy / build-frontend (push) Blocked by required conditions
Deploy / deploy (push) Blocked by required conditions
Deploy / changes (push) Successful in 5s
Deploy / build-worker (push) Has been cancelled
Deploy / build-backend (push) Has been cancelled
feat(22c): domrf_kn_flat_plans new table + parser stub (#308)
2026-05-17 15:39:34 +00:00

44 lines
2.1 KiB
PL/PgSQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- Migration 100: domrf_kn_flat_plans — планировки квартир (22c)
--
-- Хранит URL картинки планировки для каждой квартиры DOM.РФ.
-- Источник данных: каталог-квартир SSR-страница / flats_plans endpoint.
-- Скачивание бинарников — Celery task (future PR, 22d-track).
--
-- Phase 3 / #297 sub-task 22c.
BEGIN;
CREATE TABLE IF NOT EXISTS domrf_kn_flat_plans (
ods_id text PRIMARY KEY,
obj_id bigint NOT NULL,
plan_image_url text NOT NULL,
local_path text,
width_px int,
height_px int,
size_bytes int,
downloaded_at timestamptz,
snapshot_date date NOT NULL,
scraped_at timestamptz DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS domrf_kn_flat_plans_obj_idx
ON domrf_kn_flat_plans (obj_id);
COMMENT ON TABLE domrf_kn_flat_plans IS
'Планировки квартир DOM.РФ: URL изображения + метаданные после скачивания. '
'PK = ods_id (совпадает с domrf_kn_flats.ods_id). '
'Источник: каталог-квартир SSR / flats_plans endpoint. '
'Issue #297 sub-task 22c.';
COMMENT ON COLUMN domrf_kn_flat_plans.ods_id IS
'Идентификатор квартиры DOM.РФ (напр. 65136/1/1.4.3) — PK и FK на domrf_kn_flats.ods_id.';
COMMENT ON COLUMN domrf_kn_flat_plans.plan_image_url IS
'Абсолютный URL картинки планировки с сервера DOM.РФ (cdn или основной домен).';
COMMENT ON COLUMN domrf_kn_flat_plans.local_path IS
'Путь к локальной копии файла после скачивания (относительно MEDIA_ROOT или абсолютный).';
COMMENT ON COLUMN domrf_kn_flat_plans.downloaded_at IS
'Момент успешного скачивания бинарника. NULL = ещё не скачан.';
COMMENT ON COLUMN domrf_kn_flat_plans.snapshot_date IS
'Дата snapshot DOM.РФ, в котором впервые обнаружен URL.';
COMMIT;