Пока пользователь выделяет текст мышью (например, копирует M2M GUID), автообновление
пропускает такт: live-опрос и перезагрузка карточки по смене подписи, а также подстановка
новых строк в журнале не выполняются, пока выделение активно (window.bjSelecting). Как только
выделение снято — обновление продолжается на следующем такте.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Реализует REST-контракт ESIA Finance V1
(docs/lk-contract/v1/openapi.yaml) на стороне Bridge-and-Join-s и
admin-веб для оператора.
REST API
POST /api/v1/back_office/claims/ — приём заявки от ЛК.
Валидирует, собирает M2MTransferRequest через
m2mcore.EnrichRequest, создаёт m2mcore.Deal, отправляет в НРД
через m2mcore.NSDSender (на M2 — mock).
GET /api/v1/back_office/claims/{id} — карточка заявки.
GET /api/v1/back_office/claims — список с фильтрами
(status/investor_id/created_from/created_to/limit/offset).
PATCH /api/v1/back_office/claims/{id} — placeholder для callback
от внешней системы.
/healthz — health.
Admin web UI
/admin/ — дашборд: статус системы, счётчики (Total/Confirmed/
InProgress/Failed), последние 10 заявок.
/admin/claims — журнал всех заявок.
/admin/claims/{id} — детальная карточка: история FSM, ответ НРД
(M2MTransferResponse), решение принимающей стороны
(M2MTransferDecision), последний callback.
seedstore.go — in-memory m2mcore.FansyStore с 5 тестовыми
клиентами и счетами депо (соответствует
docs/fansy-contract/v1/examples/seed-data.sql).
types.go — DTO под OpenAPI.
http_util.go — JSON-хелперы.
Конфигурация (cmd/lk-gateway/main.go, ENV)
Переменная
По умолчанию
Назначение
BJ_HTTP_ADDR
:8080
Адрес HTTP
BJ_M2M_SENDER
MC0079200000
DeponentCode отправителя в M2M Header
BJ_M2M_RECEIVER
MC0010300000
DeponentCode получателя
BJ_DSN
—
PostgreSQL DSN (M2-шаг-3, пока пусто = in-memory)
BJ_CRYPTO_SOCKET
/run/bj/crypto.sock
UDS для crypto-service
BJ_NSD_ADAPTER_URL
—
URL nsd-adapter HTTP (пусто = mock)
BJ_LK_CALLBACK_URL
—
URL ЛК для PATCH callback'ов (пусто = эмулятор регистрирует свой)
BJ_NSD_PROFILE
demo (mock NSD)
Имя профиля (отображается в admin)
BJ_CRYPTO_PROVIDER
stub
Провайдер криптографии в admin-статусе
Что подключается в следующих шагах
M2-шаг-3: pgx-репозиторий → миграция
migrations/m2m-core/001__deals.sql уже готова.
M3: реальный nsd-adapter вместо mock — выставить
BJ_NSD_ADAPTER_URL и реализовать в nsd-adapter поллер,
отправляющий Decision не через канал mock, а через шину.
M4: admin-ui v2 на React + раздел «Сертификаты КриптоПро»
для обновления публичных сертификатов через UI.