From 686889ee72bf8048c8899b61700656b9eb272a4a Mon Sep 17 00:00:00 2001 From: zuevav Date: Wed, 7 Oct 2026 10:35:02 +0300 Subject: [PATCH] =?UTF-8?q?=C2=AB=D0=9E=D0=B1=D0=BC=D0=B5=D0=BD=20=D1=81?= =?UTF-8?q?=20DEPO=C2=BB:=20=D1=81=D0=B2=D0=BE=D0=B4=D0=BA=D0=B0=20=D1=81?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=BE=D1=8F=D0=BD=D0=B8=D1=8F=20=D0=B2=D0=BC?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D0=BE=20=D1=84=D0=BE=D1=80=D0=BC;=20=D0=BD?= =?UTF-8?q?=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B0=20=E2=80=94=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=20=C2=AB=D0=9F=D0=B5=D1=80=D0=B5=D0=BD=D0=B0?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=BE=D0=B8=D1=82=D1=8C=C2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Сверху — «Обмен с DEPO работает / настроен не до конца / не подключён» и сведения: база DEPO, сервер и СУБД, логин bj, начало номера торговых счетов, признак ИИС (отказ M2M06), трансферные таблицы, кто запускает обработку и итог последней проверки (✓/✗ и когда). - Все прежние формы — под «Перенастроить»; раскрыто само, если что-то не проверено. - Общий стиль сведений «название — значение» (.kv) — в оформлении для настроек. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi --- internal/lkgateway/admin.go | 1 + .../lkgateway/web/templates/admin_setup.html | 10 ++++++++- internal/lkgateway/web/templates/layout.html | 6 +++++ .../lkgateway/web/templates/part_fancy.html | 22 ++++++++++++++++++- 4 files changed, 37 insertions(+), 2 deletions(-) diff --git a/internal/lkgateway/admin.go b/internal/lkgateway/admin.go index 937efd4..9872696 100644 --- a/internal/lkgateway/admin.go +++ b/internal/lkgateway/admin.go @@ -94,6 +94,7 @@ var templateFuncs = template.FuncMap{ return "?" }, "quikModeCustom": quikModeCustom, + "depoJobNameOf": depoJobName, "adDraft": adDraftForView, // неудачная попытка подключить домен — форма открывается заполненной "withRet": func(d any, ret string) map[string]any { return map[string]any{"D": d, "Ret": ret} }, "whForm": func(w WorkHoursSettings, ret string) map[string]any { return map[string]any{"W": w, "Ret": ret} }, diff --git a/internal/lkgateway/web/templates/admin_setup.html b/internal/lkgateway/web/templates/admin_setup.html index 485ad89..57666de 100644 --- a/internal/lkgateway/web/templates/admin_setup.html +++ b/internal/lkgateway/web/templates/admin_setup.html @@ -89,8 +89,16 @@ {{if mod "quik-mnp"}} {{/* ============ ОБМЕН FANCY (MSSQL) — перспективный модуль ============ */}}
-

Обмен Fancy (MSSQL / PostgreSQL)

+

Обмен с DEPO (Fancy)

