Своя организация в настройках (справочник НРД или вручную) вместо зашитого ИНН; ручной ввод: поиск клиента и бумаг в DEPO, одна бумага на поручение

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
zuevav
2026-09-17 19:51:04 +03:00
parent e4de1ab4d8
commit 1d0f904010
17 changed files with 484 additions and 82 deletions
+15 -4
View File
@@ -84,6 +84,7 @@ func registerSetup(mux *http.ServeMux, a *admin, rc *RuntimeConfig, svc *Service
mux.HandleFunc("/admin/setup/logo", h.saveLogo)
mux.HandleFunc("/admin/setup/logo/reset", h.resetLogo)
mux.HandleFunc("/admin/setup/nsd", h.saveNSD)
mux.HandleFunc("/admin/setup/org", h.saveOrg)
mux.HandleFunc("/admin/setup/lk", h.saveLK)
mux.HandleFunc("/admin/setup/lk-integration", h.saveLKIntegration)
mux.HandleFunc("/admin/setup/lk-check", h.checkLKConn)
@@ -298,10 +299,13 @@ type SetupData struct {
CurrentVersion string // версия bj-server (для раздела «Обновления»)
Components []release.ComponentState // компоненты и их версии (раздел «Обновления»)
UpdatesAvailable bool
License LicenseStatus // статус лицензии
Health []HealthStatus // здоровье фоновых компонентов
AdvancedUnlocked bool // открыты ли перспективные модули (QUIK, Fancy)
NSDCerts NSDCertsView // сертификаты НРД в справочнике ИШ
License LicenseStatus // статус лицензии
Health []HealthStatus // здоровье фоновых компонентов
AdvancedUnlocked bool // открыты ли перспективные модули (QUIK, Fancy)
NSDCerts NSDCertsView // сертификаты НРД в справочнике ИШ
Participants []HandbookEntry // справочник участников M2M (выбор своей организации)
OrgINN, OrgName string // наша организация (с учётом справочника)
OrgCode string
NotifyGroups []struct{ Key, Title string }
NotifyKinds []struct{ Key, Title string }
DepoJob DepoJobView
@@ -362,6 +366,10 @@ func (h *setupHandlers) renderSetup(w http.ResponseWriter, req *http.Request, fl
Health: HealthSnapshot(),
AdvancedUnlocked: advancedUnlocked(req),
NSDCerts: nsdCertsView(s),
Participants: handbookParticipants(),
OrgINN: orgINN(s),
OrgName: orgName(s),
OrgCode: orgCode(s),
NotifyGroups: notifyGroups,
NotifyKinds: notifyKinds,
DepoJob: depoJobView(s.Fancy),
@@ -520,6 +528,9 @@ func (h *setupHandlers) saveNSD(w http.ResponseWriter, r *http.Request) {
Profile: strings.TrimSpace(r.FormValue("profile")),
IGWBaseURL: strings.TrimSpace(r.FormValue("igw_base_url")),
KeyContainer: strings.TrimSpace(r.FormValue("key_container")),
OrgCode: h.rc.Snapshot().NSD.OrgCode, // организация — отдельной формой (saveOrg)
OrgINN: h.rc.Snapshot().NSD.OrgINN,
OrgName: h.rc.Snapshot().NSD.OrgName,
DeponentCode: strings.TrimSpace(r.FormValue("deponent_code")),
AccountID: strings.TrimSpace(r.FormValue("account_id")),
SectionID: strings.TrimSpace(r.FormValue("section_id")),