93bcbca12c
- 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>
91 lines
6.8 KiB
PL/PgSQL
91 lines
6.8 KiB
PL/PgSQL
-- seed-data.sql
|
|
-- Тестовые данные для совместного приёмочного тестирования
|
|
-- Bridge-and-Join-s ↔ команда Fansy. Запускать поверх 002__working.sql.
|
|
|
|
SET search_path TO fansy, public;
|
|
|
|
BEGIN;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Реквизиты депозитариев
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO settlement_requisites (id, inn, display_name) VALUES
|
|
('00000000-0000-0000-0000-000000000001', '7702070139', 'Депозитарий Сбербанк'),
|
|
('00000000-0000-0000-0000-000000000002', '7802031669', 'Депозитарий СПб Банк'),
|
|
('00000000-0000-0000-0000-000000000003', '0702345678', 'Депозитарий БКС'),
|
|
('00000000-0000-0000-0000-000000000004', '0710987654', 'Депозитарий Ренессанс')
|
|
ON CONFLICT (inn) DO NOTHING;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Справочник ЦБ (минимальный)
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO securities (security_code, isin, classification, category, security_type, reg_number, display_name) VALUES
|
|
('MM0766162534', 'RU0007661625', 'SHAR', 'ORDN', 'Акция обыкновенная', '1-01-00077-A', 'Газпром ао'),
|
|
('MM0907654321', 'RU0009029540', 'SHAR', 'PREF', 'Акция привилегированная', '2-02-00009-A', 'Сбербанк ап'),
|
|
('MM2300100100', NULL, 'MFUN', 'UKWN', 'Пай ПИФ', '23-001', 'ПИФ Альфа Капитал')
|
|
ON CONFLICT (security_code) DO NOTHING;
|
|
|
|
UPDATE securities SET fund_class = 'A' WHERE security_code = 'MM2300100100';
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- 5 тестовых клиентов
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO clients (id, last_name, first_name, middle_name, birth_date) VALUES
|
|
('11111111-1111-1111-1111-111111111111', 'Иванов', 'Иван', 'Иванович', '1980-01-15'),
|
|
('22222222-2222-2222-2222-222222222222', 'Петров', 'Пётр', 'Петрович', '1985-06-20'),
|
|
('33333333-3333-3333-3333-333333333333', 'Сидоров', 'Сидор', 'Сидорович', '1990-11-30'),
|
|
('44444444-4444-4444-4444-444444444444', 'Кузнецов','Сергей','Михайлович','1975-03-10'),
|
|
('55555555-5555-5555-5555-555555555555', 'Соколова','Анна', 'Викторовна','1988-09-25')
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Документы клиентов
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO client_documents (id, client_id, document_type, series, number, issued_at, issuer) VALUES
|
|
('a0000000-0000-0000-0000-000000000001', '11111111-1111-1111-1111-111111111111', '21', '4512', '654321', '2010-05-12', 'ОУФМС России по Москве'),
|
|
('a0000000-0000-0000-0000-000000000002', '22222222-2222-2222-2222-222222222222', '21', '4513', '654322', '2011-06-13', 'ОУФМС России по Москве'),
|
|
('a0000000-0000-0000-0000-000000000003', '33333333-3333-3333-3333-333333333333', '21', '4514', '654323', '2012-07-14', 'ОУФМС России по СПб'),
|
|
('a0000000-0000-0000-0000-000000000004', '44444444-4444-4444-4444-444444444444', '03', '111', '222333', '1995-08-15', 'Свидетельство о рождении'),
|
|
('a0000000-0000-0000-0000-000000000005', '55555555-5555-5555-5555-555555555555', '21', '4516', '654325', '2014-09-16', 'ОУФМС России по СПб')
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- ИИС-договоры (для 3 клиентов)
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO iia_contracts (id, client_id, agreement_type, agreement_number, agreement_date, broker_inn) VALUES
|
|
('b0000000-0000-0000-0000-000000000001', '11111111-1111-1111-1111-111111111111', 'T03', 'ИИС78/2024', '2026-01-15', '5406121446'),
|
|
('b0000000-0000-0000-0000-000000000002', '22222222-2222-2222-2222-222222222222', 'T12', 'ИИС79/2023', '2025-12-01', '7709258228'),
|
|
('b0000000-0000-0000-0000-000000000003', '55555555-5555-5555-5555-555555555555', 'T03', 'ИИС80/2024', '2026-02-10', '7728168971')
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Депо-счета
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO depo_accounts (id, client_id, deponent_code, account_id, section_id, depository_inn, is_active, is_trading) VALUES
|
|
('c0000000-0000-0000-0000-000000000001', '11111111-1111-1111-1111-111111111111', 'DP789456', '31MC0021900000F01', 'P001', '7702070139', true, true),
|
|
('c0000000-0000-0000-0000-000000000002', '11111111-1111-1111-1111-111111111111', 'AA789451', '33MC0021900000F02', 'F002', '7802031669', true, true),
|
|
('c0000000-0000-0000-0000-000000000003', '22222222-2222-2222-2222-222222222222', 'DP100200', '31MC0010000000A01', 'A001', '7702070139', true, true),
|
|
('c0000000-0000-0000-0000-000000000004', '33333333-3333-3333-3333-333333333333', 'DP300400', '31MC0030000000B01', 'B001', '0702345678', true, true),
|
|
('c0000000-0000-0000-0000-000000000005', '55555555-5555-5555-5555-555555555555', 'DP500600', '31MC0050000000C01', 'C001', '0710987654', true, true)
|
|
ON CONFLICT (deponent_code, account_id, section_id) DO NOTHING;
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Портфели (остатки ЦБ)
|
|
-- ---------------------------------------------------------------------
|
|
|
|
INSERT INTO portfolios (id, client_id, depo_account_id, security_code, isin, quantity_whole, quantity_fractional, valued_at) VALUES
|
|
('d0000000-0000-0000-0000-000000000001', '11111111-1111-1111-1111-111111111111', 'c0000000-0000-0000-0000-000000000001', 'MM0766162534', 'RU0007661625', 1500, NULL, now()),
|
|
('d0000000-0000-0000-0000-000000000002', '11111111-1111-1111-1111-111111111111', 'c0000000-0000-0000-0000-000000000001', 'MM0907654321', 'RU0009029540', 300, NULL, now()),
|
|
('d0000000-0000-0000-0000-000000000003', '11111111-1111-1111-1111-111111111111', 'c0000000-0000-0000-0000-000000000001', 'MM2300100100', NULL, NULL, 2500.75, now()),
|
|
('d0000000-0000-0000-0000-000000000004', '22222222-2222-2222-2222-222222222222', 'c0000000-0000-0000-0000-000000000003', 'MM0766162534', 'RU0007661625', 5000, NULL, now()),
|
|
('d0000000-0000-0000-0000-000000000005', '55555555-5555-5555-5555-555555555555', 'c0000000-0000-0000-0000-000000000005', 'MM2300100100', NULL, NULL, 100.00, now())
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
COMMIT;
|