+ {{template "verline" (.Versions.Get "depo")}} + {{template "fancyStatus" .}} + {{$fok := and .Settings.Fancy.Server .Settings.Fancy.DepoTablesCheckOK .Settings.Fancy.DepoJobCheckOK}} +
+
+ Перенастроитьподключение к базе DEPO, торговые счета, трансферные таблицы, признак ИИС, кто запускает обработку — если что-то изменилось {{template "fancySection" .}} +
+
diff --git a/internal/lkgateway/web/templates/layout.html b/internal/lkgateway/web/templates/layout.html index 4f88fc7..1e2012e 100644 --- a/internal/lkgateway/web/templates/layout.html +++ b/internal/lkgateway/web/templates/layout.html @@ -408,6 +408,12 @@ label { font-size:13px; font-weight:500; } .stc-run .stc-ic{background:none;border:2.5px solid var(--accent-weak);border-top-color:var(--accent);box-sizing:border-box;animation:dq-spin .8s linear infinite} .stc-run .btn, .stc-run form{visibility:hidden} @media (max-width:600px){.stc{flex-wrap:wrap}} +/* сведения «название — значение» (сводки разделов): как в мастере */ +.kv{display:grid;grid-template-columns:minmax(140px,210px) minmax(0,1fr);gap:9px 18px;margin:14px 0 0;font-size:14px} +.kv dt{color:var(--muted)} +.kv dd{margin:0;overflow-wrap:anywhere} +.kv-ok{color:var(--ok);font-weight:700} .kv-no{color:var(--err);font-weight:700} .kv-warn{color:var(--warn);font-weight:700} +@media (max-width:600px){.kv{grid-template-columns:minmax(0,1fr);gap:2px 0}.kv dd{margin-bottom:8px}} @media (max-width:700px){.org-grid{grid-template-columns:minmax(0,1fr)}} @media (max-width:820px) { .settings { grid-template-columns:1fr; } diff --git a/internal/lkgateway/web/templates/part_fancy.html b/internal/lkgateway/web/templates/part_fancy.html index 27a85fd..c75ab0f 100644 --- a/internal/lkgateway/web/templates/part_fancy.html +++ b/internal/lkgateway/web/templates/part_fancy.html @@ -1,7 +1,6 @@ {{/* Раздел «Обмен Fancy» — один и тот же в «Настройка → Обмен Fancy» и на шаге 3 мастера настройки (данные — SetupData). Правки — только здесь. */}} {{define "fancySection"}} - {{template "verline" (.Versions.Get "depo")}}

Подключение к серверу БД клиента

Сервер учётной базы Fancy DEPO: картотека лиц, счета и договоры, остатки, опции (признак квалифицированного инвестора), трансферные таблицы обмена. Поддерживаются Microsoft SQL Server и PostgreSQL. База указывается ниже, в карточке «Трансферные таблицы DEPO».

@@ -117,3 +116,24 @@ {{end}} {{define "verline"}}{{if .Title}}

{{.Title}}: {{if .Version}}{{.Version}}{{else}}не определена{{end}}{{with .Detail}} · {{.}}{{end}}{{with .Err}} · {{.}}{{end}}

{{end}}{{end}} + +{{/* Сводка «Обмен с DEPO» (Настройка): что подключено и проверено — одним взглядом; формы — под «Перенастроить». */}} +{{define "fancyStatus"}}{{$f := .Settings.Fancy}}{{$ok := and $f.Server $f.DepoTablesCheckOK $f.DepoJobCheckOK}} +
+
+
{{if $ok}}Обмен с DEPO работает{{else if $f.Server}}Обмен с DEPO настроен не до конца{{else}}Учёт DEPO не подключён{{end}} + {{if $ok}}Подключение, трансферные таблицы и обработка проверены — менять ничего не нужно. Если что-то изменилось на сервере DEPO — «Перенастроить» ниже.{{else if $f.Server}}Что не так — в строках ниже с ✗; поправить — в «Перенастроить».{{else}}Подключите базу DEPO — мастером настройки (шаг «Учёт DEPO») или в «Перенастроить».{{end}}
+ {{if not $f.Server}}Открыть мастер{{end}}
+ {{if $f.Server}} +
+
База DEPO
{{$f.DepoDB}} на {{$f.Server}}{{if $f.Port}}:{{$f.Port}}{{end}} · {{if eq $f.DBType "postgres"}}PostgreSQL{{else}}Microsoft SQL Server{{end}}
+
Логин bj
{{$f.User}}
+
Торговые счета клиентов
номер начинается с {{depoAccPrefix}}
+
Признак ИИС
договор начинается с {{if $f.IISContractMarker}}{{$f.IISContractMarker}}{{else}}БРИИС{{end}} — такие переводы отклоняются кодом M2M06
+
Трансферные таблицы
{{if $f.DepoTablesCheckOK}}✓{{else}}✗{{end}} {{if $f.DepoTablesCheck}}{{$f.DepoTablesCheck}}{{else}}ещё не проверялись{{end}}{{if not $f.DepoTablesCheckAt.IsZero}} · {{msk $f.DepoTablesCheckAt}}{{end}}
+
Обработка событий
{{if $f.DepoJobCheckOK}}✓{{else}}✗{{end}} {{if eq $f.DepoJobMode "bj"}}запускает bj{{if $f.DepoJobEverySec}} каждые {{$f.DepoJobEverySec}} с{{end}}{{else if eq $f.DepoJobMode "sql-auto"}}задание SQL Server Agent {{depoJobNameOf $f}}{{else if eq $f.DepoJobMode "sql-manual"}}задание SQL Server Agent (создано администратором){{else}}не выбрано, кто запускает{{end}}{{if $f.DepoJobCheck}}
{{$f.DepoJobCheck}}{{if not $f.DepoJobCheckAt.IsZero}} · {{msk $f.DepoJobCheckAt}}{{end}}
{{end}}
+ {{if $f.DepoProcCheck}}
Процедуры обработки
{{if $f.DepoProcCheckOK}}✓{{else}}⚠{{end}} {{$f.DepoProcCheck}}{{if not $f.DepoProcCheckAt.IsZero}} · {{msk $f.DepoProcCheckAt}}{{end}}
{{end}} +
+ {{end}} +
+{{end}}