Подмена личности в НРД: понятный статус (кого→на кого) и явная кнопка «Выключить»

Было: на «Эмуляторы» баннер «Эмулятор НРД включён ... переключатель не выключает», и ни слова,
что для клиентов из real_nsd_test заявки идут МИМО имитатора в реальный TEST3 с подменой — и
выключить это оттуда нельзя (переключатель на другой странице). Пользователь не находил, как снять.

Теперь:
- /admin/emulators: при включённой подмене — заметный блок «Подмена личности в НРД включена»:
  по каким паспортам, в какой контур (TEST3) и от чьего имени (тест-инвестор) уходит запрос,
  плюс кнопка «Выключить подмену личности» прямо здесь.
- /admin/m2m-testing: карточка real-nsd показывает «Сейчас подменяет: паспорт X → как Y» и
  отдельную кнопку «Выключить подмену» (одним кликом), помимо чекбокса включения/списка.
- обработчик /admin/setup/lk-real-nsd honor-ит поле back и возвращает на страницу-источник,
  список паспортов при выключении сохраняется (docs передаётся скрытым полем).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
fontvielle
2026-10-13 15:37:34 +03:00
parent 2d2fbb6732
commit 6ca556c2fc
4 changed files with 36 additions and 2 deletions
@@ -16,6 +16,20 @@
{{if and .NSDEmuOn (ne .NSDEmuWhy "включена в настройках")}}
<p class="dq-warn">Сейчас имитация действует принудительно: {{.NSDEmuWhy}} — переключатель её не выключает.</p>
{{end}}
{{if .RealNSDOn}}
<div class="dq-warn" style="margin:8px 0;padding:12px 14px;border-radius:8px;background:var(--warn-weak,#fbf3d9)">
<b>⚠ Подмена личности в НРД включена</b> — для этих клиентов имитатор НЕ используется.<br>
Заявки по паспорту(ам) <code>{{.RealNSDDocs}}</code> уходят в <b>реальный тестовый НРД (TEST3)</b> с подменой на тест-инвестора <b>{{.RealNSDAs}}</b> (запрос отправляется от его имени; GUID, бумаги и счета настоящие, DEPO и QUIK МНП — боевые). Поэтому ответ приходит не от имитатора, а от реального НРД — и если на той стороне никто не отвечает, заявка ждёт.
{{if can "settings"}}
<form method="post" action="/admin/setup/lk-real-nsd" style="margin-top:10px" onsubmit="return confirm('Выключить подмену личности в НРД? Новые заявки этих клиентов снова пойдут через имитатор (а не в реальный TEST3).');">
<input type="hidden" name="back" value="/admin/emulators">
<input type="hidden" name="docs" value="{{.RealNSDDocs}}">
<button class="btn" type="submit">Выключить подмену личности</button>
</form>
<p class="muted" style="margin:6px 0 0;font-size:12px">Настроить список клиентов — на странице «Тестирование M2M».</p>
{{end}}
</div>
{{end}}
<form method="post" action="/admin/emulators/nsd" id="emu-nsd-form" class="dq">
<label style="display:flex;gap:8px;align-items:center;font-weight:600">
<input type="checkbox" name="emulate" value="1" {{if .NSDFlag}}checked{{end}}>