Рабочее время организации: запросы M2M вне него — отказ M2M06 (в любом режиме)
Настройка в шаге «Время и сеть» и Настройка → Сервер: дни недели, часы (по поясу сервера), включение правила. Запрос, полученный вне рабочего времени (и после включения правила), bj сразу отклоняет по всем бумагам кодом M2M06 «Приостановление операций по счёту депо зачисления» — кода «вне рабочего времени» в перечне НРД (инструкция по обмену M2M, раздел 7.4) нет, решение депозитария. Строка «Рабочее время» в проверке готовности; сквозной тест отказа через ИШ. Файл входящих — переменная (тесты не трогают сервер). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -958,6 +958,12 @@
|
||||
<form method="post" action="/admin/setup/https/selfsigned" style="margin-top:8px"><button type="submit" class="btn btn-secondary" onclick="return confirm('Создать новый самоподписанный сертификат? Сертификат организации будет заменён.')">Вернуть самоподписанный</button></form>
|
||||
</details>
|
||||
</div>
|
||||
<div class="card" id="sec-workhours">
|
||||
<h2><span class="dot {{if and .Settings.WorkHours.Enabled (not .Settings.WorkHours.SavedAt.IsZero)}}ok{{else}}warn{{end}}"></span>Рабочее время организации</h2>
|
||||
<p class="muted">Когда депозитарий принимает запросы на перевод M2M.</p>
|
||||
{{template "workHoursForm" (whForm .Settings.WorkHours "")}}
|
||||
</div>
|
||||
|
||||
<div class="card" id="time">
|
||||
<h2><span class="dot {{if timeSynced}}ok{{else}}warn{{end}}"></span>Время сервера</h2>
|
||||
<p class="muted">Точное время нужно для подписей и обмена с НРД. В закрытом контуре внешние серверы времени недоступны — укажите сервер времени вашей сети (обычно контроллер домена или маршрутизатор).</p>
|
||||
|
||||
@@ -624,6 +624,11 @@
|
||||
</form>
|
||||
</details>
|
||||
|
||||
<div style="margin-top:18px">
|
||||
<div class="wiz-row" style="margin-bottom:8px"><span class="wiz-row-l">Рабочее время</span>{{if and .Settings.WorkHours.Enabled (not .Settings.WorkHours.SavedAt.IsZero)}}<span style="color:var(--ok)">✓ {{.Settings.WorkHours.Text}}</span>{{else if .Settings.WorkHours.SavedAt.IsZero}}<span style="color:var(--warn)">⚠ не задано</span>{{else}}<span class="muted">без ограничения</span>{{end}}</div>
|
||||
{{template "workHoursForm" (whForm .Settings.WorkHours "/admin/wizard?step=12")}}
|
||||
</div>
|
||||
|
||||
<div class="wiz-row" style="margin-top:18px">
|
||||
<span class="wiz-row-l">Адрес bj</span>
|
||||
<a href="https://{{serverIP}}:8443/admin/">https://{{serverIP}}:8443/</a>
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
{{/* Рабочее время организации (workhours.go): шаг «Время и сеть» мастера и Настройка → Сервер. Данные — whForm. */}}
|
||||
{{define "workHoursForm"}}{{$w := .W}}
|
||||
<form method="post" action="/admin/setup/workhours" class="wh-form">
|
||||
{{if .Ret}}<input type="hidden" name="return_to" value="{{.Ret}}">{{end}}
|
||||
<style>
|
||||
.wh-form{display:grid;gap:10px;max-width:640px}
|
||||
.wh-days{display:flex;gap:6px;flex-wrap:wrap}
|
||||
.wh-days label{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;font-weight:400;margin:0;cursor:pointer}
|
||||
.wh-days label:has(input:checked){border-color:var(--accent);background:var(--accent-weak)}
|
||||
.wh-days input{width:auto;margin:0}
|
||||
.wh-time{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
|
||||
.wh-time input{width:auto}
|
||||
</style>
|
||||
<div class="wh-days">{{range $d := intList 1 2 3 4 5 6 7}}<label><input type="checkbox" name="day" value="{{$d}}" {{if $w.HasDay $d}}checked{{end}}>{{index (weekdayNames) $d}}</label>{{end}}</div>
|
||||
<div class="wh-time">с <input type="time" name="from" value="{{$w.FromText}}" required aria-label="Начало рабочего дня"> до <input type="time" name="to" value="{{$w.ToText}}" required aria-label="Конец рабочего дня"> <span class="muted" style="font-size:13px">по часовому поясу сервера</span></div>
|
||||
<label style="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0"><input type="checkbox" name="enabled" style="width:auto;margin-top:3px" {{if or $w.Enabled $w.SavedAt.IsZero}}checked{{end}}>
|
||||
<span><b>Принимать запросы на перевод M2M только в рабочее время</b><br><span class="muted" style="font-size:13px">Запрос, пришедший вне рабочего времени, bj сразу отклоняет по всем бумагам кодом M2M06 «Приостановление операций по счёту депо зачисления» — и в автоматическом режиме, и в ручном.</span></span></label>
|
||||
<div><button type="submit" class="btn">Сохранить</button>{{if not $w.SavedAt.IsZero}} <span class="muted" style="font-size:13px">{{if $w.Enabled}}сейчас: {{$w.Text}}, вне его — отказ M2M06{{else}}сохранено без ограничения — запросы принимаются круглосуточно{{end}}</span>{{end}}</div>
|
||||
</form>
|
||||
{{end}}
|
||||
Reference in New Issue
Block a user