Тест «боевой ЛК → TEST3»: заявки выбранных клиентов ЕСИА Финанс — у нас всё по-настоящему (DEPO, QUIK МНП боевая запись только для них), в НРД с подменой инвестора на тест-клиента; «Исполнена» в ЛК по MS010; повтор отправки тоже с подменой; пометка и шаги ЛК в пути заявки; включатель на «Тестирование M2M»
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -44,8 +44,11 @@ func quikSecISIN(s m2m.RequestSecurity) string {
|
||||
// отправку не блокируем (оповещаем); если QUIK отверг регистрацию — отправку
|
||||
// ОТМЕНЯЕМ (нельзя переводить то, что не заблокировано).
|
||||
func quikOutgoingBeforeSend(ctx context.Context, rc *RuntimeConfig, req *m2m.M2MTransferRequest) error {
|
||||
q := rc.Snapshot().Quik
|
||||
if !quikActive(q) || !q.AutoOut || req == nil || manualQuikSkipped(ctx) { // ручной ввод: заблокировано сотрудником
|
||||
if req == nil {
|
||||
return nil
|
||||
}
|
||||
q := quikSettingsFor(rc, string(req.Header.GUID)) // тест «боевой ЛК → TEST3» — боевая запись (realtest.go)
|
||||
if !quikActive(q) || !q.AutoOut || manualQuikSkipped(ctx) { // ручной ввод: заблокировано сотрудником
|
||||
return nil
|
||||
}
|
||||
guid := string(req.Header.GUID)
|
||||
@@ -88,11 +91,14 @@ func quikOutgoingBeforeSend(ctx context.Context, rc *RuntimeConfig, req *m2m.M2M
|
||||
|
||||
// quikOnDecision — ответ контрагента: по отказанным бумагам снимаем поручения.
|
||||
func quikOnDecision(ctx context.Context, rc *RuntimeConfig, svc *Service, decision *m2m.M2MTransferDecision) {
|
||||
q := rc.Snapshot().Quik
|
||||
if !quikActive(q) || !q.AutoOut || decision == nil {
|
||||
if decision == nil {
|
||||
return
|
||||
}
|
||||
guid := string(decision.Header.GUID)
|
||||
q := quikSettingsFor(rc, guid)
|
||||
if !quikActive(q) || !q.AutoOut {
|
||||
return
|
||||
}
|
||||
links := globalQuikLinks.ForGUID(guid)
|
||||
if len(links) == 0 {
|
||||
return
|
||||
@@ -119,7 +125,7 @@ func quikOnDecision(ctx context.Context, rc *RuntimeConfig, svc *Service, decisi
|
||||
|
||||
// quikOnServiceError — сервис МОСТ отверг перевод целиком: снимаем все поручения.
|
||||
func quikOnServiceError(ctx context.Context, rc *RuntimeConfig, guid, reason string) {
|
||||
q := rc.Snapshot().Quik
|
||||
q := quikSettingsFor(rc, guid)
|
||||
if !quikActive(q) || !q.AutoOut {
|
||||
return
|
||||
}
|
||||
@@ -148,13 +154,13 @@ func orderRespVerdict(resps []orderResponse) (done, rejected bool, text string)
|
||||
// quikCycleTick — один проход опросчика.
|
||||
func quikCycleTick(ctx context.Context, rc *RuntimeConfig) {
|
||||
q := rc.Snapshot().Quik
|
||||
if !quikActive(q) || q.Server == "" {
|
||||
if (!quikActive(q) && !realTestAny()) || q.Server == "" { // тестовые заявки «боевой ЛК → TEST3» — всегда
|
||||
return
|
||||
}
|
||||
// исходящие: наше поручение 16 принято НРД → подпись; отказ → снятие
|
||||
if q.AutoOut && globalOutgoingStore != nil {
|
||||
for _, od := range scanForm16Drafts(globalOutgoingStore) {
|
||||
if !od.Submitted {
|
||||
if !od.Submitted || (!quikActive(q) && realTestGet(od.GUID) == nil) {
|
||||
continue
|
||||
}
|
||||
links := globalQuikLinks.ForGUID(od.GUID)
|
||||
|
||||
Reference in New Issue
Block a user