Files
Bridge-and-Join-s/modules/npr/web/rows.html
T
zuevav 5527a464ca НПР / УДС — отдельная служба bj-npr
Модуль вынесен в modules/npr + cmd/bj-npr (127.0.0.1:8083), обновляется
независимо от ядра. Служба читает подключение из setup.json и принимает
запросы только со служебным ключом модулей (/var/lib/bj/.bj/module.key,
создаёт bj-server). Полные страницы отдаются фрагментом (X-BJ-Layout: page).

bj-server хранит настройки и проверку подключения, проксирует /admin/npr
после входа, прав и лицензии и встраивает страницы модуля в общий макет
(admin.modulePage); если служба не отвечает — понятная страница.
Unit bj-npr.service встроен в установщик, установщик включает службы
установленных модулей; build-release.sh собирает bj-npr.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-16 01:00:31 +03:00

8 lines
1.6 KiB
HTML

{{define "npr_rows"}}
<p class="muted">Найдено клиентов: <strong>{{.Total}}</strong>.{{if .Pages}} Страница <strong>{{.Page}}</strong> из <strong>{{.Pages}}</strong>.{{end}}</p>
<table class="ntable"><thead><tr><th>Код клиента</th><th>Тип</th><th class="num">УДС</th><th>Статус</th><th class="num">НПР1</th><th class="num">НПР2</th><th class="num">Марж. требование</th><th>Обновлено</th></tr></thead>
<tbody>{{range .Rows}}<tr class="{{.Class}}"><td><a href="/admin/npr/c/{{.ClientCode}}">{{.ClientCode}}</a></td><td>{{if .MarginType}}{{.MarginType}}{{else}}—{{end}}</td><td class="num"><strong>{{nprF .UDS}}</strong></td><td>{{if .BadgeClass}}<span class="badge {{.BadgeClass}}">{{.BadgeText}}</span>{{else}}—{{end}}</td><td class="num">{{nprF .RCV1}}</td><td class="num">{{nprF .RCV2}}</td><td class="num">{{nprF .MarginReq}}</td><td><small>{{.TS.Local.Format "15:04:05"}}</small></td></tr>{{end}}
{{if not .Rows}}<tr><td colspan="8" class="muted" style="text-align:center;padding:2rem"><em>Ни одного клиента под этот фильтр не найдено</em></td></tr>{{end}}</tbody></table>
<nav style="display:flex;gap:8px;justify-content:center;margin-top:10px">{{if gt .Page 1}}<button class="btn" hx-get="/admin/npr/rows" hx-include="#filters" hx-vals='{"page": {{add .Page -1}} }' hx-target="#rows">← Предыдущая</button>{{end}}{{if .HasNext}}<button class="btn" hx-get="/admin/npr/rows" hx-include="#filters" hx-vals='{"page": {{add .Page 1}} }' hx-target="#rows">Следующая →</button>{{end}}</nav>
{{end}}