2025-10-24 21:24:00 +03:00
|
|
|
|
-- Создание таблицы для автосохранения драфтов форм
|
|
|
|
|
|
-- Используется для аналитики: где люди бросают заполнение
|
|
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS claims_draft (
|
|
|
|
|
|
id SERIAL PRIMARY KEY,
|
|
|
|
|
|
session_id VARCHAR(255) UNIQUE NOT NULL, -- Уникальный ID сессии браузера
|
|
|
|
|
|
current_step INTEGER NOT NULL, -- Текущий шаг формы (1, 2, 3)
|
|
|
|
|
|
form_data JSONB NOT NULL, -- Данные формы в JSON
|
|
|
|
|
|
user_agent TEXT, -- User-Agent браузера
|
|
|
|
|
|
ip_address VARCHAR(45), -- IP адрес пользователя
|
|
|
|
|
|
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
|
|
|
|
|
|
updated_at TIMESTAMP NOT NULL DEFAULT NOW()
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
-- Индексы для быстрого поиска
|
|
|
|
|
|
CREATE INDEX idx_claims_draft_session ON claims_draft(session_id);
|
|
|
|
|
|
CREATE INDEX idx_claims_draft_step ON claims_draft(current_step);
|
|
|
|
|
|
CREATE INDEX idx_claims_draft_created ON claims_draft(created_at DESC);
|
|
|
|
|
|
CREATE INDEX idx_claims_draft_updated ON claims_draft(updated_at DESC);
|
|
|
|
|
|
|
|
|
|
|
|
-- Комментарии
|
|
|
|
|
|
COMMENT ON TABLE claims_draft IS 'Автосохранение драфтов форм для аналитики';
|
|
|
|
|
|
COMMENT ON COLUMN claims_draft.session_id IS 'Уникальный ID сессии (из localStorage)';
|
|
|
|
|
|
COMMENT ON COLUMN claims_draft.current_step IS 'Номер шага где пользователь остановился';
|
|
|
|
|
|
COMMENT ON COLUMN claims_draft.form_data IS 'Все данные формы в JSON формате';
|
|
|
|
|
|
|
2025-10-25 09:27:56 +03:00
|
|
|
|
|
2025-10-25 09:56:01 +03:00
|
|
|
|
|