Первичная настройка, часть 1: префикс торгового счёта DEPO — настройка с подсказкой по учёту (был зашит «ВТНКЦ» в 7 запросах); шаг 8 — адрес ИШ вместо ONYX, профили prod-gost/prod-rsa (пункт prod уводил bj в имитацию), без неиспользуемого контейнера, перезапуск bj после смены контура; реквизиты НРД на шаге 4; точная проверка процедур bj2depo и таблиц Fancy M2M; QUIK — объекты M2M и справочник получателей, без зашитого IP; сертификаты из справочника ИШ (FindCertificates — заглушка), уведомления о сроке за 30/14/7/3/1 день; тексты мастера, нумерация, режим разработки; уникальные id оповещений с русскими заголовками

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
zuevav
2026-10-05 16:04:43 +03:00
parent 9360543589
commit fdf0ddd498
37 changed files with 807 additions and 129 deletions
+6 -2
View File
@@ -3,6 +3,7 @@ package lkgateway
import (
"context"
"fmt"
"hash/fnv"
"log"
"net"
"os"
@@ -247,8 +248,11 @@ func slugify(s string) string {
}
}
out := strings.Trim(b.String(), "-")
if out == "" {
return "alert"
if out == "" || strings.Count(out, "-") == len(out) {
// заголовки по-русски дают пустую строку — без хеша разные оповещения за 10 минут склеивались бы в одно
h := fnv.New32a()
_, _ = h.Write([]byte(s))
return fmt.Sprintf("a%08x", h.Sum32())
}
if len(out) > 40 {
out = out[:40]