Skip to content

Adiciona filtro "Official products" na seleção de inputs dos pipelines (#472)#619

Open
jandsonrj wants to merge 3 commits into
mainfrom
472-input-data-filter-by-official
Open

Adiciona filtro "Official products" na seleção de inputs dos pipelines (#472)#619
jandsonrj wants to merge 3 commits into
mainfrom
472-input-data-filter-by-official

Conversation

@jandsonrj
Copy link
Copy Markdown
Member

Depende do #559 — este branch foi mergeado em cima dele.

O que muda

Adiciona um checkbox "Official products" ao lado do Search nas etapas de
seleção de catálogos do CRC (/specz_catalogs) e do TSM
(/training_set_maker). Quando marcado, a listagem filtra para mostrar
apenas produtos oficiais. Desmarcado, mostra todos (default).

Também coloquei um alerta visual em cima do data grid para deixar claro
quando há seleções fora da view atual (escondidas por filtro ou em outra
página da paginação), com botão "Clear all" / "Clear" para resetar
rapidamente. Isso evita o caso de submeter o pipeline com itens que o
usuário esqueceu que estavam selecionados.

Backend

Nenhuma mudança. O endpoint /api/products-specz/ já aceita o filtro
official_product via ProductFilter (mesmo filtro usado em
/oficial_products).

Como testar

  1. Em /specz_catalogs:

    • Marcar "Official products" → lista filtra (Network: ?official_product=true)
    • Desmarcar → volta a mostrar todos
    • Combinar com Search e com paginação
    • Selecionar tudo, depois marcar "Official products" → ver o alerta
      amarelo informando quantos itens estão ocultos
  2. Em /training_set_maker: mesmo comportamento, adaptado para seleção
    única (alerta avisa se o catálogo selecionado está oculto pelo filtro)

    image

@jandsonrj jandsonrj requested a review from crisingulani May 19, 2026 17:30
@jandsonrj jandsonrj self-assigned this May 19, 2026
@jandsonrj jandsonrj linked an issue May 19, 2026 that may be closed by this pull request
1 task
@jandsonrj jandsonrj requested a review from gschwend May 19, 2026 17:34
The page-reset effect depended on the "filters" object directly. Since
"filters" is recreated on every render (default empty object, or a new
object from the parent), the effect ran on every render and called
setPage(0), forcing the grid back to page 1 whenever the user navigated.
The request for the next page was issued and the backend responded
correctly, but the UI snapped back to the first page.

Use a serialized key (JSON.stringify) as the effect dependency so it only
runs when the search query or filter values actually change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

input data filter by official

2 participants