Мастер, «Организация»: одна кнопка «Сохранить»; в строке справочника — своя запись
- Организация и депозитарные реквизиты в НРД сохраняются одной кнопкой внизу шага (поля реквизитов — в общей форме org-form; saveOrg сохраняет и их, если они пришли; в настройках формы прежние). Повтор «Из DEPO: … подставлено» в мастере убран — то же в зелёной плашке. - «Найти себя в справочнике участников M2M» не пустая: по коду и ИНН из полей показывается своя запись и «✓ Есть в справочнике участников M2M»; нет в справочнике — предупреждение. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -613,3 +613,34 @@ func tsqlOutsideLiterals(s string) string {
|
||||
}
|
||||
return b.String()
|
||||
}
|
||||
|
||||
// Шаг «Организация» мастера: одна кнопка «Сохранить» — организация и депозитарные реквизиты в НРД одной формой;
|
||||
// без полей реквизитов (настройки) — только организация, реквизиты не трогаются.
|
||||
func TestSaveOrgWithRequisites(t *testing.T) {
|
||||
rc := testRC(t)
|
||||
h := &setupHandlers{rc: rc}
|
||||
post := func(form url.Values) *httptest.ResponseRecorder {
|
||||
r := httptest.NewRequest(http.MethodPost, "/admin/setup/org", strings.NewReader(form.Encode()))
|
||||
r.Header.Set("Content-Type", "application/x-www-form-urlencoded")
|
||||
w := httptest.NewRecorder()
|
||||
h.saveOrg(w, r)
|
||||
return w
|
||||
}
|
||||
w := post(url.Values{"org_code": {"MC0413600000"}, "org_inn": {"7703807489"}, "org_name": {"ООО \"ИК \"Фонтвьель\""},
|
||||
"deponent_code": {"MC0413600000"}, "account_id": {"HL171004001C"}, "section_id": {"36MC0413600000F00"}, "return_to": {"/admin/wizard?step=4"}})
|
||||
if loc := w.Header().Get("Location"); !strings.HasPrefix(loc, "/admin/wizard?step=4") {
|
||||
t.Fatalf("после сохранения — на тот же шаг: %q", loc)
|
||||
}
|
||||
s := rc.Snapshot().NSD
|
||||
if s.OrgCode != "MC0413600000" || s.OrgINN != "7703807489" || s.AccountID != "HL171004001C" || s.SectionID != "36MC0413600000F00" || s.DeponentCode != "MC0413600000" {
|
||||
t.Fatalf("организация и реквизиты одной кнопкой: %+v", s)
|
||||
}
|
||||
post(url.Values{"org_code": {"MC0413600000"}, "org_inn": {"7703807489"}, "org_name": {"Фонтвьель"}})
|
||||
if s := rc.Snapshot().NSD; s.AccountID != "HL171004001C" || s.OrgName != "Фонтвьель" {
|
||||
t.Fatalf("форма без реквизитов не должна их стирать: %+v", s)
|
||||
}
|
||||
post(url.Values{"org_code": {"MC0413600000"}, "deponent_code": {"MC0413600000"}, "account_id": {"HL 17"}, "section_id": {""}})
|
||||
if s := rc.Snapshot().NSD; s.AccountID != "HL171004001C" {
|
||||
t.Fatalf("неверный счёт — ничего не сохраняется: %+v", s)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user