Changes between Initial Version and Version 1 of Ticket #1412, comment 2


Ignore:
Timestamp:
Jul 1, 2026, 2:27:42 PM (3 weeks ago)
Author:
Denis_N

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1412, comment 2

    initial v1  
    1 В r420 несоответствие, созданное через интерфейс “Тестирование” с результатом “Выявлены ошибки”, сохранялось как составная запись `testing,mismatch`, а не как чистая запись `mismatch`.
    2 
    3 В интерфейсе “Несоответствия” уже существовали два режима поиска: общий режим через `find_in_set('mismatch', history.type_write)`, который показывает также составные записи `testing,mismatch` и `otk,mismatch`, и режим “только чистые несоответствия” через `type_write = 'mismatch'`. Но в r420 галочка была подписана неочевидно как “Показывать только несоответствия”, из-за чего пользователь мог включить режим, скрывающий записи из “Тестирования” и “ОТК”.
    4 
    5 Позже это было исправлено на стороне интерфейса:
    6 - в r462/base текст галочки изменён на явный: “Не показывать несоответствия, созданные через ОТК и Тестирование”;
    7 - в r537/base состояние галочки стало передаваться прямо в AJAX-запрос, поиск по S/N переведён на событие `input`, устаревшие AJAX-запросы отменяются.
    8 
    9 Передача галочки прямо в AJAX дала то, что backend стал получать состояние фильтра именно на момент конкретного поиска. До этого backend смотрел в cookie view_only_mismatch, а cookie обновлялась отдельно на frontend. Если пользователь менял галочку и сразу шёл поиск, можно было получить рассинхрон: в интерфейсе галочка уже в одном состоянии, а запрос обработался по старому cookie.
    10 
    11 Перевод S/N на событие input исправил сценарий вставки/сканирования серийника. Раньше обработчик висел на keyup paste; paste срабатывает до того, как новое значение гарантированно оказалось в поле. В итоге AJAX мог уйти со старым или пустым S/N, и пользователь видел “Записей у изделия не найдено”. input срабатывает уже после изменения значения поля, поэтому поиск уходит с актуальным серийником.
    12 
    13 В текущей проверенной версии r579/base несоответствия, созданные через “Тестирование” и “ОТК”, отображаются при снятой галочке.
    14 
    15 Закрою как "Готово". Хотя, я думаю, что можно предложить какое-то UI-улучшение