ИШ: страница блокируется на время обновления, автооткат при сбое, честные статусы

- Обновление ИШ из обновления bj: страница «Шлюз НРД» (мастер и «Настройка → НРД»)
  перекрывается окном с ходом установки; успех — перезагрузка страницы, ошибка —
  текст и журнал. Статус ИШ отдаёт upgrade_to (получена версия, обновится сам) и
  installing (идёт установка) — вместо «ИШ не работает» и кнопки переустановки.
- Сбой после полного бэкапа (dpkg, запуск, движок не в Running) — bj-igate-admin
  сам откатывает ИШ к прежней версии (этап rollback); итог — ошибка «обновление до X
  не прошло: …, ИШ автоматически откатан к Y и работает». Проверено на 28
  искусственным сбоем после установки пакета.
- Откат не опускает счётчики id в базе ИШ: иначе новые пакеты получали бы уже
  виденные bj номера и поллер их пропускал.
- Автообновление ИШ после перезапуска ядра — через 20 с (было 2 мин), с повторами
  через 2 и 10 мин, если дистрибутив дописан позже. В итоге обновления bj —
  пояснение, что сам шлюз обновится через несколько минут.
- Строка версий над разделом НРД обновляется сразу при смене версии ИШ.
- Сводка «НРД → Организация» и раскрытие «Перенастроить» смотрят организацию так
  же, как bj (orgEff: введённое или из справочника по коду) — не «не задана», когда
  ИНН взят из справочника.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
This commit is contained in:
fontvielle
2026-10-21 20:15:10 +03:00
parent 41d33fefad
commit e4d7e31f7d
9 changed files with 115 additions and 21 deletions
@@ -350,7 +350,7 @@
{{template "verline" (.Versions.Get "ish")}}
{{template "nsdStatus" .}}
<div class="card">
<details class="adv-box" {{if not (and .Settings.NSD.OrgINN .Settings.NSD.OrgCode .Settings.NSD.DeponentCode .Settings.NSD.AccountID .Settings.NSD.SectionID .Settings.NSD.IGWBaseURL)}}open{{end}}>
<details class="adv-box" {{if not (and (index orgEff "INN") (index orgEff "Code") .Settings.NSD.DeponentCode .Settings.NSD.AccountID .Settings.NSD.SectionID .Settings.NSD.IGWBaseURL)}}open{{end}}>
<summary><span class="sum-h">Перенастроить</span><span class="muted">организация, реквизиты в НРД, кто отвечает на переводы, шлюз и контуры, папки шлюза по сети</span></summary>
{{template "orgSection" .}}
{{template "nsdRequisites" .}}