Карточка: удерживать скролл боковых блоков при автообновлении; DEPO: «Снять с очереди»
Скролл: автообновление карточки (bjReloadKeepScroll) раньше сохраняло только прокрутку окна, а боковой «Путь заявки» (.claim-tl — position:fixed, свой overflow) и другие прокручиваемые блоки (.settings-nav, .doc-toc) отбрасывало наверх. Теперь сохраняется и восстанавливается и их scrollTop (JSON в sessionStorage, восстановление на rAF/timeout/load). DEPO: на «Обмен с DEPO» рядом с «Вернуть в очередь» добавлена «Снять с очереди» — помечает застрявшие записи STATE=SKIPPED (QHl04-06, depoDismissFailures), обработчик их больше не берёт и они уходят из списка ошибок. Для устаревших/ненужных записей (напр. старые тестовые). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -302,6 +302,33 @@ func (h *setupHandlers) fancyQueueRequeue(w http.ResponseWriter, r *http.Request
|
||||
http.Redirect(w, r, "/admin/fancy-queue?flash="+url.QueryEscape(msg), http.StatusSeeOther)
|
||||
}
|
||||
|
||||
// fancyQueueDismiss — POST /admin/fancy-queue/dismiss: снять записи с ошибкой с очереди
|
||||
// (STATE='SKIPPED'). Для устаревших/ненужных записей, которые не нужно переобрабатывать:
|
||||
// обработчик их больше не берёт и из списка ошибок они пропадают.
|
||||
func (h *setupHandlers) fancyQueueDismiss(w http.ResponseWriter, r *http.Request) {
|
||||
if r.Method != http.MethodPost {
|
||||
http.Error(w, "method", http.StatusMethodNotAllowed)
|
||||
return
|
||||
}
|
||||
msg := ""
|
||||
db, err := depoEventsDB(h.rc)
|
||||
if err == nil {
|
||||
ctx, cancel := context.WithTimeout(r.Context(), 30*time.Second)
|
||||
var o, e int64
|
||||
o, e, err = depoDismissFailures(ctx, db, 7)
|
||||
cancel()
|
||||
db.Close()
|
||||
if err == nil {
|
||||
msg = fmt.Sprintf("Снято с очереди: поручений %d, событий %d. Обработчик их больше не возьмёт, из списка ошибок они убраны.", o, e)
|
||||
log.Printf("depo-events: записи с ошибкой сняты с очереди: поручений %d, событий %d", o, e)
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
msg = "Не удалось снять записи с очереди: " + quikErrorDetail(err)
|
||||
}
|
||||
http.Redirect(w, r, "/admin/fancy-queue?flash="+url.QueryEscape(msg), http.StatusSeeOther)
|
||||
}
|
||||
|
||||
func depoJobModeRu(m string) string {
|
||||
switch m {
|
||||
case "bj":
|
||||
|
||||
Reference in New Issue
Block a user