-- ========= ЮРИДИЧЕСКИЙ ОТДЕЛ: ИСТОРИЯ ПРОВЕРОК КОНТРАГЕНТОВ ========= -- Миграция для создания таблицы истории проверок контрагентов через DaData CREATE TABLE IF NOT EXISTS counterparty_checks ( id BIGSERIAL PRIMARY KEY, inn TEXT NOT NULL, kpp TEXT, ogrn TEXT, name TEXT NOT NULL, short_name TEXT, type VARCHAR(20) CHECK (type IN ('LEGAL', 'INDIVIDUAL')), status VARCHAR(20), registration_date DATE, liquidation_date DATE, address TEXT, okved TEXT, okveds JSONB, management_name TEXT, management_post TEXT, finance_data JSONB, -- Полные финансовые данные authorities_data JSONB, -- Данные о налоговой, ПФР, ФСС phones JSONB, emails JSONB, employee_count INTEGER, risk_level VARCHAR(10) NOT NULL CHECK (risk_level IN ('low', 'medium', 'high')), risk_reasons TEXT[], raw_data JSONB, -- Полные данные от DaData checked_by TEXT, -- Кто провел проверку checked_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), notes TEXT, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); CREATE INDEX IF NOT EXISTS idx_counterparty_checks_inn ON counterparty_checks(inn); CREATE INDEX IF NOT EXISTS idx_counterparty_checks_risk_level ON counterparty_checks(risk_level); CREATE INDEX IF NOT EXISTS idx_counterparty_checks_checked_at ON counterparty_checks(checked_at DESC); CREATE INDEX IF NOT EXISTS idx_counterparty_checks_name ON counterparty_checks(name); COMMENT ON TABLE counterparty_checks IS 'История проверок контрагентов через DaData API';