Первичная настройка: ключ спрашивается один раз, затем обновления, модули и «Время и сеть»; DEPO одним шагом
- Первая страница — только администратор (и восстановление из копии); ключ продукта — после создания администратора, на шаге «Лицензия». Консоль первой загрузки ключ больше не спрашивает (для образа с комплектом bj). - «Подготовка модулей» начинает с проверки обновлений: есть — ставит (bj перезапускается, страница ждёт и продолжает), нет — дальше; выпуск, который уже ставили, по кругу не ставится. Затем модули лицензии и переход на «Время и сеть» (шаг 12) — часовой пояс клиент выбирает сам, шаг больше не проскакивает. - Учёт DEPO одним шагом: bj сам находит базу Fancy DEPO на сервере (по таблицам OD_FACES/OD_RESTS), имя базы не спрашивается. Один скрипт создаёт логин bj, таблицы обмена и права; по выбору — задание обработки в SQL Agent или обработка на сервере bj. Выполнить сразу (логин администратора СУБД не сохраняется), скачать скрипт для администратора или подключиться готовым логином. - Восстановление из копии — только на первой странице, в мастере его больше нет. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -73,6 +73,8 @@ func registerSetup(mux *http.ServeMux, a *admin, rc *RuntimeConfig, svc *Service
|
||||
mux.HandleFunc("/admin/setup/wizard-depo/tables", h.wizardDepoTables)
|
||||
mux.HandleFunc("/admin/setup/wizard-depo/job", h.wizardDepoJob)
|
||||
mux.HandleFunc("/admin/setup/wizard-depo/recheck", h.wizardDepoRecheck)
|
||||
mux.HandleFunc("/admin/setup/wizard-depo/setup", h.wizardDepoSetup) // подготовка базы одним действием
|
||||
mux.HandleFunc("/admin/setup/wizard-depo/script.sql", h.wizardDepoScript) // один скрипт для администратора
|
||||
mux.HandleFunc("/admin/setup/fancy/acc-prefix", h.accPrefix)
|
||||
mux.HandleFunc("/admin/setup/license", h.saveLicense)
|
||||
mux.HandleFunc("/admin/setup/license/activate", h.licenseActivate)
|
||||
@@ -173,6 +175,7 @@ type WizardData struct {
|
||||
DepoJobDef string // способ обработки по умолчанию для мастера
|
||||
Fancy *SetupData // шаг 3: общий блок «Обмен Fancy» (тот же, что в настройках)
|
||||
Sub string // экран шага 3 (учёт DEPO): intro|conn|tables|job|done
|
||||
DepoCands []string // шаг 3: найдено несколько баз DEPO — выбор
|
||||
ValidataVer string // версия установленной «Валидаты Клиент L» (пусто — не установлена)
|
||||
CryptoSvc string // состояние службы bj-crypto (systemctl is-active)
|
||||
PGSummary string // куда подключена база bj, без пароля
|
||||
@@ -319,6 +322,7 @@ func (h *setupHandlers) renderWizard(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
if step == 3 {
|
||||
d.Sub = depoWizardSub(r.URL.Query().Get("sub"))
|
||||
d.DepoCands = depoCands(r.URL.Query().Get("cands"))
|
||||
if r.URL.Query().Get("sub") == "" && d.Done.Depo {
|
||||
d.Sub = "done"
|
||||
}
|
||||
@@ -1428,8 +1432,8 @@ func (h *setupHandlers) licenseActivate(w http.ResponseWriter, r *http.Request)
|
||||
}
|
||||
// дальше — «Подготовка модулей»: модули лицензии ставятся и запускаются, затем возврат туда, откуда пришли
|
||||
next := safeReturnPath(r.FormValue("return_to"))
|
||||
if strings.HasPrefix(next, "/admin/wizard") {
|
||||
next = "/admin/wizard" // мастер сам откроется на первом несделанном шаге — теперь с шагами модулей лицензии
|
||||
if next == "" || strings.HasPrefix(next, "/admin/wizard") {
|
||||
next = "/admin/wizard?step=12" // после ключа — «Время и сеть»: часовой пояс клиент выбирает сам
|
||||
}
|
||||
http.Redirect(w, r, "/admin/setup/prepare?next="+url.QueryEscape(next), http.StatusSeeOther)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user