From 8084fac40322225253ceea91e23a19bc153c948e Mon Sep 17 00:00:00 2001
From: zuevav
Date: Tue, 6 Oct 2026 17:11:14 +0300
Subject: [PATCH] =?UTF-8?q?QUIK:=20=D0=B8=D0=BC=D1=8F=20=D0=B1=D0=B0=D0=B7?=
=?UTF-8?q?=D1=8B=20=D0=9C=D0=9D=D0=9F=20=D0=BE=D0=B1=D1=8F=D0=B7=D0=B0?=
=?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D0=BE,=20=D0=B4=D0=BE=D0=B2?=
=?UTF-8?q?=D0=B5=D1=80=D0=B8=D0=B5=20=D1=81=D0=B5=D1=80=D1=82=D0=B8=D1=84?=
=?UTF-8?q?=D0=B8=D0=BA=D0=B0=D1=82=D1=83=20=D0=BF=D0=BE=20=D1=83=D0=BC?=
=?UTF-8?q?=D0=BE=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E,=20=D0=BF=D0=B0?=
=?UTF-8?q?=D0=BC=D1=8F=D1=82=D0=BA=D0=B0=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82?=
=?UTF-8?q?=D0=BE=20=D0=BF=D1=83=D1=81=D1=82=D1=8B=D1=85=20=D1=81=D1=81?=
=?UTF-8?q?=D1=8B=D0=BB=D0=BE=D0=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- «База МНП» — в основной строке рядом с сервером и портом, обязательна (без неё
модуль не подключается); «Дополнительно» — только шифрование.
- «Доверять сертификату сервера» включено по умолчанию у ненастроенного QUIK
(у QUIK сертификат свой, не на IP).
- Строка версий над разделом обновляется сразу после проверки подключения
(раньше — через 10 минут показывала старую ошибку).
- «что ему настроить · документы ARQA» вели в никуда (техническая справка не
входит в рабочую сборку, документов ARQA на сервере клиента нет): вместо них
«Памятка администратору QUIK» — и в мастере, и в «Настройке».
- Ссылки на техническую справку (Валидата, события bj2depo) — только в сборке
со справкой; «Инструкция по размещению» ЛК вела на несуществующую страницу.
Co-Authored-By: Claude Opus 5.5
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
---
internal/lkgateway/quikdb_handlers.go | 5 ++++
.../web/templates/admin_fancy_queue.html | 4 +--
.../lkgateway/web/templates/admin_setup.html | 4 +--
.../lkgateway/web/templates/admin_wizard.html | 17 ++----------
.../lkgateway/web/templates/part_quik.html | 27 ++++++++++++++-----
5 files changed, 32 insertions(+), 25 deletions(-)
diff --git a/internal/lkgateway/quikdb_handlers.go b/internal/lkgateway/quikdb_handlers.go
index 696be48..9e8f7fa 100644
--- a/internal/lkgateway/quikdb_handlers.go
+++ b/internal/lkgateway/quikdb_handlers.go
@@ -195,6 +195,10 @@ func (h *setupHandlers) saveQuik(w http.ResponseWriter, r *http.Request) {
setupFlash(w, r, "QUIK МНП: укажите адрес сервера и логин")
return
}
+ if s.Database == "" { // без имени базы модуль не подключается (база логина по умолчанию — не она)
+ setupFlash(w, r, "QUIK МНП: укажите имя базы модуля неторговых поручений — его сообщает администратор QUIK")
+ return
+ }
if err := h.rc.UpdateQuik(s); err != nil {
setupFlash(w, r, "QUIK МНП: ошибка сохранения: "+err.Error())
return
@@ -245,6 +249,7 @@ func (h *setupHandlers) testQuik(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(&b, "----------------------------------------\n")
res, err := quikProbe(r.Context(), s)
+ go refreshVersions(h.rc) // строка версий над разделом — по новому подключению, а не через 10 минут
if err != nil {
fmt.Fprintf(&b, "РЕЗУЛЬТАТ: ОШИБКА ПОДКЛЮЧЕНИЯ\n\n")
b.WriteString(quikErrorDetail(err))
diff --git a/internal/lkgateway/web/templates/admin_fancy_queue.html b/internal/lkgateway/web/templates/admin_fancy_queue.html
index 1e8703f..6cb0db4 100644
--- a/internal/lkgateway/web/templates/admin_fancy_queue.html
+++ b/internal/lkgateway/web/templates/admin_fancy_queue.html
@@ -13,7 +13,7 @@
bj2depo процедура FTV_M2M_JOB ({{.JobMode}}) читает события, создаёт документ 16/16-1 в DEPO, отвечает DEPO_ORDER_CREATED (номер документа) или DEPO_ERROR →
документ bj следит за состоянием документа (OD_DOCS: начальный ввод → конец обработки / отмена) и при отмене оповещает →
события НРД по ответам MS010 и M2M bj дописывает BJ_ORDER_ACCEPTED / BJ_EXECUTED / BJ_REJECTED / BJ_CANCELLED.
- Опрос таблиц — раз в минуту. Подробности и словарь событий — страница для программиста Fancy.
+ Опрос таблиц — раз в минуту.{{if internalDocs}} Подробности и словарь событий — страница для программиста Fancy.{{end}}
Переводов: {{.Sum.Total}}
@@ -72,5 +72,5 @@
{{end}}
-bj ↔ bj2depo: события, таблицы, действия job →
+{{if internalDocs}}bj ↔ bj2depo: события, таблицы, действия job →
{{end}}
{{end}}
diff --git a/internal/lkgateway/web/templates/admin_setup.html b/internal/lkgateway/web/templates/admin_setup.html
index 658e2da..ae7b1e1 100644
--- a/internal/lkgateway/web/templates/admin_setup.html
+++ b/internal/lkgateway/web/templates/admin_setup.html
@@ -239,7 +239,7 @@
СКЗИ «Валидата Клиент L»
-
Активный профиль: {{if .Settings.Crypto.Profile}}{{.Settings.Crypto.Profile}}{{else}}—{{end}} · провайдер {{if and (not devOn) (or (eq .Settings.Crypto.Provider "stub") (eq .Settings.Crypto.Provider ""))}}не настроен{{else}}{{.Settings.Crypto.Provider}}{{end}}. Подробно — справка.
+
Активный профиль: {{if .Settings.Crypto.Profile}}{{.Settings.Crypto.Profile}}{{else}}—{{end}} · провайдер {{if and (not devOn) (or (eq .Settings.Crypto.Provider "stub") (eq .Settings.Crypto.Provider ""))}}не настроен{{else}}{{.Settings.Crypto.Provider}}{{end}}. {{if internalDocs}}Подробно — справка{{end}}.
diff --git a/internal/lkgateway/web/templates/admin_wizard.html b/internal/lkgateway/web/templates/admin_wizard.html
index fdf48cd..79ab66a 100644
--- a/internal/lkgateway/web/templates/admin_wizard.html
+++ b/internal/lkgateway/web/templates/admin_wizard.html
@@ -86,10 +86,6 @@
.dq-jobname { margin-top:14px; max-width:520px; }
.dq-jobname label { display:block; margin:0; font-size:13.5px; font-weight:500; color:var(--text-2); }
.dq-jobname input { display:block; width:100%; box-sizing:border-box; margin-top:5px; }
-.wiz-memo { margin:10px 0 0; font-size:13.5px; }
-.wiz-memo summary { cursor:pointer; color:var(--accent); }
-.wiz-memo ul { margin:6px 0 8px; padding-left:20px; }
-.wiz-memo li { margin:3px 0; }
.dq-box { border:1px solid var(--border); border-radius:12px; padding:14px 16px 16px; }
.dq-box-bj { background:color-mix(in srgb, var(--accent-weak) 45%, transparent); }
.dq-box-h { font-weight:600; font-size:14.5px; margin:0 0 10px; }
@@ -466,16 +462,7 @@
QUIK
Адрес и логин модуля неторговых поручений — у вашего администратора QUIK. Если модуля ещё нет, его подключает ARQA Technologies — письмо для них готово ниже.
- {{if .DepoLicensed}}{{template "letterCard" (letter "arqa")}}
-
Памятка администратору QUIK
- Всё это описано в документации ARQA на модуль неторговых поручений — администратору QUIK она знакома:
-
- - в QAdmin — классы
INSTROUTM2M (вывод ценных бумаг) и INSTRINM2M (ввод), типы неторговых поручений M2M;
- - SQL-логин для bj с ролью
InstrEu — его логин и пароль вписываются ниже;
- - справочник депозитариев-получателей
M2MDepoRecipients заполняет bj; после первого заполнения модуль нужно перезапустить.
-
- Подробная инструкция для администратора QUIK →
- {{end}}
+ {{if .DepoLicensed}}{{template "letterCard" (letter "arqa")}}{{end}}
{{if not .DepoLicensed}}
Модуль неторговых поручений не входит в текущую лицензию — шаг пропускается.
{{else}}{{with .Fancy}}{{template "quikSection" .}}{{end}}
{{if .Settings.Quik.Server}}{{template "mnpCheck" .}}{{end}}
@@ -525,7 +512,7 @@
{{else}}
Валидата на этом сервере не найдена.
-
Как поставить. С образа Bridge&Join она ставится сама. Если bj ставили на готовую систему: пакеты
zpki и
zsdk из дистрибутива НРД (
ClientL_Other.zip для Ubuntu 22.04,
ClientL_ALSE.zip для Astra Linux) —
sudo apt install ./zpki_*.deb ./zsdk_*.deb, подробнее —
справка. После установки обновите эту страницу.
+
Как поставить. С образа Bridge&Join она ставится сама. Если bj ставили на готовую систему: пакеты
zpki и
zsdk из дистрибутива НРД (
ClientL_Other.zip для Ubuntu 22.04,
ClientL_ALSE.zip для Astra Linux) —
sudo apt install ./zpki_*.deb ./zsdk_*.deb{{if internalDocs}}, подробнее —
справка{{end}}. После установки обновите эту страницу.
{{if devOn}}