Files
Bridge-and-Join-s/docs/fansy-contract/v1/ddl/001__schemas.sql
fontvielle 93bcbca12c feat(fansy-store): DDL принимающей БД + контракт данных для команды Fansy
- docs/fansy-contract/v1/ddl/000__roles.sql: роли fansy_etl, bj_reader, bj_migrator
- docs/fansy-contract/v1/ddl/001__schemas.sql: схемы fansy_staging и fansy с грантами
- docs/fansy-contract/v1/ddl/002__working.sql: рабочая схема (participants, securities, clients, client_documents, iia_contracts, settlement_requisites, depo_accounts, portfolios, etl_errors)
- docs/fansy-contract/v1/ddl/003__staging.sql: staging-зеркало с loaded_at и сниженными ограничениями
- docs/fansy-contract/v1/ddl/004__seed_participants.sql: предзаполнение справочника (НРД, БКС 5406121446, Ренессанс 7709258228, Альфа-Банк 7728168971)
- docs/fansy-contract/v1/data-dictionary.md: семантика каждого поля
- docs/fansy-contract/v1/etl-requirements.md: требования к ETL (UPSERT в staging, SLA свежести по таблицам, обработка ошибок)
- docs/fansy-contract/v1/examples/example-claim.md: SQL-запросы для формирования M2MTransferRequest
- docs/fansy-contract/v1/examples/seed-data.sql: 5 тестовых клиентов + портфели + договоры
- migrations/fansy-store/: рабочие копии миграций

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:45:37 +03:00

24 lines
1.2 KiB
SQL

-- 001__schemas.sql
-- Две схемы: fansy_staging (куда пишет ETL Fansy) и fansy (рабочая,
-- куда переливаются данные после валидации).
CREATE SCHEMA IF NOT EXISTS fansy_staging AUTHORIZATION bj_migrator;
COMMENT ON SCHEMA fansy_staging IS
'Staging-схема. ETL Fansy делает UPSERT в эти таблицы. Сюда же пишутся ошибки выгрузки.';
CREATE SCHEMA IF NOT EXISTS fansy AUTHORIZATION bj_migrator;
COMMENT ON SCHEMA fansy IS
'Рабочая схема. Сюда переливаются актуальные данные триггерами или процедурами после валидации staging.';
-- Права по ролям. DDL-права остаются только у владельца bj_migrator.
GRANT USAGE ON SCHEMA fansy_staging TO fansy_etl;
GRANT USAGE ON SCHEMA fansy TO bj_reader;
ALTER DEFAULT PRIVILEGES IN SCHEMA fansy_staging
GRANT SELECT, INSERT, UPDATE ON TABLES TO fansy_etl;
ALTER DEFAULT PRIVILEGES IN SCHEMA fansy_staging
GRANT USAGE, SELECT, UPDATE ON SEQUENCES TO fansy_etl;
ALTER DEFAULT PRIVILEGES IN SCHEMA fansy
GRANT SELECT ON TABLES TO bj_reader;