Карточка: при подмене личности явно указывать, что в НРД ушли подменённые данные
В режиме эмуляции «Подмена личности» XML в карточке — это наша запись с РЕАЛЬНЫМИ данными клиента, а в НРД ушла копия с подменённым блоком инвестора (тест-инвестор). Над XML теперь выводится предупреждение «В НРД отправлены ПОДМЕНЁННЫЕ данные, не эти» с указанием, под чьими данными ушло (realTestGet по GUID → claimData.SubstAs). Без подмены — текст как раньше. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -507,6 +507,9 @@ type claimData struct {
|
|||||||
Watch *OrderWatch
|
Watch *OrderWatch
|
||||||
DepoL *DepoLink
|
DepoL *DepoLink
|
||||||
Depo *OutgoingDeal // депозитарное поручение 16 (списание) по этой сделке, если черновик пришёл
|
Depo *OutgoingDeal // депозитарное поручение 16 (списание) по этой сделке, если черновик пришёл
|
||||||
|
// Подмена личности (режим эмуляции НРД «подмена»): в НРД ушли данные тест-инвестора вместо
|
||||||
|
// клиента. SubstAs — под чьими данными ушло; этот XML в карточке — наша запись с реальным клиентом.
|
||||||
|
SubstAs string
|
||||||
Flash string
|
Flash string
|
||||||
Fail *SendFailure // последняя неудачная отправка в НРД (sendfail.go)
|
Fail *SendFailure // последняя неудачная отправка в НРД (sendfail.go)
|
||||||
}
|
}
|
||||||
@@ -758,10 +761,16 @@ func (a *admin) renderClaim(w http.ResponseWriter, r *http.Request, svc *Service
|
|||||||
if view.M2MGUID != "" {
|
if view.M2MGUID != "" {
|
||||||
fail = sendFailGet(string(view.M2MGUID))
|
fail = sendFailGet(string(view.M2MGUID))
|
||||||
}
|
}
|
||||||
|
substAs := ""
|
||||||
|
if view.M2MGUID != "" {
|
||||||
|
if rt := realTestGet(string(view.M2MGUID)); rt != nil {
|
||||||
|
substAs = rt.As // в НРД ушли данные тест-инвестора вместо клиента (режим «подмена»)
|
||||||
|
}
|
||||||
|
}
|
||||||
render(w, a.claim, claimData{
|
render(w, a.claim, claimData{
|
||||||
Quik: quik, Watch: watch, DepoL: depoL, Fail: fail,
|
Quik: quik, Watch: watch, DepoL: depoL, Fail: fail,
|
||||||
page: nowPage("Заявка", "claims"),
|
page: nowPage("Заявка", "claims"),
|
||||||
Claim: view, Depo: depo, Flash: r.URL.Query().Get("flash"),
|
Claim: view, Depo: depo, SubstAs: substAs, Flash: r.URL.Query().Get("flash"),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -249,8 +249,15 @@
|
|||||||
|
|
||||||
{{if .Claim.RequestRawXML}}
|
{{if .Claim.RequestRawXML}}
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h2>Отправленный пакет (M2MTransferRequest)</h2>
|
<h2>Отправленный пакет (M2MTransferRequest){{if .SubstAs}} <span class="badge awaiting_decision">подмена личности</span>{{end}}</h2>
|
||||||
|
{{if .SubstAs}}
|
||||||
|
<div class="dq-warn" style="margin:0 0 10px;padding:12px 14px;border-radius:8px;background:var(--warn-weak,#fbf3d9)">
|
||||||
|
<b>⚠ В НРД отправлены ПОДМЕНЁННЫЕ данные, не эти.</b> Режим эмуляции «Подмена личности»: в пакете, ушедшем в НРД, блок инвестора заменён на тест-инвестора <b>{{.SubstAs}}</b>. XML ниже — наша запись с <b>реальными данными клиента</b> (так заявка пришла из ЛК); в НРД реальные данные клиента НЕ отправлялись.
|
||||||
|
</div>
|
||||||
|
<p class="muted">XML ниже — исходная заявка клиента (наша запись). В НРД ушла её копия с подменённым блоком инвестора ({{.SubstAs}}), подписанная ИШ. Тип пакета <code>#M2MTR</code>.</p>
|
||||||
|
{{else}}
|
||||||
<p class="muted">Точный XML, который bj-server сформировал и ИШ подписал ключом и отправил в НРД. Тип пакета <code>#M2MTR</code>.</p>
|
<p class="muted">Точный XML, который bj-server сформировал и ИШ подписал ключом и отправил в НРД. Тип пакета <code>#M2MTR</code>.</p>
|
||||||
|
{{end}}
|
||||||
<a class="btn btn-ok" href="/admin/claims/{{.Claim.ID}}/request.xml" download style="margin-right:8px">⤓ Скачать XML запроса</a>
|
<a class="btn btn-ok" href="/admin/claims/{{.Claim.ID}}/request.xml" download style="margin-right:8px">⤓ Скачать XML запроса</a>
|
||||||
<button type="button" class="btn" onclick="copyReq(this)">Скопировать</button>
|
<button type="button" class="btn" onclick="copyReq(this)">Скопировать</button>
|
||||||
<pre id="raw-request" style="white-space:pre-wrap;word-break:break-all;background:var(--surface-2,#f5f5f7);padding:12px;border-radius:8px;font-size:12px;overflow:auto;max-height:340px">{{.Claim.RequestRawXML}}</pre>
|
<pre id="raw-request" style="white-space:pre-wrap;word-break:break-all;background:var(--surface-2,#f5f5f7);padding:12px;border-radius:8px;font-size:12px;overflow:auto;max-height:340px">{{.Claim.RequestRawXML}}</pre>
|
||||||
|
|||||||
Reference in New Issue
Block a user